These libraries are experimental. APIs may change without notice. Generated from source with koruc 0.1.7 on 10/5/2026.

Stack

@korulang/stack@0.0.1

Declarative service stacks for Koru - compile-time service graphs, compose materialization

stack/index.kz · 2 tors

@korulang/stack — declarative service stacks for Koru · 42 more lines
@korulang/stack — declarative service stacks for Koru A program declares its services once; `koruc app.kz stack manifest` materializes the graph into docker-compose YAML. The graph is compile-time data — cycles and dangling depends_on edges are refusals, not runtime surprises. DECLARATION: import koru/stack koru/stack:service(db) { "image": "postgres:16", "healthcheck": "pg_isready -U shop", "env": { "POSTGRES_DB": "shop" } } [depends_on("db")]koru/stack:service(web) { "image": "web:latest", "port": "web_port" } // a minimal service is name + body: koru/stack:service(cache) { "image": "redis:7" } EDGES: [depends_on("a", "b")] annotations on the service declaration — the same convention std/build:step uses. A dep that declares a healthcheck emits `condition: service_healthy`; without one it emits `service_started`. FLAG-ERASED VALUES: every string field is resolved through build:config first — a value that names a config key substitutes, anything else is literal. [build("x")] annotations gate whole declarations, so the graph's shape and its values both vary per --build flag and resolve before the manifest exists. COMMANDS: koruc app.kz stack manifest — emit compose.yaml koruc app.kz stack up — validate, emit, compose up -d --wait koruc app.kz stack down — tear the stack down koruc app.kz stack logs — follow service logs

stack

comptimecommand index.kz:71

service

comptimenorun index.kz:841