Voraussetzungen
Was du auf deinem Rechner brauchst, um mit Kumiko zu entwickeln.
Runtime
| Tool | Version | Wofür |
|---|---|---|
| Bun | ≥ 1.2 | Server-Runtime + Bundler (yarn kumiko build) |
| Node.js | ≥ 20 | wird von Yarn 4 + Astro für die Doku-Site gebraucht |
| Yarn | 4.14+ | Workspace-Manager (auto-installiert via corepack) |
| Docker | beliebig aktuell | lokale PostgreSQL- + Redis-Container |
Bun übernimmt die komplette Server-Ausführung (HTTP, Dispatcher, Pipeline). Node treibt nur Tooling, das noch nicht mit Bun läuft (Yarn, Astro-Builds).
Services (laufen via yarn kumiko dev)
| Service | Port | Wofür |
|---|---|---|
| PostgreSQL 17 | 15432 | Primary Store (Event-Store + Projections) |
| Redis 7 | 16379 | SSE Pub/Sub + Rate-Limiting + Caching |
| Meilisearch | optional | Full-Text-Search-Backend (wenn benutzt) |
Hohe Ports vermeiden Konflikte mit System-Installs derselben Services.
Production
Gleiche Versionen in Production. Das Bun-Bundle ist self-contained bis auf 7 native Externals, die als Runtime-Dependencies bestehen bleiben:
argon2, bullmq, drizzle-kit, drizzle-orm, ioredis, postgres, temporal-polyfillVersionspin via packages/framework/package.json — das Production-Image macht im Runtime-Stage nur ein bun install --production gegen das generierte Server-Bundle.
Optional
- GitHub CLI (
gh) — für PR-/Issue-Arbeit von der Kommandozeile - Pulumi — nur falls du selbst nach K3s deployst (siehe K3s-Deploy-Guide)
Was du NICHT brauchst
- npm oder pnpm — nur Yarn 4 (Lockfile + Workspace-Protocol unterscheiden sich)
- Globale TypeScript-/Vite-/Drizzle-Installs — alles ist Workspace-lokal