13 个仓库
Compilers that translate high-level source code into executable JavaScript.
Distinct from JavaScript Interop: The candidates focus on interop or in-memory compilation rather than the core compiler output target.
Explore 13 awesome GitHub repositories matching programming languages & runtimes · JavaScript Compilers. Refine with filters or upvote what's useful.
This project is a technical handbook and tutorial guide for the Babel compiler. It serves as a resource for configuring the tool and writing custom plugins to transform JavaScript source code. The guide provides instructional material on creating custom transformation plugins and modifying the compilation process. It specifically covers how to navigate and modify abstract syntax trees to programmatically rewrite source code. The documentation covers the mechanics of code transformation, the management of compiler configurations, and the fundamentals of compiler tooling. It includes guidance
Explains the mechanics of code transformation and compilation for different target environments.
The Concise TypeScript Book: A Concise Guide to Effective Development in TypeScript. Free and Open Source.
Documents how TypeScript compiles modern ES6 and ES7 syntax into compatible JavaScript.
PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed as a cross-platform frontend language for building safe web applications, utilizing a static type system and a JavaScript compiler to ensure program correctness across browser and server environments. The language is distinguished by its emphasis on mathematical purity, featuring a robust type system with first-class support for monads. It provides a sophisticated toolset for static verification, including algebraic data types, type classes, and automatic type inference to reje
Translates strongly typed functional code into compatible JavaScript for execution in browsers and servers.
Traceur is a JavaScript syntax transpiler that transforms modern and next-generation language features into compatible versions for older runtime environments. It functions as a compiler that translates proposed language standards and upcoming syntax into current versions to maintain cross-engine compatibility. The project operates as an asynchronous code transformer, converting async functions and generators into promise-based state machines. It includes a functional tail-call optimizer that wraps recursive functions in trampolines to prevent stack overflows and an ECMAScript polyfill engine
Compiles modern JavaScript syntax into versions compatible with older runtime environments.
This project is a comprehensive functional programming curriculum and learning resource for Haskell. It provides sequenced educational paths and technical reference guides designed to take developers from beginner to advanced levels of proficiency. The project distinguishes itself through a deep focus on theoretical and technical foundations, offering detailed studies on type theory, category theory, and runtime internals. It includes a dedicated performance handbook for optimizing execution speed and memory management, as well as an ecosystem guide for managing development tools and editor c
Includes materials on translating Haskell code into executable JavaScript for frontend development.
This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit
Transforms a high-level functional language into optimized, executable JavaScript bundles for the web.
ReScript is a statically typed programming language and compiler designed to transform type-safe source code into efficient, human-readable JavaScript. It functions as a transpiler that enforces data consistency and prevents runtime errors through static type analysis for both web and server applications. The project distinguishes itself as an incremental build system that analyzes dependency graphs to recompile only modified files and their dependents. It includes a JSX compatible compiler for building user interfaces and provides a framework for bridging type-safe code with existing JavaScr
Translates a statically typed high-level language into efficient and human-readable JavaScript.
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
Removes Flow type annotations and compiles the remaining code to standard JavaScript that runs without a type checker.
Webpacker 是一个前端构建工具系统和 JavaScript 模块管理器,用于将 Webpack 集成到 Ruby on Rails 应用中。它充当后端 Web 框架与前端构建流程之间的桥梁,负责将 JavaScript 和 CSS 编译为浏览器可用的包。 该系统提供专用的开发资源服务器,支持实时代码重载和浏览器自动刷新。在生产环境方面,它包含一个预编译流水线,可对脚本和样式表进行压缩,并应用网络资源压缩以优化交付。 该项目通过基于助手的标签注入和基于清单的资源映射实现全面的资源管理,确保编译后的文件在 HTML 模板中被正确引用。它还支持通过可编程配置接口自定义编译流水线,以便集成非标准语言和自定义模块路径解析。
Transforms modern JavaScript and script languages into browser-compatible bundles using a compilation tool.
该项目是 TypeScript 语言的综合指南和教育资源。它涵盖了该语言的基本原则,包括其结构化类型系统、静态类型分析以及将类型化源文件转译为 JavaScript 的过程。 该材料详细介绍了如何使用泛型、条件类型和映射类型来建模复杂数据和可重用的类型逻辑。它还解释了如何使用声明文件为外部 JavaScript 库提供类型安全,以及如何通过 JSDoc 注释将类型检查集成到现有的 JavaScript 项目中。 内容范围扩展到面向对象编程模式、DOM 操作和编译器行为配置。它包括关于管理模块互操作性、设置构建管线以及利用编辑器智能以提高开发者生产力的指导。
Transforms high-level typed source code into executable JavaScript.
Scala.js 是一个编译器和跨平台语言工具链,将 Scala 源代码转换为 JavaScript 或 WebAssembly。它作为 JavaScript 生态系统的一种静态类型工具,支持为 Web 浏览器和 Node.js 环境开发应用程序。 该项目作为一个 JavaScript 互操作框架,允许创建类型安全的门面(facades)和绑定,以与外部库和全局对象进行交互。它提供了静态和动态 JavaScript 调用机制,包括生成 TypeScript 绑定以及导出内部逻辑以供外部 JavaScript 代码使用的能力。 该工具链包含一个用于生产环境打包和输出优化的前端构建工具,包括死代码消除和模块拆分。它涵盖了广泛的功能面,包括用于 UI 开发的 DOM 元素类型检查、用于全栈开发的跨平台代码共享,以及用于验证优化构建产物的各种测试框架。 编译后的脚本可以使用 JavaScript 解释器直接在命令行环境中执行。
Transforms Scala source code into executable JavaScript for use in web browsers or server environments.
Sweet-core 是一个 JavaScript 源码到源码(source-to-source)的编译器和 Lisp 风格的宏系统。它作为一个语法转换器,通过允许在编译过程中定义自定义语法和运算符来扩展 JavaScript。 该系统提供了一个框架,用于通过卫生的(hygienic)、递归的宏展开和创建新的语言结构来构建领域特定语言(DSL)。它的独特之处在于支持具有可配置结合性和优先级的自定义运算符定义,以控制表达式的求值。 该编译器包含一个专门的模块系统,用于管理编译时依赖项和运行时辅助工具的集成。其内部架构涵盖了抽象语法树(AST)转换、语法生成匹配和语法对象生成,以确保词法卫生。 提供了一个命令行接口,用于将源文件转换为标准的 JavaScript 输出文件或目录。
Functions as a JavaScript macro compiler that extends the language with custom syntax and operators during compilation.
next-mdx-remote is a rendering library for Next.js that serializes and renders MDX content from remote sources. It functions as a secure MDX compiler and remote content serializer, transforming MDX strings from external APIs or databases into a format compatible with client-side hydration. The library distinguishes itself through a secure compilation process that restricts JavaScript execution and global variable access to prevent remote code execution. It utilizes a custom component mapper to replace standard HTML elements in markdown with specific React components, allowing for dynamic cont
Implements a secure MDX compiler that restricts JavaScript execution to prevent remote code execution vulnerabilities.