awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
scriban avatar

scriban/scriban

0
View on GitHub↗
3,905 نجوم·405 تفرعات·C#·BSD-2-Clause·4 مشاهداتscriban.github.io↗

Scriban

Scriban is a text templating library and .NET scripting engine used for dynamic text generation. It functions as a template processor and a safe scripting sandbox, providing a secure execution environment that restricts object exposure to prevent unauthorized code execution. The project also includes an abstract syntax tree template parser that allows for programmatic template analysis and modification.

The engine features a dedicated Liquid template engine and compatibility mode, allowing it to parse, execute, and convert templates written in Liquid syntax. It distinguishes itself through a member-exposure filtering system that allows developers to rename, hide, or filter object properties to control how data is accessed within templates.

The library covers a broad range of capabilities including asynchronous template rendering, conditional logic, and collection iteration. It provides built-in utilities for data manipulation, such as mathematical operations, JSON conversion, date and time arithmetic, and extensive text processing using regular expressions. Developers can further extend the engine by defining custom functions and integrating external classes.

The project provides a safe API surface to support publishing as a native binary via Native AOT.

Features

  • Dynamic Text Generation - Uses a .NET scripting engine to produce flexible text output based on data and custom logic.
  • .NET Scripting Engines - Implements a lightweight scripting engine for executing custom logic and dynamic expressions within .NET applications.
  • Template Rendering Engines - Evaluates compiled templates against data contexts to produce final dynamic text output.
  • Template - Converts source text into a visitable abstract syntax tree for programmatic template analysis and modification.
  • Runtime Member Visibility Filtering - Uses boolean rules to determine which public instance fields and properties are visible to the template engine.
  • Template AST Analysis - Converts text templates into abstract syntax trees for programmatic analysis and modification.
  • AST-Based Template Parsing - Converts template source text into a visitable abstract syntax tree for programmatic analysis and round-trip text generation.
  • Embedded Scripting Logic - Runs scripts containing variables and blocks to manipulate data and control text flow.
  • Function Definitions - Enables the creation of anonymous or parametric functions to encapsulate reusable logic and computations within templates.
  • Text Templating Engines - Renders text templates using conditional logic, loops, and data-binding expressions.
  • Execution Sandboxes - Provides a secure execution environment that restricts object exposure to prevent unauthorized code execution.
  • Object Exposure Controls - Limits access to host objects using sanitized data structures to prevent unauthorized code execution within the sandbox.
  • Scripting Sandboxes - Provides a secure execution environment that restricts host system access via whitelists to prevent unauthorized code execution.
  • Runtime Access Controls - Controls which properties and methods are accessible within the sandbox for safe evaluation.
  • Liquid - Evaluates templates written in legacy Liquid syntax to support migration without requiring manual rewriting.
  • Text Template Rendering - Processes templates with logic and expressions to produce dynamic text output.
  • Template Logic Customization - Extends the engine with proprietary functions and filtered object exposure to control rendering.
  • Data Manipulation - Transforms strings, arrays, and dates using built-in functions for data processing.
  • Collection Iteration - Loops through arrays or numeric ranges using for and while statements within templates.
  • Structured Data Manipulation - Creates and modifies objects and arrays using dot notation and zero-based indexing.
  • JSON Serializers - Serializes objects to JSON format and transforms JSON strings back into objects.
  • AST to Source Conversion - Generates a textual representation from a syntax tree while preserving or removing whitespace.
  • External Class Bindings - Integrates external classes and delegates to extend the functional capabilities of the template engine.
  • AOT-Compatible Libraries - Provides a restricted API surface that avoids dynamic reflection to enable publishing as a native binary via Native AOT.
  • AOT-Compatible Rendering - Provides a safe API surface that avoids runtime reflection to support native ahead-of-time compilation.
  • Template Extensions - Expands available template capabilities by adding custom logic and functions to the execution context.
  • Conditional Logic - Controls execution flow using boolean comparisons, if-else statements, and switch blocks.
  • Data Type Manipulators - Processes strings, arrays, dates, and numbers using built-in functions for calculations.
  • Runtime Template Expressions - Executes custom logic within templates using code blocks and expression statements.
  • Expression Piping - Implements a pipe operator that passes the output of one expression directly into another for sequential data transformations.
  • Multi-Syntax Parsing Support - Parses scripts using different language specifications to enable migration and compatibility between formats.
  • Object Reflection Utilities - Retrieves keys, values, and types from data objects to determine their structure.
  • Script Variable Management - Stores and retrieves data using global and local variables to pass information through scripts.
  • Scripting Environment Extensions - Binds external functions and objects into the execution environment to add specialized capabilities.
  • Scoped Execution Contexts - Resolves variables against a specific object using scoped blocks to change the current execution context.
  • General Array Operations - Provides functions for sorting, reversing, and joining array elements within templates.
  • Arithmetic Operations - Performs basic arithmetic, rounding, and random number generation.
  • Abstract Syntax Tree Parsing - Converts source text into a visitable abstract syntax tree for programmatic analysis and modification.
  • Asynchronous Execution Models - Implements non-blocking operations during template processing to maintain responsiveness during high-latency data fetches.
  • Dynamic Expression Evaluators - Evaluates runtime expressions by resolving variables and components to produce dynamic output.
  • Template Control Flow - Executes loops and conditional logic to dynamically determine which content to render.
  • Template Value Piping - Manipulates template values using built-in operations chained through a pipe operator.
  • Compatibility Mode Parsing - Supports interchangeable parsing modes to maintain compatibility with legacy scripts and different language specifications.
  • Asynchronous Template Rendering - Processes templates using non-blocking operations to maintain stability during heavy concurrent traffic.
  • Script Conversions - Provides a dedicated conversion tool to transform scripts from Liquid format to Scriban syntax.

