Algernon

Algernon

Self-contained Go web server with scripting, templates and databases

3kstars
146forks
Last commit: 1d ago
Repo age: 11y old
Algernon screenshot

Algernon is a small, self-contained web server and lightweight application server written in Go. It serves content from files and directories, and can also run dynamic request handlers using embedded Lua (optionally Teal).

Key Features

  • Single executable with no external runtime dependencies
  • Built-in Lua scripting for request handlers plus optional Teal type checking
  • File-based conventions for serving content (for example index.lua, index.md, templates)
  • Built-in rendering for Markdown and template formats (including Pongo2 and Amber)
  • Supports HTTP/2 and optional HTTP/3 (QUIC), plus TLS support
  • Database backends including Redis (default), SQLite, PostgreSQL, and MySQL/MariaDB
  • Users, permissions, and configurable access control for paths
  • Auto-refresh for fast local development using Server-Sent Events
  • Plugin system via JSON-RPC to integrate external programs

Use Cases

  • Hosting small to medium websites where Markdown and templates are preferred
  • Building lightweight web apps that use Lua handlers with Redis/SQL backends
  • Rapid prototyping with live reload and minimal configuration

Limitations and Considerations

  • The built-in Lua runtime (gopher-lua) does not support dynamic native module loading via package.loadlib
  • Auto-refresh file watching is limited to Linux and macOS in current implementations

Algernon is well-suited for developers who want a compact Go-based server that can serve static content and run dynamic logic with embedded scripting. Its broad built-in feature set makes it useful for quickly shipping small web applications with minimal setup.

Categories:

Tags:

Tech Stack:

Share:

Similar Services

Caddy

Caddy

Extensible web server and reverse proxy with automatic HTTPS

69.2k
4.6k
Last commit: 1d ago

Caddy is a fast, extensible Go web server and reverse proxy with automatic HTTPS (ACME), HTTP/1.1, HTTP/2, and HTTP/3 support, and a JSON config API.

Alternative to:
Caddy Cloud
Caddy Cloud
+8
Traefik Proxy

Traefik Proxy

Cloud-native reverse proxy, load balancer, and ingress controller

61.1k
5.8k
Last commit: 1d ago

Traefik Proxy is a dynamic reverse proxy and load balancer that auto-discovers services from Docker, Kubernetes, and other providers, with HTTPS, routing, and observabili...

Alternative to:
Traefik Cloud
Traefik Cloud
+7
Kong Gateway

Kong Gateway

Cloud-native API and LLM gateway with extensible plugins

42.5k
5k
Last commit: 2mo ago

Kong Gateway is a high-performance, cloud-native API gateway for routing, securing, and observing API traffic, with an extensible plugin system and Kubernetes support.

Alternative to:
Amazon API Gateway
Amazon API Gateway
+7
Nginx Proxy Manager

Nginx Proxy Manager

Web UI to manage Nginx reverse proxy hosts and SSL certificates

31.1k
3.5k
Last commit: 2d ago

Nginx Proxy Manager is a web-based admin panel for managing Nginx reverse proxy hosts, redirects, streams, and Let’s Encrypt SSL certificates via Docker.

Alternative to:
NGINX Management Suite
NGINX Management Suite
+6
NGINX

NGINX

High-performance web server, reverse proxy, and load balancer

29.1k
7.7k
Last commit: 2d ago

NGINX is a high-performance HTTP server and reverse proxy with caching, load balancing, TLS termination, and TCP/UDP proxying via a modular architecture.

Alternative to:
NGINX Management Suite
NGINX Management Suite
+2
Pangolin

Pangolin

Identity-aware VPN and reverse proxy for secure remote access

18k
532
Last commit: 2d ago

Open-source identity-based remote access platform combining WireGuard VPN and tunneled reverse proxy access with granular zero-trust controls.

Alternative to:
Cloudflare Access
Cloudflare Access
+16