Skip to content

v0.0.1 (in development)

Choose a tag to compare

@flaticols flaticols released this 20 Jun 11:44
Immutable release. Only release title and notes can be modified.
v0.0.1
21e8aa3

Warning

ComposeKit is still in active development (pre-1.0). The API and behavior may
change between releases, and not every Compose feature is supported yet.
Not recommended for production use.

First 0.0.1 release. A Docker Compose parsing & orchestration engine for Apple's container, focused on running local-dev dependency stacks.

Highlights

Two layers

  • ComposeKit — runtime-agnostic spec core (parse, interpolate, profiles, plan); Yams-only.
  • ComposeKitContainer — maps the model onto container and orchestrates it.

Spec coverage (parse + translate)

  • Images, ports, environment/env_file, named + bind volumes, networks, labels.
  • depends_on with conditions: service_started, service_healthy (healthcheck-gated), service_completed_successfully (run-to-completion gated).
  • profiles activation, configs/secrets provisioning, extends + include (deep-merge), advanced build fields.
  • Popular run flags: ulimits, shm_size, tty/stdin_open, dns options, runtime, and more; unsupported-but-popular fields are decoded and warned.

Orchestration

  • up / down / ps / logs / exec / pull / stop / start / restart.

Tooling & docs

  • compose-validate CLI (parse / --plan / --profile).
  • Swift-DocC site: https://flaticols.github.io/ComposeKit/
  • Interop CI: compose-spec JSON Schema validation + docker compose config parity + nightly schema sync.

Not yet

Multi-file -f merge / auto compose.override.yaml, restart: policy enforcement, network aliases / volume driver options, and full field-specific merge rules.

Install

.package(url: "https://github.com/flaticols/ComposeKit.git", from: "0.0.1"),