# Install algernon with Homebrew, pacman, scoop, winget

Pure Go web server with Lua, Markdown, HTTP/2 and template support. Version 1.17.10 via Homebrew; verified 2026-07-05.

## Install

```sh
sudo av install brew:algernon
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install algernon
```

  Evidence: local Homebrew formula metadata

### Linux

- pacman (92%):

```sh
sudo pacman -S algernon
```

  Evidence: Arch Linux sync databases: algernon from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

### Windows

- Scoop (92%):

```sh
scoop install main/algernon
```

  Evidence: Scoop official bucket manifest trees: bucket/algernon.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id xyproto.algernon -e
```

  Evidence: Windows Package Manager source index: xyproto.algernon from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:algernon
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/algernon>
- **Version:** 1.17.10
- **Source summary:** Pure Go web server with Lua, Markdown, HTTP/2 and template support
- **Homepage:** <https://algernon.roboticoverlords.org>
- **Repository:** <https://github.com/xyproto/algernon>
- **Upstream docs:** <https://algernon.roboticoverlords.org>
- **License:** BSD-3-Clause
- **Source archive:** <https://github.com/xyproto/algernon/archive/refs/tags/v1.17.10.tar.gz>
- **Last updated:** 2026-07-05T03:37:18Z
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- algernon (cli)
- mdview (cli)
- algernon (alias)
- mdview (alias)

## Build dependencies

- go

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.17.10
- Package-manager updated: 2026-07-05
- Local data: ok
- Upstream repository: https://github.com/xyproto/algernon
- Upstream latest detected: v1.17.10 (current)
## Project history and usage

Algernon is a self-contained Go web server and application server aimed at serving Markdown, Lua, templates, and modern web assets with little setup. In package-manager terms it sits in the small-binary web-server lane: install one executable, point it at a directory or script, and get a batteries-included local or production-ish server.

### Project history

The public GitHub repository was created in March 2015 under xyproto/algernon. Its official README describes a web server with built-in support for HTTP/2, HTTP/3/QUIC, Lua, Teal, Markdown, Pongo2, Amber, Sass/SCSS, JSX/TypeScript, databases, plugins, users, and permissions.

The project grew around the idea that common web-serving and lightweight application tasks should not require a stack of background converters or service components. The README emphasizes that it is a small self-contained executable, with Go providing the portability base and embedded interpreters and renderers providing the dynamic behavior.

### Adoption history

Algernon is packaged beyond Homebrew, with the README linking to Repology packaging status and the input facts listing Homebrew, Arch, Scoop, and WinGet package names. The GitHub repository had thousands of stars and over a hundred forks in the official GitHub API metadata checked for this batch, which is meaningful adoption for a niche web-server tool.

The project also publishes release artifacts and Docker images, which matters for a server tool because users often want either a package-manager install for local use or a container for deployment experiments.

### How it is used

Typical use is to install the binary, run `algernon` against a directory or Lua script, and let special filenames such as `index.lua`, `index.md`, template files, or JSX/TSX files determine how content is served. The tutorial shows the smallest loop as writing a Lua handler and running `algernon hello.lua`.

Package users care about the low-friction behavior: Markdown preview, Lua-backed endpoints, local development with auto-refresh, HTTP/2 and QUIC support, and database fallback behavior are all available from the same installed command.

### Why package nerds care

Algernon is a good example of the Go single-binary packaging style applied to web serving. It competes less with nginx or Caddy as infrastructure and more with ad hoc local servers, static-site preview tools, and small internal web apps where eliminating runtime dependencies is attractive.

Its formula is interesting because it packages a broad web runtime surface behind one executable, so distribution maintainers are shipping a surprisingly capable server without a language runtime dependency chain.

### Timeline

- 2015: Public GitHub repository created.
- 2010s-2020s: Project expands from Lua, Markdown, and template serving into a broader Go web application server.
- 2026: Official repository metadata still shows active pushes and releases.

### Related projects

- Related tools include Caddy and nginx for web serving, Python's simple HTTP server for local file serving, and Lua-enabled web stacks for scriptable request handling.

### Sources

- <https://api.github.com/repos/xyproto/algernon>
- <https://github.com/xyproto/algernon>
- <https://raw.githubusercontent.com/xyproto/algernon/main/README.md>
- <https://raw.githubusercontent.com/xyproto/algernon/main/TUTORIAL.md>
- source_facts.package-manager


## Security Notes

No matching local secret-handling manifest was found for algernon. Nucleus package metadata is still published here so future coverage has a stable package URL.


## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** algernon
- **Version Scheme:** 1
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- pacman - algernon - 1.17.9-1: normalized package name match | Arch Linux sync databases: algernon from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Web server with Lua, Markdown, QUIC, Redis and PostgreSQL support | https://algernon.roboticoverlords.org/
- Scoop - main/algernon: normalized package name match | Scoop official bucket manifest trees: bucket/algernon.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
- winget - xyproto.algernon: normalized package name match | Windows Package Manager source index: xyproto.algernon from https://cdn.winget.microsoft.com/cache/source.msix
- winget - c3er.mdview: installed executable or alias match | Windows Package Manager source index: c3er.mdview from https://cdn.winget.microsoft.com/cache/source.msix


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [h2o](https://www.automicvault.com/pkg/brew/h2o/) - Shares av.db curated category or tags: cli, http2, networking, web-server.
- [caddy](https://www.automicvault.com/pkg/brew/caddy/) - Shares av.db curated category or tags: cli, networking, web-server.
- [fcgi](https://www.automicvault.com/pkg/brew/fcgi/) - Shares av.db curated category or tags: cli, networking, web-server.
- [fcgiwrap](https://www.automicvault.com/pkg/brew/fcgiwrap/) - Shares av.db curated category or tags: cli, networking, web-server.
- [ferron](https://www.automicvault.com/pkg/brew/ferron/) - Shares av.db curated category or tags: cli, networking, web-server.
- [httpd](https://www.automicvault.com/pkg/brew/httpd/) - Shares av.db curated category or tags: cli, networking, web-server.
- [lighttpd](https://www.automicvault.com/pkg/brew/lighttpd/) - Shares av.db curated category or tags: cli, networking, web-server.
- [mighttpd2](https://www.automicvault.com/pkg/brew/mighttpd2/) - Shares av.db curated category or tags: cli, networking, web-server.

## Combined YAML source

View the package source record on GitHub. [combined/algernon.yml](https://github.com/automic-vault/db/blob/main/combined/algernon.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
