STENCIL

  • Docs
  • GitHub
Star

What's on this Page

  • Quick Install
  • Upgrade Stencil
  • Next Steps
GETTING STARTED FUNDAMENTALS

Install Stencil

Install Stencil on macOS, Windows, Linux, OpenBSD, FreeBSD, and on any machine where the Go compiler tool chain can run.

There is lots of talk about “Stencil being written in Go”, but you don’t need to install Go to enjoy Stencil. Just grab a precompiled binary!

Stencil is written in Go with support for multiple platforms. The latest release can be found at Stencil Releases.

Stencil currently provides pre-built binaries for the following:

  • macOS (Darwin) for x64, i386, and ARM architectures
  • Windows
  • Linux

Stencil may also be compiled from source wherever the Go toolchain can run; e.g., on other operating systems such as DragonFly BSD, OpenBSD, Plan 9, Solaris, and others. See https://golang.org/doc/install/source for the full set of supported combinations of target operating systems and compilation architectures.

Quick Install

Homebrew (macOS)

We have a brew formula for Stencil. It is recommended to install Stencil via Homebrew on macOS.

brew install stencil

Binary (Cross-platform)

Download the appropriate version for your platform from Stencil Releases. Once downloaded, the binary can be run from anywhere. You don’t need to install it into a global location. This works well for shared hosts and other systems where you don’t have a privileged account.

Ideally, you should install it somewhere in your PATH for easy use. /usr/local/bin is the most probable location.

Source

Prerequisite Tools

  • Git
  • Go (at least Go 1.18)

Fetch from GitHub

from-gh.sh
git clone https://github.com/getoutreach/stencil.git
cd stencil
make
cp ./bin/stencil "$(go env GOPATH)/bin/stencil"

Upgrade Stencil

Upgrading Stencil is as easy as downloading and replacing the executable you’ve placed in your PATH.

Next Steps

Now that you’ve installed Stencil, read the Quick Start guide and explore the rest of the documentation. If you have questions, ask the Stencil community directly by visiting the Stencil discussion Forum.

  • About Stencil
    • What is Stencil?
    • License
  • Getting Started
    • Get Started Overview
    • Install Stencil
    • Quick Start
    • Module Quick Start
    • Native Extension Quick Start
  • Reference Docs
    • Reference Docs Overview
    • Stencil Modules Overview
    • Native Extensions
    • Template Module
    • Service Manifest
  • Functions
    • Functions Quick Reference
    • file.Block
    • file.Create
    • file.Delete
    • file.Path
    • file.RemoveAll
    • file.SetContents
    • file.SetPath
    • file.Skip
    • file.Static
    • stencil.AddToModuleHook
    • stencil.ApplyTemplate
    • stencil.Arg
    • stencil.Args
    • stencil.Exists
    • stencil.GetGlobal
    • stencil.GetModuleHook
    • stencil.ReadBlocks
    • stencil.ReadFile
    • stencil.SetGlobal
  • CLI
    • Commands Quick Reference
    • stencil
    • stencil create
    • stencil create module
    • stencil describe
    • stencil docs
    • stencil docs generate
    • stencil updater
    • stencil updater get-channel
    • stencil updater get-channels
    • stencil updater list-releases
    • stencil updater rollback
    • stencil updater set-channel
    • stencil updater status
    • stencil updater use
  • Contribute
    • Contribute to Stencil
    • Development
    • Documentation
  • Maintenance
Last updated: May 5, 2022: docs: Add getting started and reference docs (#90) (dad4c11)
Improve this page
By the Stencil Authors
Hugo Logo
  • File an Issue
  • Get Help
  • Docs
  • GitHub
  • About Stencil
  • Getting Started
  • Reference Docs
  • Functions
  • CLI
  • Contribute
  • Maintenance