frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
245•isitcontent•17h ago•27 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
347•vecti•19h ago•154 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
313•eljojo•19h ago•193 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
4•sandGorgon•2d ago•2 comments

Show HN: MCP App to play backgammon with your LLM

https://github.com/sam-mfb/backgammon-mcp
2•sam256•1h ago•1 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
77•phreda4•16h ago•14 comments

Show HN: I'm 75, building an OSS Virtual Protest Protocol for digital activism

https://github.com/voice-of-japan/Virtual-Protest-Protocol/blob/main/README.md
5•sakanakana00•2h ago•1 comments

Show HN: I built Divvy to split restaurant bills from a photo

https://divvyai.app/
3•pieterdy•2h ago•0 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
93•antves•1d ago•70 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
17•denuoweb•2d ago•2 comments

Show HN: BioTradingArena – Benchmark for LLMs to predict biotech stock movements

https://www.biotradingarena.com/hn
26•dchu17•21h ago•12 comments

Show HN: Slack CLI for Agents

https://github.com/stablyai/agent-slack
49•nwparker•1d ago•11 comments

Show HN: Artifact Keeper – Open-Source Artifactory/Nexus Alternative in Rust

https://github.com/artifact-keeper
152•bsgeraci•1d ago•64 comments

Show HN: I Hacked My Family's Meal Planning with an App

https://mealjar.app
2•melvinzammit•4h ago•0 comments

Show HN: I built a free UCP checker – see if AI agents can find your store

https://ucphub.ai/ucp-store-check/
2•vladeta•4h ago•2 comments

Show HN: Gigacode – Use OpenCode's UI with Claude Code/Codex/Amp

https://github.com/rivet-dev/sandbox-agent/tree/main/gigacode
19•NathanFlurry•1d ago•9 comments

Show HN: Compile-Time Vibe Coding

https://github.com/Michael-JB/vibecode
10•michaelchicory•6h ago•1 comments

Show HN: Slop News – HN front page now, but it's all slop

https://dosaygo-studio.github.io/hn-front-page-2035/slop-news
15•keepamovin•7h ago•5 comments

Show HN: Daily-updated database of malicious browser extensions

https://github.com/toborrm9/malicious_extension_sentry
14•toborrm9•22h ago•7 comments

Show HN: Micropolis/SimCity Clone in Emacs Lisp

https://github.com/vkazanov/elcity
172•vkazanov•2d ago•49 comments

Show HN: Horizons – OSS agent execution engine

https://github.com/synth-laboratories/Horizons
23•JoshPurtell•1d ago•5 comments

Show HN: Falcon's Eye (isometric NetHack) running in the browser via WebAssembly

https://rahuljaguste.github.io/Nethack_Falcons_Eye/
5•rahuljaguste•16h ago•1 comments

Show HN: Fitspire – a simple 5-minute workout app for busy people (iOS)

https://apps.apple.com/us/app/fitspire-5-minute-workout/id6758784938
2•devavinoth12•9h ago•0 comments

Show HN: I built a RAG engine to search Singaporean laws

https://github.com/adityaprasad-sudo/Explore-Singapore
4•ambitious_potat•10h ago•4 comments

Show HN: Local task classifier and dispatcher on RTX 3080

https://github.com/resilientworkflowsentinel/resilient-workflow-sentinel
25•Shubham_Amb•1d ago•2 comments

Show HN: Sem – Semantic diffs and patches for Git

https://ataraxy-labs.github.io/sem/
2•rs545837•11h ago•1 comments

Show HN: A password system with no database, no sync, and nothing to breach

https://bastion-enclave.vercel.app
12•KevinChasse•22h ago•16 comments

Show HN: FastLog: 1.4 GB/s text file analyzer with AVX2 SIMD

https://github.com/AGDNoob/FastLog
5•AGDNoob•13h ago•1 comments

Show HN: GitClaw – An AI assistant that runs in GitHub Actions

https://github.com/SawyerHood/gitclaw
10•sawyerjhood•22h ago•0 comments

