The DevEx Lab

Every tool as an element, scaled to fill your screen. Hover a tile for its formula; pick a family to zoom in.

How to read a tile

The grid resizes to fill your window, so on a small window each tile shows less. Top left is the element number, top right the license (OS open source, Fr free, Fm free tier, Pd paid). The big letters are the symbol, the bar at the bottom is the ring. The formula in each tooltip is its two Compass scores: Dx ergonomics and Pa parity, in tens.

The same tools as a table
ToolFamilyCategoryRingLicenseErgonomicsParity
npm The package manager bundled with Node.js Package & build Package managers Adopt Open source 50 10
pnpm Fast, disk-efficient Node package manager Package & build Package managers Adopt Open source 70 20
Yarn Node package manager with workspaces and Plug'n'Play Package & build Package managers Adopt Open source 40 20
Bun JavaScript runtime, package manager and bundler in one Package & build Package managers Adopt Open source 70 10
Deno JavaScript and TypeScript runtime with built-in tooling Package & build Package managers Adopt Open source 70 10
uv Fast Python package and project manager Package & build Package managers Trial Open source 80 10
pip The standard Python package installer Package & build Package managers Adopt Open source 50 0
Poetry Python dependency management and packaging Package & build Package managers Adopt Open source 40 10
PDM Standards-based Python package and project manager Package & build Package managers Adopt Open source 50 10
Hatch Python project manager with environments and builds Package & build Package managers Adopt Open source 40 0
Pipenv Python virtualenv and Pipfile.lock manager Package & build Package managers Adopt Open source 40 10
Rye Experimental Python project manager, superseded by uv Package & build Package managers Hold Open source 50 10
Conda Cross-language package and environment manager Package & build Package managers Adopt Open source 30 10
Pixi Fast conda and PyPI project manager with lockfiles Package & build Package managers Trial Open source 70 10
Cargo Rust's package manager and build tool Package & build Package managers Adopt Open source 70 20
Go modules Go's built-in dependency management Package & build Package managers Adopt Open source 90 20
Maven Convention-based Java build and dependency tool Package & build Package managers Adopt Open source 30 20
Gradle Build automation and dependency tool for the JVM Package & build Package managers Adopt Open source 40 20
Composer Dependency manager for PHP Package & build Package managers Adopt Open source 60 10
Bundler Gem dependency manager for Ruby Package & build Package managers Adopt Open source 60 10
NuGet Package manager for .NET Package & build Package managers Adopt Open source 40 20
Homebrew Package manager for macOS and Linux Package & build Package managers Adopt Open source 40 0
Swift Package Manager Swift's built-in package and build manager Package & build Package managers Adopt Open source 40 10
mise Polyglot tool versions, env vars and tasks Package & build Version managers Adopt Open source 80 20
asdf Plugin-based version manager for many runtimes Package & build Version managers Trial Open source 30 10
nvm Shell script to manage Node.js versions Package & build Version managers Adopt Open source 30 0
fnm Fast Node.js version manager written in Rust Package & build Version managers Adopt Open source 50 0
Volta JavaScript tool manager pinned via package.json Package & build Version managers Hold Open source 50 10
pyenv Install and switch between Python versions Package & build Version managers Adopt Open source 30 0
rbenv Lightweight Ruby version manager Package & build Version managers Adopt Open source 30 0
rustup The Rust toolchain installer Package & build Version managers Adopt Open source 60 10
SDKMAN! Manage parallel JDK and JVM tool versions Package & build Version managers Adopt Open source 40 10
proto Pluggable multi-language version manager Package & build Version managers Trial Open source 50 10
Vite Frontend dev server and build tool Package & build Build tools Adopt Open source 80 10
esbuild Extremely fast JavaScript bundler and minifier Package & build Build tools Trial Open source 70 10
Rspack Rust bundler compatible with the webpack API Package & build Build tools Adopt Open source 50 20
Rolldown Rust bundler with a Rollup-compatible API Package & build Build tools Adopt Open source 60 10
Turbopack Incremental Rust bundler built into Next.js Package & build Build tools Adopt Open source 60 10
webpack Configurable module bundler for JavaScript Package & build Build tools Adopt Open source 30 20
Rollup ES module bundler for libraries Package & build Build tools Adopt Open source 40 10
Parcel Zero-configuration web application bundler Package & build Build tools Adopt Open source 60 10
SWC Rust compiler for JavaScript and TypeScript Package & build Build tools Adopt Open source 50 10
tsdown Library bundler for TypeScript, powered by Rolldown Package & build Build tools Trial Open source 70 10
Bazel Hermetic, multi-language build system from Google Package & build Build tools Adopt Open source 30 30
Buck2 Meta's fast multi-language build system Package & build Build tools Trial Open source 20 20
Pants Monorepo build system for Python, Go, JVM and more Package & build Build tools Adopt Open source 30 30
Earthly Containerized builds from Dockerfile-like Earthfiles Package & build Build tools Hold Open source 30 20
Dagger Programmable CI/CD pipelines that run in containers Package & build Build tools Trial Open source 40 50
Make The classic dependency-based build and task tool Package & build Task runners Hold Open source 20 0
Just A command runner with make-like recipes Package & build Task runners Adopt Open source 70 0
Task YAML-based task runner and build tool in Go Package & build Task runners Adopt Open source 60 0