
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
A simple CLI tool for managing and generating templates for projects; a simplified yeoman.
DISCLAIMER: This is an alpha project and as such has not settled on a stable API.
A simple CLI tool for managing and generating templates for projects; a simplified yeoman.
npm i -g stencils
Stencil Projects are folders that have a .stlrc file and .stencils directory.
stl init
When determining if a project is a stencils project stencils looks at the current project and
checks for the .stlrc file. If it doesn't find one in the current directory stencils will
crawl the file system up until it reaches the users home directory.
NOTE: do not initialize stencils as root or outside of the user directory
Stencils uses a structured filesystem format to store the templates in the project. New Templates must be added with:
stl add templateName
'Add' will prompt for what the filetype is for the template
stl ls
List files with extensions
stl ls -a
For convenience you can open the files with:
stl open templateName
Or specify an application with:
stl open -a WebStorm templateName
stl use templateName
'Use' will scan the template for all the template variables and prompt for the data.
Stencils supports Ejs and Mustache out-of-the-box, but defaults to ejs.
Each of these template engines can be configured in the .stlrc file.
For example with ejs:
{
"version": "0.8.5-alpha",
"engine": "ejs",
"ejs": {
"delimiter": "@"
}
}
or with mustache
{
"version": "0.8.5-alpha",
"engine": "mustache",
"mustache": {
"tags": ["<%", "%>"]
}
}
the default engine can be overridden at run-time by passing the --engine flag with the name of the engine.
stl add service --engine mustache
stl use service --engine mustache
The order of operations for how stencils decides which engine to use is from left to right, where left has the most authority cli -> config -> default
It's important to note that files added with different engines are considered different templates and will be displayed
with their appropriate engine when running stl ls
0.5.0-alpha - 0.7.0-alpha - 0.8.0-alpha - 0.8.5-alpha - 0.9.0-alpha - 0.20.0-alpha - support for directory type templates0.30.0-alpha - support for groups (defaults to local)0.40.0-alpha - unit and integration tests0.45.0-alpha - get jsdoc working0.50.0-alpha - add bash auto completion support0.54.0-alpha - update help text and cli output text0.56.0-alpha - simplify README0.58.0-beta - beta release1.0.0-rc1 - release candidate1.0.0 - public release0.30.0-alphaFAQs
A simple CLI tool for managing and generating templates for projects; a simplified yeoman.
We found that stencils demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.