Show HN: Gohpts tproxy with arp spoofing and sniffing got a new update

https://github.com/shadowy-pycoder/go-http-proxy-to-socks
2•shadowy-pycoder•13h ago•0 comments
Open in hackernews

Show HN: VS Code extension to edit the filesystem like a text buffer

https://github.com/ahrm/voil
67•hexomancer•6mo ago
This is a spiritual adaptation of oil.nvim for vscode. The main idea is you edit the filesystem by editing the current directory listing's text buffer. For example, if I want to rename a file, I just rename it in the listing file. This is extremely powerful because it translates all of your text-editing skills immediately into file editing capabilities.

Some features:

* Create/rename/move/delete files by editing the current directory listing's textbuffer

* Filter using glob pattern

* Trash and undo support

* Works even in remote-ssh workspaces

* Works across multiple vscode windows

Comments

turboponyy•6mo ago
"Look what they need to mimic a fraction of our power" - some Emacs user, probably
heltale•6mo ago
Some vim user too! oil.nvim is a pretty popular package that does this.
hexomancer•6mo ago
I obviously love oil.nvim and that's why I ported it to vscode. But I think in some ways voil is even more powerful than oil. Specifically:

- It can work across multiple vscode windows

- The top line (that shows the current directory) can be used to filter files. For example, if you add "*.{txt,md}" to the end of that line, it will only show the txt and markdown files.

- The ability to defined custom shell commands and bind keybindings to them. For example, I can create a command that zips selected files and run it with a single keybinding in voil.

- Undo functionality

hexomancer•6mo ago
I don't use emacs so I may not be familiar with the full power, but if you are referring to dired, I think oil.nvim is much, much more powerful than dired.

The major difference being that you still need to learn some new keybinds for dired, for example, you can't just create a file by editing the text buffer whereas in oil.nvim (and by extension, voil) your text editing skills immediately apply.

globular-toast•6mo ago
You can switch to wdired and then edit the filenames etc. But true you can't create/delete files. Creating empty files is rarely useful or necessary, though, so not sure why you'd want that. Deleting files is more useful but that seems perfect in normal dired as you can see what you've marked rather than try to mentally keep track of lines you've already deleted.
hexomancer•6mo ago
> Creating empty files is rarely useful or necessary

I kind of disagree? Most files were once created as an empty file! (at least that's the case in my workflow).

ckolkey•6mo ago
I've always just used `:e <filename>` - never saw the appeal of oil.nvim for that use case. But for other kinds of modifications it's nifty.
globular-toast•6mo ago
The normal pattern, in Unix-like systems at least, is to just write to a non-existent file. There is very little reason to create an empty file first.

In Emacs I can even open a file in a non-existent directory and it will create all the containing directories when I try to save. So I rarely even use mkdir.

whalesalad•6mo ago
Was literally thinking the same thing. A colleague of mine basically used emacs as an operating system. Pretty sure he could get his to make buttered toast.
senectus1•6mo ago
haha yeah this'll never bee a problem with AI plugged into your VSCode :-D
hexomancer•6mo ago
Since voil uses its own file extension (.voil) you can easily disable copilot for voil windows.

Also voil asks you to confirm destructive actions. And even if you do, by default voil moves deleted files to a trash location and has undo functionality so you can easily undo your mistakes.

Etheryte•6mo ago
In this day and age, this could very well be an up and coming startup. "Hey <LLM>, find all files on my computer that might be a virus and delete them."
_Broken_Cloud_•6mo ago
The idea's cool, but the ui is kinda raw
hexomancer•6mo ago
Thanks for the feedback. Can you be a little more specific? What do you mean by "raw"? Do you mean from an aesthetic standpoint or is there some functionality you are missing from the UI?
signa11•6mo ago
hey that's just dired ! https://www.gnu.org/software/emacs/manual/html_node/emacs/Di...
hexomancer•6mo ago
There was some discussion about dired here: https://news.ycombinator.com/item?id=44568404
signa11•6mo ago
yup ! thanks i read it all. have been using Emacs for longer than i care to admit.

just like fvwm, there is nothing better than :o) !

