12 dépôts
Build-time tools that convert domain-specific or extended syntax into standard executable code.
Distinguishing note: Focuses on the transformation process rather than the syntax itself.
Explore 12 awesome GitHub repositories matching web development · Syntax Transformers. Refine with filters or upvote what's useful.
Jest is a JavaScript testing framework designed for writing and running automated test suites to verify the correctness of JavaScript and TypeScript code. It functions as a comprehensive toolset that integrates a test runner, a mocking and spying library, a snapshot testing tool, and a code coverage tool. The framework distinguishes itself through snapshot testing, which records the serialized state of data structures to detect regressions in future executions. It also includes a mocking and spying library for simulating external dependencies and tracking function calls to isolate code during
Integrates a transformation pipeline to transpile non-standard JavaScript and TypeScript before test execution.
Babel is a pluggable JavaScript compiler and transpiler that converts modern ECMAScript syntax into backwards-compatible versions of the language. It functions as an abstract syntax tree manipulator, parsing source code into a hierarchical structure to traverse and modify nodes for custom code transformations. The system utilizes a plugin-driven architecture to apply specific transformation rules and supports presets that bundle multiple plugins into named configuration groups. This enables the transformation of experimental syntax and the injection of non-global polyfills to ensure consisten
Provides build-time tools that convert experimental or extended JavaScript syntax into standard executable code.
This project is a structured educational curriculum designed to guide developers through the mastery of component-based user interface development. It functions as a technical learning resource that provides a comprehensive roadmap for understanding the fundamental principles of modern web development, including component composition, declarative state reconciliation, and virtual document object model diffing. The repository distinguishes itself through a day-by-day guided path that bridges the gap between basic programming knowledge and the advanced language features required for interactive
Converts HTML-like code structures into standard function calls during the build process.
Snowpack is an ESM-powered frontend build tool and development server that serves native ES modules directly to the browser. By eliminating the bundling process during development, it enables nearly instant server startup and unbundled frontend development. The project features a framework-aware hot module reload system that preserves component state during updates, with specific Fast Refresh integration for React, Preact, Svelte, and Vue. It also acts as a modern web transpiler, automatically converting TypeScript, JSX, and CSS Modules into browser-compatible code without requiring manual co
Provides automated build-time transformation of JSX, TypeScript, and CSS Modules into standard executable code.
This project is a document transformation pipeline that compiles Markdown files into executable JavaScript components. By integrating JSX directly into standard text documents, it enables the creation of interactive content that functions as a component-based engine for modern frontend applications. The system distinguishes itself through a unified, plugin-driven architecture that processes content by converting it into an abstract syntax tree. This allows for deep customization of the compilation logic, enabling developers to map standard Markdown elements to custom interface components, inj
Hooks into the parsing pipeline to transform custom syntax extensions into standard executable code.
Vue Native is a framework that compiles Vue.js single-file components into React Native primitives, enabling developers to build native iOS and Android applications using Vue syntax. At its core, it provides a build-time compiler that transforms Vue components into React components, while hooking Vue's dependency-tracking reactivity system into React's component lifecycle to trigger re-renders when observed data changes. The framework wraps React Native's native module bridge so Vue components can access device APIs through Vue's reactivity system, and maps Vue's component syntax to React Nat
Extends the Metro bundler with a custom transformer that processes Vue template syntax before execution.
This is an ECMAScript proposal that introduces a pipeline operator for JavaScript, enabling left-to-right expression chaining with a dedicated placeholder token to reference the previous step's value. The proposal defines a syntax-only transformation that desugars to standard JavaScript, requiring no new runtime support or engine primitives. The pipeline operator allows chaining operations sequentially, passing each result to the next step in natural reading order. It includes a null-safe variant that short-circuits on nullish values, returning them unchanged and skipping remaining steps. Eac
Defines a syntax-only transformation that desugars to standard JavaScript without runtime support.
Sucrase is a high-speed transpilation tool that compiles modern JavaScript, TypeScript, JSX, and Flow to standard JavaScript for modern runtimes. It operates as a fast alternative to Babel, using a single-pass scanner and tokenizer that strips type annotations and applies only requested syntax transforms without building an AST or performing type checking. The tool differentiates itself through a zero-type-checking pipeline that omits type checking entirely, relying on the assumption that input code is already valid for the target runtime. It uses scanner-based tokenization and single-pass co
Applies only requested syntax transforms for JSX, TypeScript, Flow, and imports while leaving other modern syntax unchanged.
Lebab is a JavaScript code modernization tool that converts older ES5 syntax into contemporary ES6 equivalents. It operates as a source-to-source transpiler, parsing code into an abstract syntax tree, applying structural transformations, and regenerating the output without intermediate representations or runtime dependencies. The tool distinguishes itself through a rule-driven pipeline of independent transformation rules, each targeting a specific ES6 feature like arrow functions, let/const, classes, or modules. It provides a programmatic API that accepts source code and an array of transform
Applies safe and unsafe code transforms to upgrade JavaScript syntax while preserving runtime behavior.
Ce projet est un plugin Sublime Text et une extension d'éditeur de développement web qui fonctionne comme un expanseur d'abréviations de balisage. Il permet la création rapide de blocs de code HTML et CSS structurés en transformant des jetons abrégés concis, de type CSS, en balisage complet et feuilles de style. L'outil fournit une automatisation avancée pour les workflows web, incluant la génération d'éléments HTML imbriqués, de noms de classe BEM et de préfixes vendeurs CSS. Il inclut également des utilitaires spécialisés pour générer des dégradés CSS avec des replis de compatibilité navigateur et convertir des chemins d'image en données URL encodées en base64. Au-delà de la génération de code, l'extension couvre la manipulation de la structure de balisage et la navigation. Cela inclut des capacités pour équilibrer les sélections de balises, sauter entre des paires de balises correspondantes, effectuer des calculs arithmétiques dans le code et générer du texte factice pour les tests visuels. Le système est configurable via le mappage d'alias d'abréviation, des définitions d'extraits personnalisées et des extensions de plugin pour modifier les filtres et actions internes.
Converts abstract abbreviation tokens into language-specific output via configurable flags and mappings.
babel-loader est un plugin webpack qui intègre le compilateur Babel dans un workflow de bundling de modules. Il sert de pont qui permet au JavaScript moderne d'être transpilé en versions rétrocompatibles pendant le processus de build. Le projet optimise les tailles de bundle en remplaçant les fonctions d'aide dupliquées par des références à un runtime externe partagé. Pour accélérer les cycles de compilation ultérieurs, il utilise un cache basé sur le système de fichiers pour stocker les fichiers traités et éviter la transpilation redondante. Le loader prend en charge le mappage de configuration spécifique à l'environnement et les configurations cibles pour appliquer différentes règles de transformation pour les plateformes client et serveur. Il fournit également un mécanisme pour transférer les métadonnées de transpilation vers le bundler de modules pour la synchronisation avec d'autres plugins de build.
Passes transpilation data back to the module bundler to synchronize state with other build plugins.
magic-regexp is a type-safe regular expression builder and TypeScript compiler. It allows for the construction of JavaScript regular expressions using a readable syntax that automatically generates precise types for captured groups, ensuring predictable data extraction. The project functions as a build-time transformer that converts custom pattern syntax into standard regular expression objects. This static compilation removes runtime overhead by shifting the transformation logic to the build process. The tool covers named capture group generation and a readable construction API that replace
Translates existing RegExp literals into readable builder syntax and back for easier maintenance.