Open-source programming-languages software
1852 open-source libraries, tools and applications tagged programming-languages, ranked by how closely programming-languages 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.
1852 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| typetools/checker-framework The Checker Framework is a framework for pluggable type-checking in Java, enhancing Java's type system to detect and prevent bugs like null… | 98 | 1151 | stable |
| B-Lang-org/bsc The Bluespec Compiler (BSC) is a compiler, simulator, and toolchain for the Bluespec Hardware Description Language, supporting both Bluespe… | 86 | 1144 | active |
| hpyproject/hpy HPy is a new C API and ABI specification for extending Python that is implementation-agnostic, working across CPython, PyPy, and GraalPy. I… | 65 | 1142 | active |
| noib3/nvim-oxi nvim-oxi is a Rust crate providing safe, idiomatic, fully typed bindings to the Neovim editor's API via FFI rather than RPC. It is aimed pr… | 66 | 1138 | active |
| fsbolero/Bolero Bolero is a set of F# libraries and tools for building web applications on top of Blazor, running in WebAssembly or server-side via SignalR… | 94 | 1136 | active |
| google/crubit Crubit is a bidirectional bindings generator that automatically creates FFI bindings between C++ and Rust, enabling code in either language… | 77 | 1134 | active |
| com-lihaoyi/fastparse FastParse is a Scala parser-combinator library for parsing strings and bytes into structured data, with hand-written-parser-level speed and… | 63 | 1134 | stable |
| ocsigen/js_of_ocaml Js_of_ocaml is a compiler that translates OCaml bytecode to JavaScript, allowing pure OCaml programs to run in browsers and Node.js. It wor… | 92 | 1133 | active |
| pechorin/any-jump.vim A Vim/Neovim plugin that provides IDE-like code navigation, letting users jump to definitions and references of symbols under the cursor. I… | 53 | 1132 | active |
| brownplt/pyret-lang Pyret is an educational programming language that blends scripting, functional, and object-oriented styles, designed primarily for teaching… | 76 | 1130 | active |
| godotjs/javascript GodotJS is a Godot engine module that adds JavaScript and TypeScript language bindings using the QuickJS engine. It exposes the full Godot … | 23 | 1129 | active |
| lewissbaker/cppcoro CppCoro is a C++ library providing general-purpose coroutine abstractions built on the Coroutines TS, including task and generator types, a… | 32 | 3888 | maintenance |
| getify/monio Monio is a JavaScript library providing an async-capable IO monad (including 'do' style) along with companion monads like Maybe, Either, an… | 65 | 1125 | active |
| BurntSushi/bstr bstr is a Rust crate providing a byte string type and extension traits for &[u8] and Vec<u8> that are not required to be valid UTF-8. It of… | 72 | 1123 | stable |
| spatie/regex A PHP library providing a clean, object-oriented wrapper around PHP's built-in preg_* regex functions. It eliminates awkward patterns like … | 48 | 1122 | stable |
| leetcode-cli A Node.js command-line tool for interacting with LeetCode, letting users browse, download, test, and submit solutions to problems directly … | 51 | 3873 | maintenance |
| saecki/crates.nvim A Neovim plugin written in Lua that helps manage crates.io dependencies in Rust projects' Cargo.toml files. It provides completion, version… | 72 | 1121 | active |
| pointlander/peg Peg is a Packrat parser generator for Parsing Expression Grammars (PEG), written in Go. It compiles .peg grammar files into Go source code … | 66 | 1119 | active |
| freebasic/fbc FreeBASIC (fbc) is a free, open-source, self-hosting multi-platform BASIC compiler with syntax similar to MS-QuickBASIC, adding modern feat… | 53 | 1117 | active |
| ezylang/EvalEx EvalEx is a Java library for parsing and evaluating mathematical, boolean, string, date-time, array, and structure expressions. It uses Big… | 89 | 1116 | stable |
| Reflex FRP Reflex is a Haskell library providing a fully-deterministic, higher-order Functional Reactive Programming (FRP) interface with an efficient… | 73 | 1116 | active |
| taoensso/nippy Nippy is a fast, mature serialization library for Clojure, serving as a high-performance drop-in alternative to the Clojure reader for free… | 90 | 1112 | stable |
| Kotlin/kotlinx-atomicfu AtomicFU is a Kotlin multiplatform library and compiler plugin providing idiomatic, efficient atomic operations and locks across JVM, Nativ… | 87 | 1112 | active |
| facebook/regenerator Regenerator is a source transformer that compiles ECMAScript 2015 generator functions (yield) and async iteration syntax down to efficient … | 10 | 3821 | maintenance |
| benjamin-hodgson/Pidgin Pidgin is a lightweight, fast parser combinator library for C# and .NET. It lets developers declaratively build parsers for text or binary … | 64 | 1108 | active |
| picoruby/picoruby PicoRuby is a compact alternative implementation of the Ruby language (based on mruby and mruby/c VMs) designed to run on one-chip microcon… | 95 | 1107 | active |
| josharian/impl impl is a Go command-line tool that generates method stubs for implementing an interface, given a receiver and an interface name or package… | 54 | 1107 | stable |
| AnswerDotAI/fastcore fastcore is a Python utility library that extends the language with features inspired by Ruby, Haskell, and NumPy, including an enhanced li… | 94 | 1106 | active |
| KirillOsenkov/RoslynQuoter RoslynQuoter is a C# tool that takes C# source code and generates the Roslyn SyntaxFactory API calls needed to construct its syntax tree. I… | 39 | 1106 | active |
| just-js/just Just is a very small JavaScript runtime for Linux built directly on V8 and system calls, designed for writing system software with near-nat… | 23 | 3804 | maintenance |
| aliyun/darabonba Darabonba is a domain-specific language (DSL) for describing OpenAPI-based interfaces, maintained by Alibaba Cloud. It compiles a single in… | 65 | 1104 | active |
| wartremover/wartremover WartRemover is a flexible Scala code linting tool implemented as a compiler plugin, with an sbt plugin for easy integration. It flags unsaf… | 66 | 1102 | active |
| php/web-php The source code repository for the official www.php.net website, including news, events, the PHP manual in multiple languages, and user-con… | 75 | 1101 | active |
| vtsls vtsls is a Language Server Protocol wrapper around the TypeScript language features extension bundled with VSCode, exposing its full featur… | 84 | 1099 | active |
| 3F/DllExport A .NET library and MSBuild tooling that lets C#/.NET assemblies export functions as unmanaged native exports (DllExport attribute), includi… | 33 | 1098 | active |
| r-wasm/webr WebR is the R statistical programming language compiled to WebAssembly via Emscripten, allowing R code to run directly in web browsers and … | 83 | 1096 | active |
| imageworks/pystring Pystring is a collection of C++ functions that replicate the interface and behavior of Python's string class methods using std::string, wit… | 80 | 1094 | stable |
| FascinatedBox/lily Lily is a statically-typed, interpreted programming language focused on expressiveness and type safety, implemented in C. It is designed to… | 77 | 1094 | active |
| flow-typed/flow-typed A central repository of high-quality third-party Flow library type definitions (libdefs), plus a CLI tool to install and manage them in Flo… | 76 | 3758 | maintenance |
| reinderien/mimic A Python CLI tool that substitutes common ASCII characters in text or source code with visually identical Unicode homoglyphs. It is a novel… | 32 | 3748 | maintenance |
| Unreal.js Unreal.js is an Unreal Engine plugin that embeds a V8-powered JavaScript runtime, giving scripts full access to the Unreal Engine API with … | 23 | 3746 | maintenance |
| gnolang/gno Gno is an interpreted, fully deterministic variant of Go with a stack-based virtual machine (GnoVM) for writing succinct, composable smart … | 99 | 1090 | active |
| MLton/mlton MLton is a whole-program optimizing compiler for the Standard ML (SML97) programming language that generates small, fast standalone executa… | 66 | 1090 | active |
| hirrolot/metalang99 Metalang99 is a header-only C99 preprocessor metaprogramming library that implements a functional programming language atop of C preprocess… | 51 | 1090 | active |
| Kotlin/kotlin-agent-skills A collection of AI agent skills for Kotlin projects, packaged as self-contained folders following the Agent Skills standard (agentskills.io… | 59 | 1089 | active |
| dkorunic/betteralign betteralign is a Go static analysis tool that detects structs whose fields could be reordered to reduce memory usage, and can optionally re… | 98 | 1087 | active |
| mmastrac/linktime A set of Rust crates providing link-time initialization, destruction, and scattered data collection macros (ctor, dtor, link-section, scatt… | 94 | 1087 | active |
| drathier/stack-overflow-import A Python import hook that fetches code from Stack Overflow search results and imports it as modules, e.g. `from stackoverflow import quick_… | 32 | 3727 | maintenance |
| adam-mcdaniel/dune Dune is a Unix shell and scripting language written in Rust, combining bash-style shell operations (piping, redirection) with Lisp-inspired… | 31 | 1085 | active |
| KyleBanks/depth depth is a command-line tool (also usable as a Go library) that retrieves and visualizes the dependency tree of Go packages. It resolves im… | 23 | 1085 | stable |
| jonase/eastwood Eastwood is a lint tool for JVM Clojure that inspects namespaces and reports possible bugs. It uses tools.analyzer.jvm for compiler-accurat… | 32 | 1083 | active |
| nevalang/neva Neva is a statically typed, compiled dataflow programming language where programs are expressed as message-passing graphs that run in paral… | 92 | 1082 | active |
| stefanmaric/g g is a simple, portable Go version manager implemented as a single POSIX shell script. It installs official prebuilt Go archives without sh… | 82 | 1082 | active |
| Frege Frege is a purely functional programming language for the JVM that is essentially Haskell, featuring a strong static type system with globa… | 60 | 3712 | maintenance |
| JuliaPy/PythonCall.jl PythonCall.jl is a Julia library providing a symmetric interface for calling Python code from Julia and Julia code from Python (via the Jul… | 99 | 1080 | active |
| GRIN Compiler GRIN (Graph Reduction Intermediate Notation) is a compiler back-end and optimizer for lazy and strict functional languages, providing whole… | 31 | 1080 | active |
| hnes/libaco libaco is a blazing fast, lightweight C asymmetric coroutine library supporting the Sys V ABI on Intel386 and x86-64. It offers standalone … | 23 | 3704 | maintenance |
| BQN BQN is a modern APL-derived array programming language with infix notation, built-in multidimensional array operations, and first-class fun… | 73 | 1078 | active |
| tristanisham/zvm zvm (Zig Version Manager) is a single-binary CLI tool for installing, upgrading, and switching between multiple versions of the Zig program… | 97 | 1077 | active |
| Mercury-Language/mercury The Mercury logic/functional programming language system, including a self-hosting compiler with multiple backends targeting C, C#, and Jav… | 77 | 1076 | active |
| fortran-lang/fpm Fortran Package Manager (fpm) is a package manager and build system for Fortran, with a user interface modeled after Rust's Cargo. It simpl… | 75 | 1076 | active |
| ByteLegend/ByteLegend ByteLegend is a free, open-source multiplayer online RPG game where players learn real-world programming skills, primarily Java, by complet… | 32 | 3688 | maintenance |
| IronPython IronPython is an open-source implementation of the Python programming language built on the .NET Dynamic Language Runtime, targeting Python… | 51 | 1074 | active |
| polysemy-research/polysemy Polysemy is a Haskell library for building higher-order, low-boilerplate effect systems (extensible effects), letting you write domain-spec… | 24 | 1074 | stable |
| tweag/ormolu Ormolu is a formatter for Haskell source code that uses GHC's own parser and enforces a single, unconfigurable formatting style with minima… | 84 | 1073 | active |
| rocks.nvim rocks.nvim is a Neovim plugin manager inspired by Rust's Cargo, built on top of LuaRocks. It lets users declare plugins in a rocks.toml fil… | 96 | 1072 | active |
| Lokathor/bytemuck A Rust library for safely bit-casting (transmuting) between plain data types and byte slices, with traits like Pod, NoUninit, and AnyBitPat… | 75 | 1070 | stable |
| swiftlang/vscode-swift The official Visual Studio Code extension providing Swift language support, powered by SourceKit LSP for code intelligence and LLDB DAP for… | 95 | 1069 | active |
| berry-lang/berry Berry is an ultra-lightweight dynamically typed embedded scripting language written in ANSI C99, designed for low-performance embedded devi… | 66 | 1069 | active |
| zk/clojuredocs The web application powering clojuredocs.org, a community-powered documentation and examples site for the Clojure programming language. It … | 32 | 1067 | active |
| hlorenzi/customasm customasm is an assembler written in Rust that lets users define their own custom instruction sets and assemble source files into machine c… | 90 | 1065 | active |
| r-lib/actions A collection of reusable GitHub Actions for R projects, providing setup of R, dependencies, renv, pandoc, and TinyTeX, plus running R CMD c… | 66 | 1065 | active |
| yhirose/cpp-peglib A single-file, header-only C++17 library for Parsing Expression Grammars (PEG) with packrat parsing, left recursion support, and AST genera… | 100 | 1064 | active |
| Manishearth/rust-gc rust-gc is a simple tracing (mark and sweep) garbage collector library for Rust, providing a Gc smart pointer similar to Rc but with cycle … | 57 | 1064 | active |
| E-xyza/zigler Zigler is an Elixir (and experimental Erlang) library that makes it easy to write Zig-based NIFs (Native Implemented Functions) for the BEA… | 78 | 1063 | active |
| jserv/amacc AMaCC is a small, from-scratch C compiler targeting 32-bit Arm (armv7hf) that can execute code via a JIT compiler or generate ELF executabl… | 44 | 1062 | active |
| avdi/naught Naught is a Ruby toolkit for building Null Object classes, supporting variations like nil-returning objects and infinitely chainable 'black… | 70 | 1059 | stable |
| secure-software-engineering/phasar PhASAR is a LLVM-based static analysis framework written in C++20 that solves user-specified data-flow problems automatically on LLVM IR. I… | 77 | 1058 | active |
| hmans/miniplex Miniplex is a developer-friendly entity management system implementing the ECS (Entity Component System) architecture for games and other d… | 53 | 1058 | active |
| i-net-software/JWebAssembly JWebAssembly is a Java bytecode to WebAssembly compiler that takes Java class files as input and generates .wasm binary or .wat text output… | 66 | 1056 | active |
| phenomnomnominal/tsquery TSQuery is a TypeScript library that ports the ESQuery API to TypeScript, letting you query a TypeScript AST using CSS-style selectors. It … | 62 | 1056 | active |
| albertodemichelis/squirrel Squirrel is a high-level imperative, object-oriented scripting language implemented in C++, designed to be lightweight enough to embed in a… | 50 | 1055 | stable |
| getditto/safer_ffi safer_ffi is a Rust framework for writing foreign function interfaces without polluting code with unsafe blocks. It provides attribute macr… | 55 | 1054 | active |
| zxh0/jvm.go jvm.go is a toy Java Virtual Machine implemented in Go, focused on code readability as a learning project for both Go and the JVM. It imple… | 32 | 3598 | maintenance |
| coala coala is a unified command-line interface for linting and automatically fixing code across many programming languages, driven by a single c… | 23 | 3597 | maintenance |
| pointfreeco/swift-case-paths CasePaths is a Swift library that extends the key path hierarchy to enum cases, enabling generic inspection and modification of enum case d… | 91 | 1053 | stable |
| janpfeifer/gonb GoNB is a Jupyter notebook kernel for the Go programming language that compiles each cell with the standard Go compiler. It supports auto-c… | 84 | 1051 | active |
| overmighty/i-use-arch-btw An esoteric, Turing-complete programming language based on Brainfuck where commands are the keywords 'i', 'use', 'arch', 'linux', 'btw', et… | 23 | 1050 | active |
| php-build/php-build php-build is a shell utility that compiles PHP versions from source so multiple versions can be installed and used side by side. It works s… | 75 | 1048 | active |
| ChucK ChucK is an open-source, strongly-timed programming language for real-time sound synthesis and music creation, with a unique time-based con… | 70 | 1048 | active |
| tomhrr/dale Dale is a system-level programming language with Lisp-style S-expression syntax that compiles via LLVM, similar to C but with macros, type … | 27 | 1048 | active |
| veryl-lang/veryl Veryl is a modern hardware description language based on SystemVerilog, with a Rust-implemented compiler that transpiles Veryl source into … | 99 | 1046 | active |
| HVML/PurC PurC is the prime interpreter for HVML, a programmable markup (descriptive) programming language, implemented in C/C++. It is distributed b… | 60 | 1044 | active |
| smartprocure/futil-js Futil is a collection of functional programming utilities for JavaScript, designed to complement lodash/fp with generic helpers that lodash… | 32 | 1044 | stable |
| isaacs/tshy tshy (TypeScript HYbridizer) is a build tool that compiles TypeScript packages into both ESM and CommonJS output using tsc, and automatical… | 64 | 1043 | active |
| kunal12203/GrapeRoot GrapeRoot is an open-source context engine and MCP server that builds a semantic graph of a codebase (files, symbols, imports, call chains)… | 68 | 1041 | active |
| nuno-faria/tetris-sql A complete implementation of Tetris running inside a single PostgreSQL SQL query, exploiting the Turing completeness of recursive CTEs. A s… | 41 | 1040 | active |
| uber-go/gopatch gopatch is a command-line tool for matching and transforming Go source code using patch files that understand Go syntax. It operates like t… | 23 | 1040 | active |
| bitjson/typescript-starter An interactive CLI project generator that scaffolds new TypeScript libraries or Node.js projects with preconfigured tooling. It sets up tes… | 32 | 3541 | maintenance |
| eclipse-langium/langium Eclipse Langium is a TypeScript framework for building programming languages and domain-specific languages with built-in Language Server Pr… | 94 | 1039 | active |