# LiquidJS
A simple, expressive [Shopify Liquid][shopify/liquid] template engine for JavaScript — compatible with Jekyll and GitHub Pages dialects, runs in Node.js, the browser (UMD/ESM), and the CLI via `npx liquidjs`, and ships with TypeScript definitions. Extend it with custom tags, filters, and [plugins][plugins]; optional `memoryLimit`, `renderLimit`, and `ownPropertyOnly` help harden untrusted templates (not a sandbox — see the [security model][security-model]).
[](https://www.npmjs.org/package/liquidjs)
[](https://www.npmjs.org/package/liquidjs)
[](https://github.com/harttle/liquidjs/actions/workflows/ci-build.yml?query=branch%3Amaster)
[](https://coveralls.io/github/harttle/liquidjs?branch=master)
[](https://github.com/harttle/liquidjs/blob/master/LICENSE)
[Documentation][doc] · [Playground](https://liquidjs.com/playground.html) · [Setup guide][setup] · [Contributing][contribution]
Template, context, and live output in the playground.
## Quick start ```js import { Liquid } from 'liquidjs' const engine = new Liquid() const html = await engine.parseAndRender( 'Hello, {{ name | capitalize }}!', { name: 'liquid' } ) //=> 'Hello, Liquid!' ``` ## Installation **Node.js** ```bash npm install liquidjs ``` **Browser** (jsDelivr UMD bundle) ```html ``` **CLI** ```bash npx liquidjs --template 'Hello, {{ name }}!' --context '{"name": "Liquid"}' ``` See the [setup guide][setup] for partials, layouts, caching, and other options. ## Used by Products and projects running on LiquidJS. [Open a PR](https://github.com/harttle/liquidjs/edit/master/README.md) to add yours. ## Financial Support If you personally love LiquidJS or it's benefiting your business, please consider financially support us via [GitHub Sponsors](https://github.com/sponsors/harttle). Special thanks to our sponsors! ## Contributors ✨ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to these wonderful people: