들어가며 — 대기 시간이 사라지자 습관이 바뀌었다
개발자 도구에서 지난 몇 년간 벌어진 변화는 기능 추가가 아니라 속도였습니다. 의존성 설치, 린트, 번들링처럼 하루에 수십 번 반복되는 작업이 네이티브 언어로 다시 쓰이면서 대기 시간이 크게 줄었습니다.
이건 단순한 편의가 아닙니다. 린트가 3초 걸리면 커밋 전에 한 번 돌리지만, 30밀리초면 저장할 때마다 돌립니다. 도구가 빨라지면 사용 빈도가 바뀌고, 빈도가 바뀌면 워크플로가 바뀝니다.
아래는 순위가 아니라 역할별 지도입니다.
스냅숏
| 프로젝트 | 라이선스(저장소 선언 기준) | 스타 | 최근 푸시 |
|---|---|---|---|
oven-sh/bun | MIT (LGPL-2 라이브러리 정적 링크) | 95,389 | 2026-08-12 |
astral-sh/uv | Apache-2.0 | 88,667 | 2026-08-12 |
zed-industries/zed | GPL-3.0 및 Apache 병존 | 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 |
모두 2026-08-12 기준입니다.
런타임과 패키지 관리
oven-sh/bun은 런타임, 패키지 매니저, 번들러, 테스트 러너를 하나의 실행 파일에 넣었습니다. 여러 도구를 조합하던 자리를 하나로 대체하려는 시도입니다. Node 호환은 넓어졌지만 완전하지는 않으니, 기존 서비스를 옮길 계획이라면 의존성부터 실제로 돌려 보세요.
astral-sh/uv는 파이썬 쪽에서 같은 일을 합니다. 가상 환경 생성, 의존성 해석, 잠금 파일, 인터프리터 설치까지 하나로 묶었고 체감 속도 차이가 큽니다. 다만 소스 빌드가 필요한 과학 계산 패키지나 사내 사설 인덱스처럼 경로가 특이한 환경에서는 아직 예외를 만나기도 합니다. CI를 먼저 옮겨 보고 로컬을 나중에 바꾸는 순서가 안전합니다.
# 예시: 프로젝트 초기화부터 실행까지
uv init myproj && cd myproj
uv add httpx
uv run python -c "import httpx; print(httpx.__version__)"
린터와 빌드
astral-sh/ruff는 여러 파이썬 린터가 나눠 하던 규칙을 한 바이너리에 모으고 포매팅까지 포함합니다. 규칙 이름이 기존 도구와 호환되도록 설계되어 이주 비용이 낮은 편입니다.
biomejs/biome는 자바스크립트 쪽에서 린터와 포매터를 통합합니다. 다만 기존 ESLint 플러그인 생태계 전체를 대체하지는 못하므로, 팀이 의존하는 커스텀 규칙 목록을 먼저 확인해야 합니다.
oxc-project/oxc는 파서, 린터, 변환기 같은 자바스크립트 툴체인 부품을 Rust로 만드는 모음집입니다. 다른 도구가 부품으로 가져다 쓰는 성격이 강하고, 구성 요소마다 완성도가 다릅니다. 최종 사용자 도구를 기대하고 접근하면 어긋납니다.
vitejs/vite는 이제 새로 만드는 프론트엔드 프로젝트의 기본 선택지에 가깝습니다. 내부 엔진 교체가 진행 중인 영역이므로, 플러그인을 직접 만든다면 상위 API에 붙는 편이 안전합니다.
에디터
helix-editor/helix는 LSP와 트리시터를 내장한 모달 에디터입니다. 플러그인 없이도 바로 쓸 수 있게 만든 대신 확장성은 제한적입니다. 라이선스가 MPL-2.0이라 수정한 파일 단위로 공개 의무가 붙는 약한 카피레프트입니다.
zed-industries/zed는 Rust로 만든 협업 지향 에디터입니다. 라이선스가 특히 중요합니다. 저장소에 LICENSE-GPL과 LICENSE-APACHE가 함께 있어 GitHub이 단일 라이선스로 분류하지 못하고 Other로 표시합니다. 즉 구성 요소마다 조건이 다르니, 사내 배포나 제품 내장 계획이 있다면 어느 부분에 어떤 파일이 적용되는지 확인해야 합니다.
터미널과 CLI
ghostty-org/ghostty는 Zig로 만든 GPU 가속 터미널로, 각 플랫폼의 네이티브 UI를 쓰는 점이 특징입니다. 공개 저장소가 열린 시점이 상대적으로 최근이라 플랫폼별 지원 범위가 고르지 않을 수 있으니, 원격 접속 환경이나 특수 키 바인딩에 의존한다면 미리 확인하세요.
zellij-org/zellij는 tmux가 차지하던 자리를 노리는 터미널 멀티플렉서로, 기본 레이아웃과 플러그인 구조를 앞에 내세웁니다. 손에 익은 tmux 설정이 있다면 굳이 옮길 이유는 크지 않습니다.
jesseduffield/lazygit은 스테이징, 리베이스, 체리픽 같은 작업을 터미널 화면에서 처리합니다. 명령어를 외우는 대신 눈으로 보고 고르게 해 주지만, git이 무엇을 하는지 모르는 상태에서 쓰면 실수를 더 빠르게 만들 뿐입니다.
atuinsh/atuin은 셸 히스토리를 SQLite에 넣고 검색과 기기 간 동기화를 붙입니다. 동기화 서버는 직접 운영할 수 있습니다. 명령 이력에는 자격 증명이 섞이기 쉬우니 어디에 저장되는지 확인하고 쓰세요.
도입 전 확인
라이선스 전문을 직접 확인하고, 상업적 도입은 법무 검토를 거치세요. 이 글은 법률 자문이 아닙니다.
특히 oven-sh/bun은 LICENSE 파일이 Bun 자체는 MIT라고 밝히면서, LGPL-2 라이브러리를 정적 링크한다는 점과 그에 따른 재링크 조건을 함께 설명합니다. 사내에서 쓰는 것과 제품에 넣어 재배포하는 것은 검토 범위가 다릅니다.
도구 자체는 대개 개인이 먼저 도입합니다. 팀 표준으로 올릴 때는 CI 이미지, 잠금 파일 형식, 신규 입사자 설치 절차까지 함께 바뀐다는 점을 계산에 넣으세요.
저장소 정보(스타 수·라이선스·최근 활동)는 2026-08-12에 GitHub에서 직접 확인한 시점 값입니다. 수치와 상태는 바뀝니다.
링크
시리즈: 이전 글 — AI 에이전트와 LLM 도구 · 다음 글 — 인프라와 데이터베이스
이 블로그의 관련 글:
현재 단락 (1/42)
개발자 도구에서 지난 몇 년간 벌어진 변화는 기능 추가가 아니라 속도였습니다. 의존성 설치, 린트, 번들링처럼 하루에 수십 번 반복되는 작업이 네이티브 언어로 다시 쓰이면서 대기 ...