سجل النجوم

مخطط تاريخ النجوم لـ scriban/scribanمخطط تاريخ النجوم لـ scriban/scriban

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

الأسئلة الشائعة

ما هي وظيفة scriban/scriban؟

Scriban is a text templating library and .NET scripting engine used for dynamic text generation. It functions as a template processor and a safe scripting sandbox, providing a secure execution environment that restricts object exposure to prevent unauthorized code execution. The project also includes an abstract syntax tree template parser that allows for programmatic template analysis and modification.

ما هي الميزات الرئيسية لـ scriban/scriban؟

الميزات الرئيسية لـ scriban/scriban هي: Dynamic Text Generation, .NET Scripting Engines, Template Rendering Engines, Template, Runtime Member Visibility Filtering, Template AST Analysis, AST-Based Template Parsing, Embedded Scripting Logic.

ما هي البدائل مفتوحة المصدر لـ scriban/scriban؟

تشمل البدائل مفتوحة المصدر لـ scriban/scriban: lunet-io/scriban — Scriban is a .NET text templating engine and embedded scripting language used for dynamic text generation. It… mouredev/hello-java — This project is a collection of instructional resources and curriculum materials designed to teach the Java language.… gopl-zh/gopl-zh.github.com — This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a… rhaiscript/rhai — Rhai is an embedded scripting engine and dynamically typed language designed for integration into Rust applications.… inkle/ink — Ink is an interactive narrative scripting language, a JSON narrative compiler, and a narrative engine runtime. It… janet-lang/janet — Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an…

بدائل مفتوحة المصدر لـ Scriban

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع Scriban.
  • lunet-io/scribanالصورة الرمزية لـ lunet-io

    lunet-io/scriban

    3,905عرض على 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#
    عرض على GitHub↗3,905
  • mouredev/hello-javaالصورة الرمزية لـ mouredev

    mouredev/hello-java

    4,304عرض على GitHub↗

    This project is a collection of instructional resources and curriculum materials designed to teach the Java language. It provides a structured programming course, a fundamentals guide, and an object-oriented programming tutorial, supported by a series of practical coding exercises and implementation challenges. The curriculum focuses on implementing object-oriented patterns, including inheritance, polymorphism, and abstraction. It covers the creation of classes, the use of interfaces to define behavioral contracts, and the application of access modifiers to control data visibility. The educa

    Javacursojavapoo
    عرض على GitHub↗4,304
  • gopl-zh/gopl-zh.github.comالصورة الرمزية لـ gopl-zh

    gopl-zh/gopl-zh.github.com

    4,958عرض على GitHub↗

    This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a localized educational resource and technical manual designed to provide guidance on language syntax, design, and software development. The resource covers a broad range of Go language education, including the implementation of programming patterns and system design. It includes translated lessons and examples that focus on core language features such as concurrency and the use of interfaces. The content spans various capability areas, including language fundamentals, data modeling, r

    Goprogramming-language
    عرض على GitHub↗4,958
  • rhaiscript/rhaiالصورة الرمزية لـ rhaiscript

    rhaiscript/rhai

    5,453عرض على GitHub↗

    Rhai is an embedded scripting engine and dynamically typed language designed for integration into Rust applications. It functions as an abstract syntax tree compiler and native interop layer, allowing developers to map Rust types and functions into a scripting environment for bidirectional communication. The project serves as a framework for creating customizable domain-specific languages. It allows for the definition of custom operators, syntax, and restricted execution environments, enabling the creation of specialized languages with tailored functional sets. The engine covers a broad rang

    Rustembeddedembedded-scripting-languageno-std
    عرض على GitHub↗5,453
  • عرض جميع البدائل الـ 30 لـ Scriban→