Open-source compiler software
1008 open-source libraries, tools and applications tagged compiler, ranked by how closely compiler is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1008 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| succinctlabs/sp1 SP1 is a zero-knowledge virtual machine (zkVM) that proves the correct execution of arbitrary programs compiled to RISC-V, written in Rust … | 94 | 1743 | active |
| quantumlib/OpenFermion OpenFermion is an open-source Python library for compiling and analyzing quantum algorithms that simulate fermionic systems, including quan… | 86 | 1741 | active |
| Consensys/gnark gnark is a fast zk-SNARK library in Go offering a high-level API to define circuits, compile them to constraint systems, and generate/verif… | 95 | 1739 | active |
| revng rev.ng is an open-source binary analysis framework and decompiler built on LLVM and QEMU, supporting over 20 CPU architectures. It automati… | 75 | 1739 | active |
| radian-software/riju Riju is an extremely fast online playground that lets users run code in hundreds of programming languages directly in the browser, with sub… | 62 | 1735 | active |
| jzimmerman/langcc langcc is a next-generation compiler compiler that generates efficient linear-time parsers and full compiler frontends (AST definitions, tr… | 32 | 1729 | stable |
| Enzyme Enzyme is a high-performance automatic differentiation plugin for LLVM and MLIR that computes derivatives and gradients of arbitrary existi… | 95 | 1718 | active |
| clojerl/clojerl Clojerl is an unofficial implementation of the Clojure programming language that runs on the Erlang VM (BEAM). It provides a REPL, compiler… | 23 | 1715 | active |
| SVF-tools/SVF SVF is a C++ static analysis framework built on LLVM that provides scalable and precise value-flow analysis and pointer analysis for source… | 83 | 1714 | active |
| ion-design/ditto.site ditto.site is a hosted capture-to-code service that turns a public URL into a self-contained TypeScript app, emitting a deterministic Next.… | 58 | 1704 | active |
| iden3/circom Circom is a domain-specific language and compiler for defining arithmetic circuits used to generate zero-knowledge proofs (zk-SNARKs). Writ… | 73 | 1698 | active |
| vygr/ChrysaLisp ChrysaLisp is a 64-bit parallel operating system environment featuring a virtual processor, GUI, terminal, OO assembler, C-Script compiler,… | 98 | 1695 | active |
| SciML/ModelingToolkit.jl ModelingToolkit.jl is a Julia-based acausal, equation-based modeling framework and computer algebra system for symbolic-numeric computation… | 95 | 1694 | active |
| ferrocene/ferrocene Ferrocene is a safety-critical Rust toolchain, a downstream fork of the official Rust compiler, qualified for use in safety- and mission-cr… | 73 | 1688 | active |
| indygreg/PyOxidizer PyOxidizer is a Rust-based tool for packaging Python applications into self-contained binaries that embed a Python interpreter and all reso… | 23 | 6157 | maintenance |
| JetBrains/MPS JetBrains MPS is an open-source meta-programming system (language workbench) for designing domain-specific languages with a complete develo… | 77 | 1660 | stable |
| gbdev/rgbds RGBDS is a free, open-source assembler/linker toolchain for developing Nintendo Game Boy and Game Boy Color software in assembly. It compri… | 94 | 1659 | stable |
| ganelson/inform Inform 7 is a programming language for writing interactive fiction using natural-language syntax, and this repository holds the core compil… | 59 | 1654 | active |
| symforce-org/symforce SymForce is a Python/C++ library for fast symbolic computation, code generation, and tangent-space nonlinear optimization aimed at robotics… | 89 | 1646 | active |
| Cherri Cherri is a domain-specific programming language and compiler, written in Go, that compiles source files into signed Apple Siri Shortcuts. … | 91 | 1644 | active |
| WASI SDK WASI SDK is a WebAssembly C/C++ toolchain that bundles upstream Clang/LLVM with the wasi-libc sysroot, configured to target wasm32-wasi out… | 92 | 1643 | active |
| vk-com/kphp-kdb VK's KittenPHP/DB/Engine suite: a PHP-to-C++ translating compiler (KPHP) plus a set of specialized high-performance non-relational database… | 32 | 6065 | maintenance |
| google/j2objc J2ObjC is Google's open-source command-line translator that converts Java source code into Objective-C for iOS apps, with a supporting runt… | 67 | 6033 | maintenance |
| intelxed/xed Intel XED is a C library for encoding and decoding X86 (IA32 and Intel64) machine instructions, converting between byte sequences and struc… | 89 | 1622 | stable |
| cnlohr/ch32fun A minimal open-source development environment (headers, examples, and tooling) for WCH RISC-V microcontrollers like the CH32V003, built aro… | 66 | 1622 | active |
| clash-lang/clash-compiler Clash is a functional hardware description language based on Haskell, with a compiler that transforms high-level descriptions into synthesi… | 93 | 1619 | active |
| pret/pokefirered A complete decompilation of Pokémon FireRed and LeafGreen that rebuilds byte-identical GBA ROM images from C source code. It is part of the… | 71 | 1619 | active |
| pmret/papermario A work-in-progress matching decompilation of Paper Mario for the Nintendo 64, written in C. It rebuilds byte-identical ROMs for the US, JP,… | 75 | 1614 | active |
| kevinmehall/rust-peg rust-peg is a Parsing Expression Grammar (PEG) parser generator for Rust, provided as a proc macro that builds a recursive descent parser f… | 67 | 1604 | stable |
| richfelker/musl-cross-make A makefile-based build system for producing musl libc-targeting GCC cross compilers. It automates downloading, patching, and building GCC, … | 68 | 1588 | active |
| dotnetcore/Natasha Natasha is a Roslyn-based C# dynamic assembly building library that lets developers compile and load C# code at runtime, creating domains, … | 64 | 1587 | active |
| austral/austral Austral is a new systems programming language featuring linear types for provably safe resource and memory management, and linear capabilit… | 34 | 1586 | active |
| dtolnay/quote A Rust crate providing the quote! macro for turning Rust syntax tree data structures into token streams of source code. It is primarily use… | 86 | 1582 | stable |
| zama-ai/concrete Concrete is an open-source fully homomorphic encryption (FHE) compiler built on TFHE and LLVM that converts Python programs into their FHE … | 52 | 1580 | active |
| Flux Zygote.jl is a source-to-source automatic differentiation library for Julia that hooks into the Julia compiler to generate gradient (backwa… | 97 | 1574 | active |
| IKVM IKVM is an implementation of Java for the .NET platform, providing a JVM implemented in .NET along with a bytecode-to-IL converter. It lets… | 100 | 1573 | active |
| Hylo programming language Hylo (formerly Val) is a systems programming language built around mutable value semantics and generic programming, implemented in Swift wi… | 80 | 1570 | active |
| Hexeption/MCP-Reborn MCP-Reborn is a Mod Coder Pack for Minecraft that decompiles and maps the game's source code so developers can create modded clients and st… | 78 | 1563 | active |
| ByteDance-Seed/Triton-distributed Triton-distributed is a distributed compiler built on OpenAI Triton for computation-communication overlapping on multi-GPU systems. It lets… | 61 | 1559 | active |
| JuliaLang/PackageCompiler.jl A Julia package for creating custom system images, standalone 'app' executables, and relocatable C libraries from Julia code. It moves Juli… | 95 | 1556 | active |
| ivov/lisette Lisette is a small programming language inspired by Rust that compiles to readable Go, featuring Hindley-Milner type inference, algebraic d… | 78 | 1554 | active |
| NutShell NutShell is an open-source RISC-V processor (SoC) designed by students at UCAS as part of the OSCPU project, written in Chisel/Scala. It su… | 66 | 1553 | active |
| ThakeeNathees/pocketlang Pocketlang is a lightweight, fast, embeddable scripting language written in C with a Ruby-flavored Python-like syntax, including its own by… | 56 | 1548 | active |
| JuliaSymbolics/Symbolics.jl Symbolics.jl is a fast, modern Computer Algebra System (CAS) written in Julia for high-performance symbolic mathematics. It supports symbol… | 95 | 1538 | active |
| intel/llvm Intel's staging area for LLVM upstream contributions and home for Intel LLVM-based projects, most notably the oneAPI DPC++ compiler impleme… | 96 | 1537 | active |
| DLTcollab/sse2neon A single-header C/C++ library that translates Intel SSE (MMX through SSE4.2 and AES) intrinsics to Arm/Aarch64 NEON intrinsics. It enables … | 71 | 1531 | active |
| dtolnay/watt Watt is a Rust runtime for executing procedural macros that have been compiled ahead-of-time to WebAssembly. It lets downstream users run m… | 61 | 1531 | active |
| qmhc/unplugin-dts An unplugin that generates TypeScript declaration files (*.d.ts) from .ts(x) and .vue source files during library-mode builds. It supports … | 97 | 1529 | active |
| VKCOM/kphp KPHP is a PHP compiler developed at VK.com that compiles a limited subset of PHP to C++ and then to a native binary running faster than pla… | 76 | 1526 | active |
| jart/sectorlisp SectorLISP is a 512-byte LISP implementation that fits in a boot sector and boots John McCarthy's meta-circular evaluator on bare metal fro… | 68 | 1526 | stable |
| beehive-lab/TornadoVM TornadoVM is a Java programming framework that JIT-compiles JVM bytecode into GPU kernels targeting NVIDIA CUDA, OpenCL, and Apple Metal at… | 98 | 1523 | active |
| bartblast/hologram Hologram is a full-stack isomorphic Elixir web framework that runs on top of Phoenix, letting developers build dynamic, interactive web app… | 96 | 1522 | active |
| Carbon Language Carbon Language is an experimental programming language designed as a successor to C++. It includes a compiler, standard library, and tooli… | 85 | 33900 | experimental |
| Carbon Language Carbon is an experimental successor language to C++ with bidirectional C++ interoperability, built on LLVM for C++-level performance. The r… | 85 | 33900 | experimental |
| Lightning-AI/lightning-thunder Lightning Thunder is a source-to-source deep learning compiler for PyTorch that optimizes models for training and inference. It provides a … | 70 | 1475 | active |
| ring-lang/ring Ring is a simple, lightweight, embeddable, multi-paradigm dynamic programming language implemented in C, supporting imperative, procedural,… | 84 | 1470 | active |
| Handlebars.Net Handlebars.Net is a .NET implementation of the Handlebars.js templating engine, written in C#. It compiles Handlebars/Mustache templates di… | 91 | 1466 | stable |
| digego/extempore Extempore is a live-coding environment for music and audio that pairs a Scheme interpreter with xtlang, a statically-typed lisp compiled to… | 97 | 1465 | active |
| objectionary/eo EO (EOLANG) is an experimental pure object-oriented programming language based on 𝜑-calculus, implemented in Java. It deliberately rejects … | 92 | 1462 | active |
| intel/compute-runtime Intel's open-source Graphics Compute Runtime (NEO) providing OpenCL 3.0 and oneAPI Level Zero compute API support for Intel HD Graphics and… | 98 | 1457 | active |
| Gradle Retrolambda Plugin A Gradle plugin that integrates Retrolambda to backport Java 8 lambda expressions to Java 6/7 bytecode, including Android projects. It comp… | 23 | 5246 | maintenance |
| gambit/gambit Gambit is a complete, portable, and efficient implementation of the Scheme programming language, including an interpreter (gsi) and an opti… | 77 | 1447 | stable |
| vue-vine/vue-vine Vue Vine is an alternative style for writing Vue.js components that allows multiple components in a single TypeScript file, as a parallel a… | 82 | 1444 | active |
| sql-machine-learning/sqlflow SQLFlow is a compiler that extends SQL with AI-oriented syntax (training, prediction, evaluation, explanation, and mathematical programming… | 23 | 5190 | maintenance |
| rust-lang/rust-playground The Rust Playground is a web service that lets users write, compile, and run Rust code in the browser without installing anything. It suppo… | 74 | 1434 | active |
| JuliaGPU/CUDA.jl CUDA.jl is the main Julia package for programming NVIDIA CUDA GPUs, offering a high-level CuArray abstraction, a compiler for writing CUDA … | 99 | 1433 | stable |
| sylefeb/Silice Silice is an open-source hardware description language designed to make writing FPGA hardware algorithms with pipelines and parallelism eas… | 75 | 1432 | active |
| OpenModelica OpenModelica is an open-source Modelica-based modeling, compilation, and simulation environment for industrial and academic use. It include… | 97 | 1431 | active |
| titzer/virgil Virgil is a fast, lightweight, statically-typed systems programming language that blends functional and object-oriented paradigms. Its self… | 77 | 1427 | active |
| ZacSweers/metro Metro is a compile-time dependency injection framework for Kotlin Multiplatform, implemented as a Kotlin compiler plugin with FIR/IR code g… | 84 | 1407 | active |
| pgcentralfoundation/plrust PL/Rust is a loadable procedural language handler for PostgreSQL that lets developers write database functions in Rust, compiled to native … | 50 | 1405 | active |
| Noir Noir is a Rust-inspired domain-specific language for writing privacy-preserving programs that compile to zero-knowledge (SNARK) proofs via … | 96 | 1402 | active |
| fastbuild/fastbuild FASTBuild is a high-performance open-source build system for Windows, macOS, and Linux, focused on minimizing compile times for full builds… | 84 | 1401 | active |
| sysprog21/shecc shecc is a self-hosting, educational optimizing C compiler written in ANSI C that targets 32-bit ARMv7-A and RV32IM (RISC-V) Linux systems.… | 75 | 1397 | active |
| toitlang/toit The Toit language implementation, consisting of a compiler, virtual machine, and standard libraries for running a modern high-level languag… | 97 | 1394 | active |
| TheRock TheRock is AMD's open-source build and release system for the ROCm software stack, replacing the legacy monolithic ROCm release process wit… | 89 | 1394 | active |
| hyperledger-solang/solang Solang is a Solidity compiler written in Rust that uses LLVM as its backend, targeting non-EVM blockchains such as Solana, Polkadot paracha… | 86 | 1383 | active |
| esseks/monicelli Monicelli is an esoteric programming language based on the 'supercazzole' gibberish from the Italian comedy film Amici Miei. It ships with … | 47 | 1381 | active |
| google/j2cl J2CL is a transpiler from Google that converts Java source code into Closure-style JavaScript, tightly integrated with Closure Compiler for… | 81 | 1380 | active |
| dadhi/FastExpressionCompiler A .NET library that compiles C# expression trees to delegates far faster than the built-in LINQ compiler, with a lightweight LightExpressio… | 98 | 1378 | stable |
| ldc-developers/ldc LDC is a portable compiler for the D programming language that uses the official DMD frontend and LLVM for optimization and code generation… | 89 | 1377 | active |
| Cracked5pider/Stardust Stardust is a modern 32/64-bit position independent shellcode (implant) template written in C++20. It provides compile-time FNV-1a hashing … | 67 | 1373 | active |
| KhronosGroup/SPIRV-Tools SPIR-V Tools is a Khronos Group project providing an API and command-line tools for processing SPIR-V modules, including an assembler, bina… | 95 | 1371 | stable |
| PEG.js PEG.js is a parser generator for JavaScript that compiles PEG grammars into fast parsers with excellent error reporting. It is used to buil… | 23 | 4902 | maintenance |
| mstorsjo/msvc-wine A set of shell and Python scripts that download, unpack, and wrap Microsoft Visual C++ and the Windows SDK so they run under Wine on Linux.… | 66 | 1370 | active |
| starkware-libs/cairo-lang Cairo is a programming language for writing provable programs, developed by StarkWare for STARK-based zero-knowledge proofs and StarkNet sm… | 64 | 1368 | active |
| cglib/cglib cglib is a high-level Java bytecode generation and transformation library used to create dynamic proxies, extend classes, and intercept met… | 23 | 4886 | maintenance |
| NVIDIA-AI-IOT/torch2trt torch2trt is a Python library that converts PyTorch models to TensorRT engines using the TensorRT Python API, with a simple single-function… | 23 | 4885 | maintenance |
| beeware/Python-Apple-support A meta-package that downloads, patches, and builds relocatable Python frameworks for embedding into macOS, iOS, tvOS, watchOS, and visionOS… | 98 | 1363 | active |
| brechtsanders/winlibs_mingw Standalone builds of the GCC compiler combined with MinGW-w64, providing a free C/C++ compiler toolchain for Windows, distributed as binary… | 98 | 1357 | active |
| pomsky-lang/pomsky Pomsky is a modern, portable regular expression language that cross-compiles to standard regexes for engines like PCRE, JavaScript, Python,… | 57 | 1353 | active |
| mchughalex/skate3recomp An unofficial native recompilation of the Xbox 360 version of Skate 3 that runs on Windows, Linux, and macOS. Since v2.0.0 it uses a native… | 71 | 1350 | active |
| scalapb/ScalaPB ScalaPB is a protocol buffer compiler plugin for Scala that generates Scala case classes, parsers, and serializers from .proto files. It su… | 95 | 1340 | active |
| denoland/dnt dnt (Deno to Node Transform) is a build tool that converts Deno modules into publishable npm packages for Node.js. It rewrites module speci… | 94 | 1336 | active |
| touchlab/SKIE SKIE (Swift Kotlin Interface Enhancer) is a Kotlin compiler plugin that improves the Swift API generated from Kotlin Multiplatform code. It… | 89 | 1330 | active |
| py2many/py2many py2many is a Python-based source-to-source transpiler that converts Python code into multiple statically-typed languages including Rust, C+… | 84 | 1330 | active |
| facebookincubator/AITemplate AITemplate is a Python framework that compiles deep neural networks into high-performance CUDA (NVIDIA) or HIP (AMD) C++ code for fast fp16… | 67 | 4730 | maintenance |
| mxe/mxe MXE (M cross environment) is a GNU Makefile-based system that compiles a MinGW-w64 cross compiler on Unix systems and cross-compiles hundre… | 75 | 1320 | stable |
| skvadrik/re2c re2c is a free and open-source lexer generator that compiles regular expressions into fast, direct-coded lexers for many languages includin… | 91 | 1312 | stable |
| openhwgroup/cv32e40p CV32E40P is an open-source 32-bit RISC-V processor core (RV32IMFC with PULP extensions) implemented in SystemVerilog, maintained by the Ope… | 67 | 1312 | active |