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: 2024-11-06T23:30:02Z.

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