Monorepo for all five myrgic.* domain deployments. The flagship demonstration of myrgic/cogos's reconciler framework: a declarative site.yaml per app, reconciled to GitHub Pages via the kernel's SiteProvider.
| Domain | Behavior |
|---|---|
| myrgic.com | brand site (HTTPS enforced; canonical) |
| myrgic.dev / .ai / .net / .org | redirect to https://myrgic.com/ |
sites/
├── apps/
│ ├── myrgic-com/ site.yaml + src/ + build.sh (canonical brand site)
│ ├── myrgic-dev/ site.yaml + src/ + build.sh (redirect to .com)
│ ├── myrgic-ai/ … (redirect)
│ ├── myrgic-net/ … (redirect)
│ └── myrgic-org/ … (redirect)
├── packages/
│ ├── brand-tokens/ canonical Myrgic CSS tokens (mirror)
│ └── eigen-form/ mathematical design library v0.0.1 (the trefoil mark engine)
├── .cog/
│ └── config/
│ ├── manifest.yaml meta-reconciler declaration (which providers run, how)
│ └── site/
│ ├── README.md what state lives here, schema reference
│ └── .state.json runtime state (gitignored — regenerable)
└── README.md
- Each
apps/<name>/site.yamldeclares a domain, its build, and its deploy strategy + target. - The kernel's
SiteProviderwalksapps/*/site.yamlviaLoadConfig. FetchLivequeries each deploy-target repo (CNAME content, currentmainSHA) viagh api.ComputePlandiffs declared vs live →Action[](create / update / delete / skip).ApplyPlanrunsapps/<name>/build.sh, then dispatches toGHPagesStrategy.Deploywhich force-pushesdist/+ a generatedCNAMEto the deploy target.- State lands in
.cog/config/site/.state.json.
Running:
# Plan only (no side effects):
cogos reconcile site --dry-run --json
# Plan + apply:
cogos reconcile site --applyRequires the cogos kernel binary (≥ v0.5.0). See myrgic/cogos for installation.
- Declarative deployment. All five sites' specs live in version-controlled YAML; no imperative deploy scripts.
- Pluggable strategies.
GHPagesStrategyis one implementation; theDeployStrategyinterface contracts equally for gitlab-pages, k8s ingress, S3, self-hosted rsync as future drop-ins. - Self-demonstrative architecture. The lab's public infrastructure runs through the framework the lab publishes. Same
Reconcilableshape as ArgoCD, executed through the kernel CLI rather than a separate operator.
MIT.