Lifo Packages
A built-in package manager for the browser OS. Install tools the way you'd expect — one command, ready to use.
This is on the roadmap and currently an open RFC. Nothing here is final — we're actively exploring the best design.
Two Types of Packages
npm Global Packages
Any npm package that works as a global CLI tool just works in Lifo. Install it, run it — same commands, same flags.
$ tsc --init
Wasm Native CLIs
Native tools compiled to WebAssembly. Get the full CLI experience for tools that normally require native binaries.
$ convert photo.png -resize 50% small.png
Planned Wasm Packages
ffmpegImageMagickPythonSQLitePostgresRubyLuajqripgrepHow It Works
npm packages are fetched from the registry, bundled for the browser, and installed into the virtual filesystem. Global binaries are symlinked to /usr/local/bin so they work from the shell immediately.
Wasm packages are pre-compiled WebAssembly binaries wrapped with a thin CLI shim. They execute at near-native speed, read and write to the virtual filesystem, and support the same flags and arguments as their native counterparts.
Have ideas or feedback?
This is an open RFC — reach out to @sanketsahu on X if you have thoughts on how packages should work in Lifo.