to select to navigate esc to close
stigmergic

Installation

The simplest way to install stigmergic. Works on Linux and macOS.

1nix profile install github:Buildtall-Systems/stigmergic.dev

Or run without installing:

1nix run github:Buildtall-Systems/stigmergic.dev -- serve ./docs

Nix Flake Integration

Add to your project's flake.nix:

1{
2  inputs = {
3    stigmergic.url = "github:Buildtall-Systems/stigmergic.dev";
4  };
5
6  outputs = { self, nixpkgs, stigmergic, ... }: {
7    # Use stigmergic.packages.${system}.default
8  };
9}

Or use with nix develop for a dev environment that includes stigmergic.

Go Install

Requires Go 1.24+:

1go install github.com/Buildtall-Systems/stigmergic.dev/cmd/stigmergic@latest

Binary installs to $GOPATH/bin/stigmergic.

From Source

1git clone https://github.com/Buildtall-Systems/stigmergic.dev
2cd stigmergic.dev
3make build
4make install  # installs to ~/.local/bin

Build Dependencies

Development Environment

Using Nix:

1nix develop

This provides all build dependencies automatically. Then:

1make build    # Build binary
2make test     # Run tests
3make lint     # Run linter

Verify Installation

1stigmergic version
2stigmergic serve --help

CLI Reference

stigmergic serve [path] [flags]

Arguments:
  path                        Directory to watch (default: current directory)

Flags:
  -p, --port int              Server port (default: 8080)
      --host string           Bind address (default: "localhost")
  -c, --config string         Config file path
      --default-file string   File to display on homepage
      --log-level string      DEBUG, INFO, WARN, ERROR (default: "ERROR")
      --respect-gitignore     Use .gitignore patterns (default: true)

Running as a Service

For production hosting (e.g., serving a documentation site):

 1# /etc/systemd/system/stigmergic.service
 2[Unit]
 3Description=Stigmergic Markdown Server
 4After=network.target
 5
 6[Service]
 7Type=simple
 8ExecStart=/usr/local/bin/stigmergic serve --host 0.0.0.0 --port 8080 --default-file index.md /path/to/content
 9Restart=on-failure
10RestartSec=5
11
12[Install]
13WantedBy=multi-user.target
1sudo systemctl daemon-reload
2sudo systemctl enable --now stigmergic

Put nginx or Caddy in front for TLS termination.