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 |
|---|---|---|---|
| CatalaLang/catala Catala is a domain-specific programming language for deriving faithful-by-construction algorithms from legislative texts via literate progr… | 94 | 2417 | active |
| ucb-bar/chipyard Chipyard is an open-source agile hardware design framework for building Chisel-based RISC-V systems-on-chip, including processor cores (Roc… | 81 | 2411 | active |
| ZealOS ZealOS is a modernized fork of the 64-bit TempleOS, a public-domain hobbyist operating system written in HolyC (renamed ZealC). It aims to … | 68 | 2409 | active |
| shadow-cljs shadow-cljs is a build tool and compiler for ClojureScript that focuses on simplicity, good defaults, and seamless npm integration. It supp… | 76 | 2407 | active |
| google/souper Souper is a superoptimizer for LLVM IR that uses SMT solvers (like Z3) to synthesize shorter, equivalent instruction sequences. It identifi… | 10 | 2386 | active |
| chakra-core/ChakraCore ChakraCore is an open-source JavaScript engine with a C API for embedding JavaScript execution into C or C-compatible applications. It was … | 50 | 9260 | maintenance |
| OpenEXR Open Shading Language (OSL) is a small, C-like programmable shading language with a compiler and runtime library for advanced production re… | 94 | 2343 | stable |
| go-python/gopy gopy is a command-line tool that generates and compiles CPython extension modules from Go packages, letting Python code call Go code direct… | 85 | 2333 | active |
| rune-rs/rune Rune is an embeddable dynamic programming language for Rust, running on an efficient stack-based virtual machine. It offers clean Rust inte… | 78 | 2331 | active |
| android/ndk The Android Native Development Kit (NDK) lets Android developers embed native C/C++ code in their apps as JNI shared libraries. This reposi… | 91 | 2323 | active |
| MCHPR/MCHPRS MCHPRS is a multithreaded Minecraft 1.20.4 creative server written in Rust, purpose-built for computational redstone. Each 512x512 plot run… | 83 | 2321 | active |
| SwiftLaTeX/SwiftLaTeX SwiftLaTeX compiles the PdfTeX and XeTeX LaTeX engines to WebAssembly so LaTeX documents can be compiled entirely in the browser, exposed a… | 23 | 2320 | active |
| gbdk-2020/gbdk-2020 GBDK-2020 is a cross-platform development kit for retro gaming consoles including the Nintendo Game Boy, NES, and Sega Master System/Game G… | 73 | 2315 | active |
| distcc/distcc distcc is a distributed compilation front-end for C, C++, and Objective C that spreads compile jobs across machines on a network. It works … | 60 | 2313 | stable |
| microsoft/pxt Microsoft MakeCode (PXT) is a framework for building beginner-friendly, browser-based programming editors focused on computer science educa… | 76 | 2310 | active |
| gnostic gnostic is a Go command-line compiler that converts OpenAPI descriptions between JSON/YAML and Protocol Buffer representations. It provides… | 63 | 2308 | active |
| casadi/casadi CasADi is an open-source symbolic framework for gradient-based numerical optimization, implementing forward and reverse mode automatic diff… | 93 | 2307 | stable |
| RuntimeCompiledCPlusPlus/RuntimeCompiledCPlusPlus Runtime-Compiled C++ (RCC++) is a C++ library and sample project that lets developers recompile and swap C++ code while a program is runnin… | 51 | 2296 | active |
| herumi/xbyak Xbyak is a C++ header-only JIT assembler for generating x86/x64 machine code at runtime using Intel/MASM-like mnemonics. It supports instru… | 76 | 2285 | active |
| didi/chameleon Chameleon (CML) is a cross-platform development framework by DiDi that lets you write one Vue-like codebase and compile it to web, WeChat/A… | 10 | 8940 | maintenance |
| llvm/circt CIRCT (Circuit IR Compilers and Tools) is an LLVM/MLIR-based infrastructure project for building hardware design compilers and tools. It pr… | 95 | 2267 | active |
| matz/spinel Spinel is an ahead-of-time compiler that translates Ruby source code into standalone native executables via whole-program type inference an… | 70 | 2265 | active |
| Storyyeller/Krakatau Krakatau is a Rust-based CLI tool for assembling, disassembling, and decompiling Java bytecode. It is specifically designed to handle obfus… | 75 | 2257 | active |
| BOOM BOOM (Berkeley Out-of-Order Machine) is a synthesizable, parameterizable open-source RV64GC RISC-V processor core written in the Chisel har… | 67 | 2256 | active |
| neurobin/shc shc is a generic shell script compiler that converts shell scripts (bash, sh, zsh, ksh, etc.) into C source code, which is then compiled in… | 23 | 2251 | stable |
| AbsInt/CompCert CompCert is a formally verified C compiler whose correctness is machine-checked with the Coq proof assistant, guaranteeing generated assemb… | 85 | 2238 | active |
| Sergio0694/PolySharp PolySharp is a Roslyn source generator that emits source-only polyfill types (nullability attributes, Index/Range, records support types, e… | 70 | 2232 | active |
| aemkei/jsfuck JSFuck is an esoteric JavaScript library that encodes and executes arbitrary JavaScript using only six characters: []()!+. It works both in… | 33 | 8604 | maintenance |
| Stephane-D/SGDK SGDK is a free, open-source development kit for writing Sega Mega Drive / Genesis software in C (with optional 68000 assembly). It bundles … | 77 | 2201 | active |
| Shaderc Shaderc is a collection of tools, libraries, and tests for compiling GLSL and HLSL shaders to SPIR-V for Vulkan. It includes glslc, a GCC/C… | 76 | 2192 | stable |
| elliotchance/c2go c2go is a command-line transpiler that converts C source code into Go source code using the clang AST. It aims to be a repeatable, predicta… | 63 | 2186 | active |
| hls4ml hls4ml is a Python package that converts machine learning models from Keras, PyTorch, and ONNX into high-level synthesis (C++) code for FPG… | 80 | 2185 | active |
| ryanmjacobs/c A small shell script that compiles and executes C (and C++) files in a single command, supporting shebang-style executable C scripts. It wo… | 57 | 2184 | active |
| 6over3/bebop Bebop is a high-performance, typesafe binary serialization format with a schema language and code generator (bebopc) that produces optimize… | 61 | 2179 | active |
| rust-lang/cc-rs cc-rs is a Rust library for Cargo build scripts that compiles C/C++/assembly/CUDA source files into a static archive to link into Rust crat… | 95 | 2161 | stable |
| sbcl/sbcl Steel Bank Common Lisp (SBCL) is a high-performance open-source compiler and runtime system for ANSI Common Lisp. It includes an interactiv… | 99 | 2159 | stable |
| NVIDIA/cutile-python cuTile Python is a tile-based programming language and library from NVIDIA for writing parallel kernels that run on NVIDIA GPUs, compiling … | 62 | 2151 | active |
| EvgSkv/logica Logica is an open-source declarative logic programming language in the Datalog family that compiles to SQL. It lets users write logic-style… | 77 | 2147 | active |
| serge-sans-paille/pythran Pythran is an ahead-of-time compiler that translates a subset of Python, focused on scientific computing with NumPy, into fast native C++ e… | 75 | 2144 | active |
| rust-lang/rustc_codegen_cranelift An alternative codegen backend for the Rust compiler (rustc) built on the Cranelift code generator. It aims to significantly speed up debug… | 84 | 2141 | active |
| eleme/morjs MorJS is an extensible multi-platform development framework from Ele.me based on mini-program DSLs (WeChat or Alipay). It compiles a single… | 41 | 2115 | active |
| vtereshkov/umka-lang Umka is a statically typed, embeddable scripting language implemented in C99, with a bytecode compiler and virtual machine distributed as a… | 88 | 2110 | active |
| google/traceur-compiler Traceur is a JavaScript.next-to-JavaScript-of-today compiler that transpiles ES6 and experimental ES.next features into JavaScript that run… | 10 | 8125 | maintenance |
| Amaranth HDL Amaranth is a Python-based hardware definition language and toolchain for designing synchronous digital logic, including a standard library… | 91 | 2102 | active |
| usbarmory/tamago TamaGo is a framework that enables compilation and execution of Go applications directly on bare metal processors, without any underlying o… | 96 | 2060 | active |
| wdanilo/crabtime Crabtime is a Rust crate providing a powerful macro that generates code by evaluating inline Rust logic at compile time. It enables metapro… | 46 | 2055 | active |
| chapel-lang/chapel Chapel is a modern open-source programming language designed for productive parallel computing at scale, with first-class support for task … | 90 | 2047 | active |
| SpinalHDL SpinalHDL is an open-source Scala-based hardware description language (HDL) library for describing digital hardware at the register-transfe… | 87 | 2045 | active |
| endrazine/wcc The Witchcraft Compiler Collection (WCC) is a set of compilation tools for performing binary manipulation on ELF executables across POSIX p… | 84 | 2014 | active |
| Closure Compiler Google Closure Compiler is a JavaScript-to-JavaScript compiler that parses, analyzes, and optimizes code by removing dead code, rewriting, … | 77 | 7693 | maintenance |
| vue-macros/vue-macros Vue Macros is a collection of compile-time macros and syntax sugar extensions for Vue, implemented as unplugin-based bundler plugins. It su… | 90 | 1985 | active |
| alibaba/compileflow CompileFlow is a high-performance, lightweight process orchestration engine from Alibaba that compiles BPMN 2.0 and TBBPM process definitio… | 66 | 1985 | active |
| swc-project/swc-node swc-node is a set of packages providing fast TypeScript/JavaScript transformation and execution on Node.js using the SWC compiler, without … | 83 | 1982 | active |
| Hermit Hermit is a lightweight unikernel written entirely in Rust, targeting scalable and predictable runtimes for high-performance and cloud comp… | 83 | 1970 | active |
| linkedin/dexmaker Dexmaker is a Java API for compile-time or runtime code generation targeting Android's Dalvik VM, producing .dex files instead of .class fi… | 64 | 1967 | stable |
| DanielXMoore/Civet Civet is a programming language that is a superset of TypeScript, compiling to TypeScript or JavaScript with concise syntax like indentatio… | 77 | 1959 | active |
| trynova/nova Nova is a JavaScript (ECMAScript) engine written in Rust, focused on being lightweight, modular, and easy to embed, with a data-oriented de… | 65 | 1952 | active |
| AdaptiveCpp/AdaptiveCpp AdaptiveCpp (formerly hipSYCL/Open SYCL) is an independent, community-driven C++ compiler platform for heterogeneous programming models inc… | 72 | 1951 | active |
| crazywhalecc/static-php-cli StaticPHP (formerly static-php-cli) is a tool for compiling standalone, dependency-free PHP binaries with popular extensions included on Li… | 90 | 1946 | active |
| FPGAwars/icestudio Icestudio is a visual editor for designing digital circuits for open-source FPGA boards using a drag-and-drop block interface, with optiona… | 92 | 1943 | active |
| llvm/torch-mlir Torch-MLIR is a compiler project providing first-class translation of PyTorch programs into the MLIR compiler ecosystem. It lets hardware v… | 99 | 1935 | active |
| fusionlanguage/fut Fusion is a programming language designed for writing reusable library components in a single codebase that transpiles to C, C++, C#, D, Ja… | 94 | 1932 | active |
| creusot-rs/creusot Creusot is a deductive verifier for Rust that proves code is free of panics, overflows, and assertion failures, and—with Pearlite contracts… | 95 | 1916 | active |
| MadAppGang/dingo Dingo is a meta-language for Go that adds Result types, error propagation with ?, pattern matching, sum types, tuples, and safe navigation,… | 67 | 1916 | active |
| starkware-libs/cairo Cairo is a Turing-complete programming language for writing provable programs, implemented as a compiler toolchain written in Rust. It comp… | 98 | 1907 | active |
| Raku (Rakudo) Rakudo is the primary, production-ready compiler implementation of the Raku programming language, targeting the MoarVM, JVM, and JavaScript… | 98 | 1906 | stable |
| kentcdodds/mdx-bundler mdx-bundler is a JavaScript library that compiles and bundles MDX strings together with their imported TS/JS dependencies using MDX v3 and … | 67 | 1900 | stable |
| codenameone/CodenameOne Codename One is an open-source framework that compiles a single Java (or Kotlin) codebase into native applications for iOS, Android, deskto… | 95 | 1884 | active |
| ZoKrates ZoKrates is a toolbox for zkSNARKs on Ethereum, providing a high-level domain-specific language for writing verifiable off-chain programs a… | 23 | 1872 | active |
| dart-lang/dart-pad DartPad is a free, open-source online editor for writing, compiling, and running Dart and Flutter code directly in the browser. It includes… | 77 | 1867 | active |
| DosX-dev/obfus.h A macro-only C header library that obfuscates code at compile time, designed for the Tiny C Compiler on Windows x86/x64. It provides contro… | 70 | 1867 | active |
| lifting-bits/remill Remill is a C++ library that statically translates machine code instructions (x86, amd64, AArch64, SPARC32/64) into LLVM bitcode. It is des… | 78 | 1866 | active |
| factor/factor Factor is a concatenative, stack-based programming language with dynamic types, extensible syntax, macros, and garbage collection. It ships… | 88 | 1863 | active |
| xorvoid/sectorc SectorC is a C compiler written in x86-16 assembly that fits entirely within a 512-byte x86 boot sector. It supports a small but usable sub… | 56 | 1862 | active |
| ng-packagr/ng-packagr ng-packagr is a build tool that compiles and packages Angular libraries into the Angular Package Format (APF), producing distribution-ready… | 94 | 1858 | active |
| egraphs-good/egg egg is a Rust library implementing e-graphs and equality saturation, providing a fast and flexible data structure for compactly representin… | 76 | 1842 | active |
| google/protobuf-gradle-plugin A Gradle plugin from Google that compiles Protocol Buffer (.proto) definition files by invoking protoc and wiring the generated Java/Kotlin… | 78 | 1833 | active |
| m-ab-s/media-autobuild_suite A Windows batch/powershell script suite that sets up a MinGW-w64 (MSYS2) compiler environment and automatically builds FFmpeg and related m… | 77 | 1832 | active |
| Vexu/arocc Aro is a modern C compiler written in Zig that aims for fast compilation, low memory usage, and high-quality diagnostics, with support for … | 76 | 1832 | active |
| lhartikk/ArnoldC ArnoldC is an esoteric programming language whose keywords are Arnold Schwarzenegger movie one-liners, implemented in Scala. It ships as a … | 32 | 6888 | maintenance |
| Icecream Icecream is a distributed compiler system, created by SUSE and based on distcc, that spreads C/C++ compile jobs across remote machines for … | 51 | 1827 | stable |
| shinchiro/mpv-winbuild-cmake A CMake-based MinGW-w64 cross-compilation toolchain primarily used to build Windows binaries of the mpv media player. It automates building… | 95 | 1820 | active |
| vgvassilev/cling Cling is an interactive C++ interpreter built on top of Clang and LLVM, implementing a read-eval-print loop (REPL) for rapid C++ developmen… | 70 | 1810 | active |
| pypy/pypy PyPy is a fast, compliant alternative implementation of the Python programming language built on the RPython compiler framework. It feature… | 70 | 1800 | stable |
| bytecodealliance/wasm-tools A Bytecode Alliance project providing a CLI and Rust libraries for low-level manipulation of WebAssembly modules. It supports validation, p… | 94 | 1799 | active |
| oreboot/oreboot oreboot is a downstream fork of coreboot rewritten mostly in Rust (with assembly where needed), serving as a firmware/bootloader for variou… | 70 | 1797 | active |
| MScholtes/PS2EXE PS2EXE is a PowerShell module that compiles PowerShell 5.x scripts into standalone Windows executables, with optional GUI (Windows Forms) o… | 67 | 1785 | active |
| standardese/cppast cppast is a C++ library providing a high-level interface to the C++ abstract syntax tree, built on top of libclang with workarounds for its… | 57 | 1784 | active |
| coalton-lang/coalton Coalton is a statically typed functional programming language embedded in Common Lisp, drawing ideas from Haskell, Scheme, and OCaml. It co… | 92 | 1779 | active |
| andrivet/ADVobfuscator ADVobfuscator is a C++20 header-only library that obfuscates and encrypts strings and data blocks at compile time using metaprogramming, wi… | 88 | 1779 | active |
| JesusFreke/smali smali/baksmali is an assembler and disassembler for the dex bytecode format used by Android's Dalvik VM. It converts dex files to human-rea… | 10 | 6625 | maintenance |
| wa-lang/wa Wa (凹) is a general-purpose, statically typed programming language designed for WebAssembly, with a fully self-developed compiler and runti… | 71 | 1770 | active |
| tgrysztar/fasm flat assembler (fasm) is a fast self-assembling assembler for x86 and x86-64 that generates executable files directly. This repository hold… | 60 | 1766 | stable |
| OSS CAD Suite nextpnr is a vendor-neutral, timing-driven, open-source FPGA place and route tool written in C++. It supports multiple FPGA architectures i… | 87 | 1765 | active |
| Sketchware Pro Sketchware Pro is a free, open-source Android app builder that lets users create native Android applications entirely from their smartphone… | 68 | 1763 | active |
| ILGPU ILGPU is a just-in-time compiler for high-performance GPU programs (kernels) written in .NET languages like C# and F#, entirely in C# with … | 71 | 1762 | active |
| GraalVM GraalVM CE builds is the official distribution repository of GraalVM Community Edition binaries built on OpenJDK. GraalVM is a high-perform… | 93 | 1755 | active |
| Zaneham/Booth Booth is an open-source compiler that takes CUDA C, HIP, or Triton kernel source and emits binaries for AMD RDNA 2/3/4 GPUs, NVIDIA PTX, Te… | 79 | 1750 | active |
| LuxLang/lux Lux is a functional, statically-typed Lisp programming language with a compiler that targets the JVM, JavaScript, Python, Lua, and Ruby. It… | 70 | 1748 | active |
| OSS CAD Suite OSS CAD Suite is a multi-platform binary distribution of open-source digital logic design and verification tools, including Yosys, GHDL, AB… | 94 | 1745 | active |