f8b21af4be
10_Wiki/Topics 대규모 정리: - 오류 캡처/미완성 stub 문서 227개 제거 - 교차폴더 중복 43클러스터 병합 (63파일 → redirect) - 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건 - 카테고리 MOC 6개 신규 생성 - Graph 섹션 미해결 related-keyword 링크 10,058건 제거 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
155 lines
4.1 KiB
Markdown
155 lines
4.1 KiB
Markdown
---
|
|
id: wiki-2026-0508-modern-environment-ecosystem
|
|
title: Modern Environment Ecosystem
|
|
category: 10_Wiki/Topics
|
|
status: verified
|
|
canonical_id: self
|
|
aliases: [Dev Environment 2026, Modern Toolchain]
|
|
duplicate_of: none
|
|
source_trust_level: A
|
|
confidence_score: 0.9
|
|
verification_status: applied
|
|
tags: [tooling, devex, ecosystem]
|
|
raw_sources: []
|
|
last_reinforced: 2026-05-10
|
|
github_commit: pending
|
|
tech_stack:
|
|
language: any
|
|
framework: any
|
|
---
|
|
|
|
# Modern Environment Ecosystem
|
|
|
|
## 매 한 줄
|
|
> **"매 2026 dev environment 매 reproducible, fast, AI-assisted"**. 매 Docker (2013) → 매 nix/devcontainer/devbox → 매 Bun/Deno + AI editors (Cursor, Claude Code) 의 stack. 매 lockfile + container + AI agent 의 trinity.
|
|
|
|
## 매 핵심
|
|
|
|
### 매 layers (2026 stack)
|
|
1. **Hardware**: M-series Mac, Linux (Asahi/native), Cloud VM.
|
|
2. **OS / shell**: macOS / Linux + zsh / fish, atuin, starship.
|
|
3. **Package manager**: brew, mise, nix, devbox.
|
|
4. **Lang runtime**: Bun (1.2+), Deno (2.x), Node 22 LTS, Python 3.13 + uv, Rust 1.85.
|
|
5. **Container**: Docker Desktop, Podman, OrbStack.
|
|
6. **Editor**: Cursor, Claude Code (CLI), VSCode + Copilot.
|
|
7. **CI**: GitHub Actions, Buildkite, Dagger.
|
|
|
|
### 매 modern shifts (2025-2026)
|
|
- Bun replacing npm/pnpm/tsc/jest in many JS projects.
|
|
- uv replacing pip/poetry in Python.
|
|
- AI-first editors (Cursor, Claude Code) 매 default.
|
|
- Devcontainers (.devcontainer.json) 매 reproducible setup.
|
|
|
|
### 매 응용
|
|
1. Onboarding-day-zero — clone + 1-command setup.
|
|
2. CI parity with local.
|
|
3. Multi-repo monorepo workflows.
|
|
|
|
## 💻 패턴
|
|
|
|
### `mise` (asdf successor) for tool versioning
|
|
```toml
|
|
# .mise.toml
|
|
[tools]
|
|
node = "22.14.0"
|
|
python = "3.13.2"
|
|
bun = "1.2.0"
|
|
go = "1.23"
|
|
```
|
|
|
|
### `devcontainer.json` (VSCode / Codespaces)
|
|
```json
|
|
{
|
|
"name": "app-dev",
|
|
"image": "mcr.microsoft.com/devcontainers/typescript-node:22",
|
|
"features": {
|
|
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
|
|
"ghcr.io/devcontainers/features/git:1": {}
|
|
},
|
|
"postCreateCommand": "bun install",
|
|
"customizations": { "vscode": { "extensions": ["dbaeumer.vscode-eslint"] } }
|
|
}
|
|
```
|
|
|
|
### Bun project (replaces node + npm + tsc + jest)
|
|
```bash
|
|
bun init
|
|
bun add hono
|
|
bun run dev # built-in --watch
|
|
bun test # built-in test runner
|
|
bun build ./src/index.ts --target=bun
|
|
```
|
|
|
|
### Python with `uv` (10-100x pip)
|
|
```bash
|
|
uv init
|
|
uv add fastapi uvicorn
|
|
uv run uvicorn main:app --reload
|
|
uv lock --upgrade
|
|
```
|
|
|
|
### Devbox (nix-based, simpler)
|
|
```json
|
|
{
|
|
"packages": ["nodejs@22", "python@3.13", "postgresql@16"],
|
|
"shell": { "init_hook": ["echo welcome"] }
|
|
}
|
|
```
|
|
|
|
### Claude Code as default agent
|
|
```bash
|
|
claude # interactive
|
|
claude /init # generate CLAUDE.md
|
|
claude /review # review pending PR
|
|
```
|
|
|
|
### CI (GitHub Actions, modern matrix)
|
|
```yaml
|
|
jobs:
|
|
test:
|
|
strategy:
|
|
matrix: { os: [ubuntu-24.04, macos-14], bun: ['1.2'] }
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: oven-sh/setup-bun@v2
|
|
with: { bun-version: ${{ matrix.bun }} }
|
|
- run: bun install --frozen-lockfile
|
|
- run: bun test
|
|
```
|
|
|
|
## 매 결정 기준
|
|
| Need | Tool (2026) |
|
|
|---|---|
|
|
| JS runtime/package | Bun |
|
|
| Python deps | uv |
|
|
| Tool versioning | mise |
|
|
| Reproducible env | devcontainer / devbox |
|
|
| AI coding | Cursor / Claude Code |
|
|
|
|
**기본값**: mise + Bun (JS) + uv (Python) + devcontainer + Claude Code.
|
|
|
|
## 🔗 Graph
|
|
- 부모: [[Developer-Experience]]
|
|
- 응용: [[Monorepo]] · [[CI-CD-Pipeline]]
|
|
- Adjacent: [[Bun]] · [[Deno]] · [[Claude-Code]]
|
|
|
|
## 🤖 LLM 활용
|
|
**언제**: setting up new project, onboarding, CI parity.
|
|
**언제 X**: legacy frozen environments (use whatever already works).
|
|
|
|
## ❌ 안티패턴
|
|
- **Global installs**: 매 version drift.
|
|
- **Untracked tool versions**: 매 "works on my machine".
|
|
- **Skipping lockfile commits**: 매 reproducibility 매 broken.
|
|
|
|
## 🧪 검증 / 중복
|
|
- Verified (mise.jdx.dev, bun.sh, docs.astral.sh/uv, GitHub devcontainer spec).
|
|
- 신뢰도 A.
|
|
|
|
## 🕓 Changelog
|
|
| 날짜 | 변경 |
|
|
|---|---|
|
|
| 2026-05-08 | Phase 1 |
|
|
| 2026-05-10 | Manual cleanup — Modern Env Ecosystem FULL with 2026 stack |
|