gschizas•6mo ago
This looks cool, but I'm a bit wary of publishers that aren't verified.

> Do you trust the publisher "Ali Mostafavi"?

> The extension voil is published by Ali Mostafavi. This is the first extension > you're installing from this publisher.

> Ali Mostafavi is not verified.

> Visual Studio Code has no control over the behavior of third-party extensions, including how they manage your personal data. Proceed only if you trust the publisher.

hexomancer•6mo ago
You can view the source code and package the extension yourself if you are worried about that. It is only ~2000 LOC.

It is not easy to get verified in vscode marketplace, even major publishers like Qt organization are not verified much less so a solo open source developer like myself.

4gotunameagain•6mo ago
> view the source code and package the extension yourself

The problem is that nobody will do that. Even if it were 500 LOC.

And this is why supply chain attacks are on the rise.

hexomancer•6mo ago
What are you proposing? Should I not be allowed to develop and publish an extension that I think is useful?

> nobody will do that

"nobody" is a strong word. Yes, most people don't do that, but if a single person reads the source code and finds something nefarious they can report it or leave a review disclosing that and my reputation would be ruined.

msgodel•6mo ago
IMO you should avoid installing editor extensions generally. It's better to try to get them merged into the editor itself.

I don't think it's good to constrain people in some way from doing that, you should just have a personal policy of avoiding extensions you're not involved in the development of.

anuramat•6mo ago
I thought the entire point of vscode was to be an extensible "lightweight" barebones code editor, as opposed to eg jetbrains stuff; what about vim/emacs then?
4gotunameagain•6mo ago
I did not by any means want to discourage you from developing things and sharing them, if anything I thank you for that.

My intention was to highlight that the SW supply chain nowadays is an insecure mess.

Regarding your last point, for the vast majority of open source SW releases, we can never be sure if the release we get is produced from the same code we see. I do not know if that is the case with VScode addons, but you get my point

hexomancer•6mo ago
> Regarding your last point, for the vast majority of open source SW releases, we can never be sure if the release we get is produced from the same code we see. I do not know if that is the case with VScode addons, but you get my point

You actually can depackage vscode's .vsix files (it is just a zip file) and compare the package contents to the repository.

4gotunameagain•6mo ago
Yes but realistically, who is going to do that ?

Again, I am not questioning your integrity or your plugin.

hollerith•6mo ago
>The problem is that nobody will do that. Even if it were 500 LOC.

I do it with the code I download to extend Emacs.

SketchySeaBeast•6mo ago
The burden isn't just when I install it, I need to validate every time it's updated as well. But let's be realistic, the fact that I intrinsically trust extensions published by Microsoft isn't any better.
aaomidi•6mo ago
I’m Iranian too and our names get people a lot more concerned.

If your name sounded English the implicit bias would make you sound more trust worthy.

gschizas•6mo ago
I have high 2 digits of extensions in my VS Code, and yours is the only one that wouldn't have a verified publisher. And I certainly have more than one from solo developers.

