← Package directory
Available on winget

Install Algernon

Small self-contained pure-Go web server with Lua, Markdown, HTTP/2, QUIC, Redis and PostgreSQL support

Install with winget
winget install --id xyproto.algernon
Upgrade
winget upgrade --id xyproto.algernon
Uninstall
winget uninstall --id xyproto.algernon

About Algernon

Small self-contained pure-Go web server with Lua, Markdown, HTTP/2, QUIC, Redis and PostgreSQL support

What's new in 1.17.7

Security related - Clamp handler.lua parent walk to server root, thanks @Dredsen. - Use the main mux when serving SSE for the auto-refresh feature, thanks @Dredsen. - Add a --hide-dotfiles for not serving hidden files, thanks @Dredsen. - Don't enable debug mode automatically when single-file mode is used, thanks @Dredsen. New features - Embed React 19 and support index.jsx files, for npm-less use of React. Examples - Update the HyperApp example so that it does not use a token for downloading images. - Add an example project named Catbook here: https://github.com/xyproto/catbook Database related - Update all database-related dependencies. - Fix an issue in the built-in Bolt database support, where retrieving the last N items from a list with less than N items could return an empty list. - Use an sqlite package that does not require CGO. Performance - Cache the per-directory .algernon configuration. New Lua functions - Add a formjson Lua function for returning the posted form as JSON. - Add support for WebAuthn by adding 4 new Lua functions. - Add the maxlen, methodPOST and list:jsonlast and jsonembed functions. General - Update dependencies. - Update documentation.

Read release notes

Version history

Version Updated Notes
1.17.7 Unknown Security related - Clamp handler.lua parent walk to server root, thanks @Dredsen. - Use the main mux when serving SSE for the auto-refresh feature, thanks @Dredsen. - Add a --hide-dotfiles for not serving hidden files, t...
1.17.6 Unknown What's Changed - Bump golang.org/x/crypto from 0.44.0 to 0.45.0 by @dependabot[bot] in #168 Full Changelog: v1.17.5...v1.17.6
1.17.5 Unknown Fixes - Fix HTML detection, ref #164 (thanks @astynax). Security - Add an initial Security.md file. - Add extra sanitation / XXS protection (thanks @Bnyt7). New features - Add support for serving the QOI image format. Co...
1.17.4 Unknown - Fix a missing m character when drawing the banner/logo at start. - Also show the banner/logo at start on Windows. - Add HTML sanitization of the filename for the "file not found" page". This fixes an XSS issue. - Switc...
1.17.3 Unknown Fixes - Only listen for the USR1 signal on some platforms. Fixes #157 (thanks for reporting, @kris6673). New features - Add a run3 function, ref #158 (thanks for reporting, @myselfghost). - Add print_nonl that can be use...
1.17.2 Unknown Fixes - Use net/http instead of fasthttp for serving regular HTTP to make the flush() function work again, ref #124 (thanks @diyism and @myselfghost). - Add support for SQLite, ref #134 (thanks @bearinld004 and @judell,...
1.17.1 Unknown Platform compatibility - Patch the pingcap/tidb dependency so that Algernon still compiles for ARM 6 and ARM 7. Ollama / LLMs - Add the oc:distance() Lua method for finding the distance between two LLM prompts. - Let the...
1.15.2 Unknown No notes