필사 모드: Open Source Worth Watching Right Now (2) Build Tools, Editors, CLIs, and Terminals
English- Introduction — once the waiting disappeared, habits changed
- Snapshot
- Runtimes and package management
- Linters and builds
- Editors
- Terminals and CLIs
- Before you adopt
- Links
Introduction — once the waiting disappeared, habits changed
The change that happened in developer tooling over the past few years was not added features but speed. Work that gets repeated dozens of times a day, such as installing dependencies, linting, and bundling, was rewritten in native languages, and the waiting shrank sharply.
This is not a matter of simple convenience. If a lint run takes 3 seconds you run it once before committing, but at 30 milliseconds you run it every time you save. When a tool gets faster, how often you use it changes, and when the frequency changes, the workflow changes.
What follows is not a ranking but a map grouped by role.
Snapshot
| Project | License (as declared by the repo) | Stars | Last push |
|---|---|---|---|
oven-sh/bun | MIT (statically links an LGPL-2 library) | 95,389 | 2026-08-12 |
astral-sh/uv | Apache-2.0 | 88,667 | 2026-08-12 |
zed-industries/zed | GPL-3.0 and Apache side by side | 88,472 | 2026-08-12 |
vitejs/vite | MIT | 82,322 | 2026-08-12 |
jesseduffield/lazygit | MIT | 81,252 | 2026-08-12 |
ghostty-org/ghostty | MIT | 59,539 | 2026-08-12 |
astral-sh/ruff | MIT | 49,163 | 2026-08-12 |
helix-editor/helix | MPL-2.0 | 45,802 | 2026-08-11 |
zellij-org/zellij | MIT | 34,853 | 2026-08-12 |
atuinsh/atuin | MIT | 31,123 | 2026-08-12 |
biomejs/biome | Apache-2.0 | 25,549 | 2026-08-12 |
oxc-project/oxc | MIT | 22,281 | 2026-08-12 |
All figures as of 2026-08-12.
Runtimes and package management
oven-sh/bun put a runtime, a package manager, a bundler, and a test runner into a single executable. It is an attempt to replace with one thing the place where you used to combine several tools. Node compatibility has widened but it is not complete, so if you plan to move an existing service across, start by actually running your dependencies on it.
astral-sh/uv does the same job on the Python side. It ties together virtual environment creation, dependency resolution, lock files, and even interpreter installation, and the difference in perceived speed is large. That said, in environments with unusual paths, such as scientific computing packages that need a source build or an internal private index, you still run into exceptions. Moving CI across first and changing local machines later is the safe order.
# Example: from project initialization through to running it
uv init myproj && cd myproj
uv add httpx
uv run python -c "import httpx; print(httpx.__version__)"
Linters and builds
astral-sh/ruff gathers into one binary the rules that several separate Python linters used to divide up, and it includes formatting as well. The rule names were designed to stay compatible with the existing tools, so the migration cost tends to be low.
biomejs/biome unifies the linter and the formatter on the JavaScript side. It does not replace the entire existing ESLint plugin ecosystem, though, so you have to check the list of custom rules your team depends on first.
oxc-project/oxc is a collection that builds JavaScript toolchain parts, such as a parser, a linter, and a transformer, in Rust. It leans strongly toward being something other tools pull in as a component, and the individual pieces differ in how finished they are. Approach it expecting an end-user tool and it will not line up.
vitejs/vite is by now close to the default choice for a newly created front-end project. Its internal engine is an area where replacement is in progress, so if you write plugins yourself, attaching to the higher-level API is the safer route.
Editors
helix-editor/helix is a modal editor with LSP and Tree-sitter built in. It was made so you can use it right away without plugins, and in exchange extensibility is limited. Its license is MPL-2.0, a weak copyleft under which the disclosure obligation attaches at the level of each modified file.
zed-industries/zed is a collaboration-oriented editor written in Rust. The license matters especially here. The repository holds both LICENSE-GPL and LICENSE-APACHE, so GitHub cannot classify it under a single license and shows it as Other. That is, the terms differ by component, so if you plan internal distribution or embedding it in a product, you have to check which file applies to which part.
Terminals and CLIs
ghostty-org/ghostty is a GPU-accelerated terminal built in Zig, and what marks it out is that it uses each platform's native UI. The public repository opened relatively recently, so the range of per-platform support may be uneven; if you depend on remote-access environments or unusual key bindings, check in advance.
zellij-org/zellij is a terminal multiplexer aiming at the place tmux has occupied, and it leads with built-in layouts and a plugin structure. If you already have a tmux configuration your hands know, there is not much reason to move.
jesseduffield/lazygit handles work such as staging, rebasing, and cherry-picking on a terminal screen. It lets you look and choose instead of memorizing commands, but used without knowing what git is doing, it only makes you produce mistakes faster.
atuinsh/atuin puts shell history into SQLite and attaches search and sync across machines. You can run the sync server yourself. Credentials easily get mixed into command history, so check where it is stored before you use it.
Before you adopt
Check the full licence text yourself, and route commercial adoption through legal review. This post is not legal advice.
oven-sh/bun in particular has a LICENSE file that states Bun itself is MIT while also explaining that it statically links an LGPL-2 library and the relinking condition that comes with it. Using something inside the company and putting it into a product you redistribute are different scopes of review.
The tools themselves are usually adopted by an individual first. When you raise one to a team standard, factor in that the CI image, the lock file format, and the setup procedure for new joiners all change along with it.
Repository details (stars, licence, recent activity) were checked directly on GitHub on 2026-08-12 and are point-in-time values. The numbers and the status change.
Links
Series: Previous — AI Agents and LLM Tooling · Next — Infrastructure and Databases
Related posts on this blog:
Tools: Text Diff · Regex Tester
현재 단락 (1/42)
The change that happened in developer tooling over the past few years was not added features but spe...