
Git Repo Documentation Reference API documentation
Lilu is a statically compiled LuaJIT interpreter bundled with everything you need to build productive tools on Linux.
One binary, under 2MB, no dependencies. Core components:
Filesystem & Processes: File operations, process manipulation, pipes, forks.
Networking: TCP/UDP with TLS 1.3 support, a full HTTP(S) client, and an HTTP(S)/1.1 server. TLS is backed by LiTLS.
Cryptography: hashing, HMAC, Ed25519, X.509
Terminal UI: UTF-8 aware terminal I/O, styling via TSS (Terminal Style Sheets), and a set of widgets for building CLI apps.
MNEME: Embedded key-value DB with full text/vector search support and encryption at rest.
Extras: JSON, Markdown processing and rendering, Redis protocol support, WireGuard client.
lilush extends lilu with a modular Linux Shell (as in Bash, Csh or Fish). Lilush Shell features:
Rich prompts: host, user, directory, git info, python venv.
Completions & navigation: Tab completions with scrolling, fast directory navigation and history search in the spirit of McFly and zoxide.
Built-in tools: kat (file viewer + pager), lem editor, netstat, dig, wgcli (wireguard CLI), etc.
Extensibility: 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.).
# 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 my SSH key. See the repository for verification instructions.
The project as a whole is named Lilush, which is a portmanteau abbreviation of "Linux Lua Shell".
The minimal build without the shell is Lilu, the binary is lilu.
The full build with shell is Lilush Shell, the binary is lilush.
Projects built on the lilu runtime:
RELIW — A Redis-backed HTTP server & framework.
RECALL — A Redis-backed caching recursive DNS server.
zxkitty — A ZX80 emulator for the terminal.