Operator

Operator is a web server. You provide a directory and Operator serves it over HTTP.

It serves static files the way you'd expect, but can also serve dynamic content that is generated at request time by handlebars templates or executables. For example, during your request a script ran on the server to timestamp this page: 2022-06-27T09:10:12Z.

⚠️ Operator is alpha! Please don't use it for anything important yet.

Installation

Operator is a single self-contained binary, with releases hosted on GitHub. You can get the latest release like so:

Linux x86-64
  • curl -L https://github.com/mkantor/operator/releases/download/0.5.0/operator-linux-x86-64.tar.gz \ > operator.tar.gz
  • sha256sum -c <(echo "2a867fa0dfb37e8ccab8314d8cecfd491f238263ec23a8e0a04d967edd28bd5b operator.tar.gz") \ && tar -xf operator.tar.gz
  • echo '{{#if true}}Hello, world!{{/if}}' \ | ./operator eval --content-directory=/dev/null
macOS x86-64
  • curl -L https://github.com/mkantor/operator/releases/download/0.5.0/operator-macos-x86-64.tar.gz \ > operator.tar.gz
  • shasum -a 256 -c <(echo "e958222cdc7c8c6c9556a346652ac832ec1dfe43b25b846e5fe79e8a7aea93ef operator.tar.gz") \ && tar -xf operator.tar.gz
  • echo '{{#if true}}Hello, world!{{/if}}' \ | ./operator eval --content-directory=/dev/null