Lilush: the next small thing

Lilush logo

A static LuaJIT runtime with batteries.

One binary. Around 2MB. No dependencies.

Lilush is a statically compiled LuaJIT interpreter bundled with everything you need to build real software on Linux — networking, crypto, filesystem, terminal UI, and more — without installing a single dependency.

Drop it into a FROM scratch Docker container. Use it as a busybox replacement. Ship it anywhere x86_64 Linux runs.


What's in the box

Networking — TCP/UDP with SSL, a full HTTP(S) client, and an HTTP/1.1 server, all powered by WolfSSL compiled right into the binary.

Cryptography — Modern crypto primitives ready to use.

Filesystem & Processes — File operations, process manipulation, everything you'd expect from a systems scripting tool.

Terminal UI — UTF-8 aware terminal I/O, styling via TSS (Terminal Style Sheets), and a set of widgets for building CLI apps.

And then some — Markdown processing, Redis protocol support, JSON, Base64, embedded WireGuard and ACMEv2 clients.


Lilush Shell

Lilush doubles as a fully-featured Linux shell with a sleek interface out of the box.

Smart prompts — host, user, directory, git branch, AWS profile, Kubernetes context, Python venv — all preconfigured.

Completions & navigation — Tab completions with scrolling, intelligent directory navigation and history search in the spirit of McFly and zoxide.

Built-in toolskat (file viewer + pager), netstat, dig, wgcli, and many more.

Extensible — Add your own plugins. Style everything with TSS.

Lilush Shell uses Kitty's keyboard protocol and requires a compatible terminal emulator (kitty, foot, alacritty, konsole, etc.).


Get started

# Download the latest release
curl -fLO "https://codeberg.org/latimar/lilush/releases/download/latest/lilush"

# Install
chmod +x lilush
install -Dm755 lilush ~/.local/bin/lilush

Release binaries are signed with an SSH key — see the repository for verification instructions and building from source.


Built with lilush

RELIW — An HTTP server & framework.

zxkitty — A ZX80 emulator for the terminal.