awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Shopify avatar

Shopify/liquid

0
View on GitHub↗
11,811 stars·1,529 forks·Ruby·MIT·28 viewsshopify.github.io/liquid↗

Liquid

Liquid is a secure template engine and markup language used to generate dynamic HTML or text by combining static templates with backend data. It functions as a web template renderer that transforms markup into final output while restricting available logic to prevent arbitrary code execution.

The engine focuses on secure markup execution, providing a restricted environment where user-provided templates cannot access sensitive system data. It utilizes a safe evaluation sandbox to ensure that only a predefined set of instructions can be executed.

The system includes capabilities for template syntax validation, detecting invalid markup and undefined variables during the authoring process. It also supports the creation of custom template logic through a system of tags and filters, which can be isolated within scoped environments to prevent naming conflicts.

Features

  • Sandboxed Code Execution Environments - Provides a restricted execution environment to prevent user-provided templates from accessing sensitive system data.
  • Templating Languages - Provides a secure, customer-facing markup language for generating dynamic HTML and text.
  • Dynamic Markup Rendering - Provides a system for converting markup languages into dynamic web content from backend data.
  • Hierarchical Variable Resolvers - Resolves data keys by traversing hierarchical parent contexts within the template environment.
  • Dynamic Templates - Implements a templating language and engine to generate dynamic server-side output from logic.
  • AST-Based Template Parsing - Transforms template strings into an abstract syntax tree for structural analysis and execution.
  • Context-Aware Variable Resolution - Resolves variables by looking up keys within a provided data object across scoped environments.
  • Template Security Policies - Applies constraints to the rendering engine to prevent injection attacks and unauthorized code execution in user-edited templates.
  • Execution Sandboxing - Restricts template operations to a predefined set of safe instructions to prevent arbitrary code execution.
  • Abstract Syntax Tree Parsing - Implements an AST parser to transform template strings into a structured node tree for subsequent rendering.
  • Template Syntax Validators - Analyzes templates to detect invalid markup and provide detailed feedback during the authoring process.
  • HTML Template Renderers - Generates HTML output by merging data dictionaries with predefined templates and isolated custom tags.
  • Dynamic Template Rendering - Performs runtime evaluation of templates by merging static markup with dynamic backend data.
  • Template Rendering Engines - Processes and combines markup with dynamic data to generate final HTML or text output.
  • Secure User-Editable Templates - Provides a secure mechanism for non-developers to edit web templates without risking arbitrary code execution.
  • Template Execution Engines - Functions as a runtime that processes templates and data to produce final string outputs securely.
  • Template Logic - Provides syntax and control structures, including custom tags and filters, for dynamic content generation.
  • Tag-And-Filter Dispatch - Resolves custom template identifiers to specific logic handlers via a registry of tags and filters.
  • Template Compilation - Transforms string templates into executable logic in multiple stages to handle complex control flows.
  • Multi-Pass Compiler Pipelines - Processes templates through multiple sequential stages to resolve conditional logic and loops before final output.
  • Abstract Syntax Tree Parsers - Converts template strings into a structured tree of nodes for analysis and rendering.
  • Logic Isolation - Isolates custom tags and filters within scoped environments to prevent namespace collisions.
  • Isolate-Based Logic Scoping - Provides isolated environments for custom tags and filters to prevent naming conflicts and restrict functionality.
  • Registry-Based Tag Dispatch - Maps custom template identifiers to specific logic handlers using a central registry of tags and filters.
  • Template Engines - Safe template language for web apps.

Star history

Star history chart for shopify/liquidStar history chart for shopify/liquid

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Liquid

These projects share indexed features with Liquid. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • handlebars-lang/handlebars.jshandlebars-lang avatar

    handlebars-lang/handlebars.js

    18,640View on GitHub↗

    Handlebars.js is a JavaScript templating engine and logic-less template library used to generate HTML or text by merging data objects with templates. It utilizes an abstract syntax tree parser to transform template strings into executable JavaScript functions. The system separates data from presentation by restricting complex logic to external helper functions rather than the template itself. It features a precompiled template compiler that converts templates into functions before deployment to increase execution speed and reduce startup latency. The engine covers a broad range of content ge

    JavaScripthandlebarsmustachetemplates
    View on GitHub↗18,640
  • lunet-io/scribanlunet-io avatar

    lunet-io/scriban

    3,905View on GitHub↗

    Scriban is a .NET text templating engine and embedded scripting language used for dynamic text generation. It functions as an abstract syntax tree manipulation tool and a template parser, allowing for the conversion of scripts into visitable trees for analysis, modification, and rendering. The engine is specifically designed for Native AOT compatibility, utilizing a reflection-free API to execute templates in trimmed environments. It also provides a dedicated parser and conversion system for Liquid templates, enabling the migration and execution of Liquid scripts within .NET. The project cov

    C#
    View on GitHub↗3,905
  • revel/revelrevel avatar

    revel/revel

    13,224View on GitHub↗

    Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a model-view-controller architecture to separate business logic from user interface rendering, providing a comprehensive system for routing, parameter binding, and session management. The project distinguishes itself with a high-productivity development environment featuring automatic code compilation and hot-reloading, which refreshes the application state and templates upon file changes without requiring manual restarts. It also employs reflection-based parameter binding to automati

    Go
    View on GitHub↗13,224
  • goofychris/art-templategoofychris avatar

    goofychris/art-template

    9,861View on GitHub↗

    art-template is a JavaScript templating engine and HTML template compiler that transforms custom syntax and script statements into optimized HTML output. It functions as a precompiled template engine that converts template source into standalone JavaScript functions to render dynamic content from data. The engine features a template inheritance framework that organizes layouts through nesting, blocks, and inclusions to create reusable components across multiple files. It incorporates automatic output sanitization and encoding to prevent cross-site scripting attacks. The system includes capab

    JavaScriptexpressjavascriptkoa
    View on GitHub↗9,861
Compare all 30 related projects→

Frequently asked questions

What does shopify/liquid do?

Liquid is a secure template engine and markup language used to generate dynamic HTML or text by combining static templates with backend data. It functions as a web template renderer that transforms markup into final output while restricting available logic to prevent arbitrary code execution.

What are the main features of shopify/liquid?

The main features of shopify/liquid are: Sandboxed Code Execution Environments, Templating Languages, Dynamic Markup Rendering, Hierarchical Variable Resolvers, Dynamic Templates, AST-Based Template Parsing, Context-Aware Variable Resolution, Template Security Policies.

Which projects share features with shopify/liquid?

Projects with overlapping indexed features include: handlebars-lang/handlebars.js — Handlebars.js is a JavaScript templating engine and logic-less template library used to generate HTML or text by… lunet-io/scriban — Scriban is a .NET text templating engine and embedded scripting language used for dynamic text generation. It… revel/revel — Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a… goofychris/art-template — art-template is a JavaScript templating engine and HTML template compiler that transforms custom syntax and script… mde/ejs — EJS is a JavaScript templating engine used to generate HTML by embedding executable JavaScript logic and dynamic data… wycats/handlebars.js — Handlebars.js is a JavaScript templating engine used to generate HTML and other text formats by combining static…