Qt organization (because you mentioned it) also has verification. It displays a different message (because I haven't installed anything from them):

> The extension Qt Core is published by Qt Group. This is the first extension you're installing from this publisher.

> Qt Group has verified ownership of qt.io.

> Visual Studio Code has no control over the behavior of third-party extensions, including how they manage your personal data. Proceed only if you trust the publisher.

EDIT: I'm sure there are other extensions that are also by unverified publishers. It was the first time I was hit with that message though.

norman784•6mo ago
For the current extension model, I would not trust anyone besides any known org. Even installing themes are potentially dangerous, because of the attack vector.
lorenzohess•6mo ago
See vimv (https://github.com/thameera/vimv) for a minimal version of this in the CLI, using Vim as the editor.
mjw1007•6mo ago
Also vidir, which is in the moreutils package in popular distros.
SwiftyBug•6mo ago
Is it possible to make an extension like that for Zed?
norman784•6mo ago
At this point I opted to just install extension from known ORGs only, like Microsoft, Github, etc and the official extensions from the languages I use. All other extensions, even themes are no more for me.
weakfish•6mo ago
AFAIK not with their current extremely limited API, but it’s on their roadmap to have a more extendable editor.
nsonha•6mo ago
When I was a student about 10 years ago there was a custom shell that works like this and even had an extension for sublime, but for the life of me I cannot remember its name.
dcreater•6mo ago
Falling to see why `touch newfile` doesn't accomplish this as fast if not faster and without yet another extension.
hexomancer•6mo ago
I doubt this comment was in good faith (you decided to ignore literally all the features I mentioned and focused on just creating files) but I am going to reply anyway:

1. There is no way that `touch newfile` is faster. Using voil, you press a keybind, enter `newfile`, save and you are done. Using touch you have to first, use some keybinding to switch to terminal, then type `touch ` (6 letter overhead) then type the name of the file and then switch back to vscode. I am not saying voil is meaningfully faster, but you saying that `touch newfile` is faster is wild to me.

2. If I am editing a comlpex file name I like having access to all the text editing features that I have in vscode as opposed to the barebones text editing features in the terminal.

3. There is also all the other moving/copying/renaming with visual feedback that you decided to completely ignore.

4. If touch was faster then oil.nvim would not have been such a popular extension. I am sure most vim users know how to use `touch`.

homebrewer•6mo ago
If you need complex file manipulation, all of that can be achieved by writing a shell script. That's what I've been doing. You also automatically get access to flow control statements and tools like sed/awk/find.

> all the text editing features that I have in vscode as opposed to the barebones text editing features in the terminal.

VSCode is a very primitive text editor compared to vim, emacs or helix. You don't need to edit the command line right there in the shell prompt, nor do you need to create any files — press Ctrl+X + Ctrl+E and hack away. Save and close the file (ZZ in vim, for example), and it gets executed by the shell.

> then oil.nvim would not have been such a popular extension

Popularity is a bad metric, most people don't bother to learn the tools they're using.

hexomancer•6mo ago
> If you need complex file manipulation, all of that can be achieved by writing a shell script. That's what I've been doing. You also automatically get access to flow control statements and tools like sed/awk/find.

Well yes, of course they all "can" be done by writing a shell script, the same way any text editing with vim "can" also be done using ed.

> VSCode is a very primitive text editor compared to vim, emacs or helix. You don't need to edit the command line right there in the shell prompt, nor do you need to create any files — press Ctrl+X + Ctrl+E and hack away. Save and close the file (ZZ in vim, for example), and it gets executed by the shell.

I actually use vscode with the vim extension. You seem to be assuming I am unfamiliar with vim and emacs, I can assure you I know them well enough (at least vim, I also am familiar with the overall features of emacs, though I lack the muscle memory to use it efficiently).

Here is an example: Let's say you have a file named `feature_experimental.cpp` now you want to remove the `_experimental.cpp` from all the files in the current directory which have `_experimental`. I assure you that I can do it faster using voil than you can with vanilla vscode.

dcreater•6mo ago
1. There is an inbuilt terminal in VS code. Its almost always active for me and even if it isnt focusing it/bringing it up is the same distance as firing up voil. The benefit here is that it doesnt occupy your editor 2. What complex file names do you need text editing features for? 3. fzf and zoxide covers most of it

I dont want to return the favor of speculate on intent of comment as yours would be petulant and stubborn without focusing on meaningful rebuttal. Im placing this in my comment as based on your other responses there does seem to be a pattern.

Davidbrcz•6mo ago
So emacs-dired ?
mprovost•6mo ago
There's a long history of "directory editor" programs going back to (at least) 1974, which predates emacs. It's not surprising that there are many examples of convergent evolution.

https://invisible-island.net/ded/dating-dired.html

hexomancer•6mo ago
That's so cool, I was actually curious about history of such programs. Thanks for posting this :)
weakfish•6mo ago
Awesome work! I’ll definitely try this out.