Credits & Acknowledgements
Intro
Lilush stands on the shoulders of giants, and would not be possible without the following projects:
Third-Party Libraries
| Library | License | Copyright |
|---|---|---|
| LuaJIT | MIT | (c) 2005-2026 Mike Pall |
| lua-cjson | MIT | (c) 2010-2012 Mark Pulford |
| BearSSL | MIT | (c) Thomas Pornin |
| TweetNaCl | Public Domain | (c) Daniel J. Bernstein, Tanja Lange, Peter Schwabe |
| WireGuard | LGPL-2.1+ | (c) 2008-2012 Pablo Neira Ayuso, (c) 2015-2020 Jason A. Donenfeld |
| miniz | MIT / Unlicense | (c) 2013-2014 RAD Game Tools and Valve Software, (c) 2010-2014 Rich Geldreich and Tenacious Software LLC |
Licensing Notes
Lilush is licensed under OWL v1.0+.
See the LICENSE and LICENSING files in the repository root for
full details.
LuaJIT is MIT-licensed. Its copyright notice and license text are preserved in its source directory.
BearSSL -- Selected cryptographic primitives (AES, ECDSA P-256/P-384/P-521,
RSA verify, SHA-256, HMAC, HMAC-DRBG, GHASH, and supporting big-integer
arithmetic) are extracted from BearSSL and used in the LITLS stack. BearSSL is
MIT-licensed. The original copyright headers are preserved in the extracted
source files under src/litls/bearssl/.
TweetNaCl -- X25519 key exchange and Ed25519 signatures are based on
TweetNaCl, which is public domain. The original authors' notice is preserved
in src/litls/litls_ed25519.c and src/litls/litls_x25519.c.
miniz is dual-licensed (MIT / Unlicense). It is a multi-file zlib replacement used for deflate/inflate compression, gzip support, and CRC-32/Adler-32 checksums. The original copyright notice and license text are preserved in its source files.
WireGuard -- Lilush includes a couple of files (C file and the headers) from the wireguard-tools project, licensed under LGPL-2.1+. The complete corresponding source is available as part of this repository. The original copyright notices and SPDX identifier are preserved in the file.
If you have questions about licensing, contact: license@lilush.link
Inspirations
Antirez post about linenoise made me think about the whole domain of line-editing/input libs and input behavior in TUIs.
The build system was inspired by The Boston Diaries blog post.
The TSS system was obviously inspired by CSS, but adapted to the harsh realms of terminal.
Syntax highlighting design in LEM is built around the ideas Tonsky voiced in his post on this topic.
AI contributions
As Linus Torvalds put it, 100% of my code is written by the compiler.
The project was started around 2022, LLMs were not that usable for coding assistance at that time, so it was a regular human doing good ol' traditional coding.
Nowadays I do have various AI-tools included in my pipeline, thus it's a regular human, but doing AI-assisted coding.
Not to be confused with "vibe-coding", that's a different animal. For one thing, there are no emojis in AI-assited coding. Other differences are left as an exercise for the reader.