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-08-19T23:40:57Z.

⚠️ 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.6.0/operator-linux-x86-64.tar.gz \ > operator.tar.gz
  • sha256sum -c <(echo "afdeed7b5f1a5cece6c94003b2cd123c445aca86f603b87b00ff14ed397eab9e 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.6.0/operator-macos-x86-64.tar.gz \ > operator.tar.gz
  • shasum -a 256 -c <(echo "1cd3f783a1aaa866c5fc25c59b452640168270befdc9a5ee6bf5eb7b23ef0846 operator.tar.gz") \ && tar -xf operator.tar.gz
  • echo '{{#if true}}Hello, world!{{/if}}' \ | ./operator eval --content-directory=/dev/null