ls for the web, in Rust
As part of my ongoing effort to learn something new everyday, I decided to do something completely new and learn the Rust programming language. I've heard plenty of good things about it and wanted to see how well my PHP and Python skills would translate over to a more complex environment.
Turns out that the leg work is done for you if you pay $120/year for GitHub Copilot and use it to write the code for you. Cool.
But really, Rust has a lot of documentation and although being relatively newer than other similarly used languages such as C and C++, it has a lot of support and a lot of good libraries.
So here it is, an ls-adjacent command that runs in the browser. Fire it up with
./ls-web and
you'll see the following:
Note that I keep saying ls-adjacent command. This replicates the functionality of running
the ls command with no command line options or flags in a directory on your machine.
Heres what that looks like in a browser:
It's not spectactular and I'll be adding to it in the future, but for now you can try it yourself at github.com/lucasburlingham/ls_web.
v2: As of 18 March 2026
- Added file upload support and more robust request handling (including multipart parsing).
- Implemented directory listing + download/archiving features (ZIP/tar.gz/7z).
- Added Makefile targets for optimized production builds (release + run-release).