zudo-composer
GitHub repository

Type to search...

to open search from anywhere

Repository Map

A guide to the repository directories and the responsibilities they contain.

Overview

The repository separates browser and domain code in src/ from Node launch, authoring, and build code in server/. Package, fixture, documentation, and deployment surfaces stay at the root so a host install can be audited without following generated build output.

Source and runtime

PathResponsibility
src/Browser-facing and headless product source. Each domain (composer/, content/, mapping/, sitemapper/, and assets/) is split into boundaries such as model/, storage/, library/, catalog/, and domain-specific resolvers or references. features/ owns route-level composition; app/ owns the application shell and workspace integration; components/ contains shared UI; shared/ contains cross-domain utilities and persistence seams; site-project/ contains the aggregate model, compiler, and release API; hosted-demo/ contains the bundled demo handoff; styles/ contains stylesheet barrels and tokens; theme/ contains theme selection.
server/Node-only launcher and host integration. cli/ parses and supervises commands; config/ loads host settings; authoring/ contains Node-only authoring helpers; creator/ creates a new host; site-build/ compiles and verifies static artifacts; site-project-local/ implements local release storage and the JSON API; public/ is the stable package-facing Node facade; generated/ contains build-generated validation/runtime output.
plugins/Vite plugins and development middleware for the component pack, host styles, domain file providers, Composer app HTML, roots, and SiteProject source.

Packages and fixtures

Each workspace package has a separate boundary or demonstrates one:

PathResponsibility
packages/component-contract/The versioned, framework-neutral @zudo-composer/component-contract package that defines the provider/consumer component-pack contract.
packages/demo-blog/A complete host project with a host-owned component pack and authored blog SiteProject.
packages/demo-landing/A complete host project with a host-owned component pack and authored landing SiteProject.
packages/demo-studio/The Sample Studio host, using the installed @zudo-sg/ui themeset and frozen hosted-demo route data.
packages/demo-webshop/A complete host project with a host-owned component pack and authored webshop SiteProject.
packages/fixture-themeset/An independently installed component-pack fixture used to prove that swapping a themeset is a host configuration change.
packages/image-editor/The source-only, zero-dependency RGBA editing core and worker/UI entry boundaries.
fixtures/Minimal host fixtures: host/ exercises an installed tool, self-host/ exercises a package exports self-reference, and themeset-host/ exercises an installed themeset package.

Project surfaces

PathResponsibility
scripts/Repository checks, generators, boundary scans, asset helpers, static-build helpers, and CI support. scripts/hosted-demo/ contains the hosted-demo target definitions, artifact preparation, deployment guard, deployment commands, and bounded live checks.
docs/Operator-reference documentation for creator bootstrap, demo sites, SiteProject release/build behavior, packed installs, hosted demos, and workspace acceptance.
doc/This zudo-doc developer documentation site: its content, config, route seams, and static-site checks.
cms/The repository's own dogfood host data. The tracked root currently retains the demo Assets catalog; other runtime CMS trees are host or generated state.
templates/host/The canonical host starter copied by zudo-composer init; it contains host-owned components, styles, authored SiteProject source, an image manifest/source asset, and starter tests.
tests/Browser acceptance, document-readiness, isolated-host, and runtime-failure test support.
styles/The root dogfood host's base.css, which imports provider CSS and declares the host stylesheet entry.
bin/The published zudo-composer executable entry point.
type-tests/Compile-time fixtures for the public SiteProject exports.

Root configuration families

PathResponsibility
tsconfig.*.jsonTypeScript project configurations for the app, Node/CLI code, plugins, public entries, scripts, SiteProject local code, and type tests.
playwright.*.config.tsBrowser-lane configurations for development, host, hosted-demo, demo, and SiteProject acceptance surfaces.
wrangler*.jsoncCloudflare Worker configurations for the hosted Composer target and the demo sites.
zudo-composer.config.tsThe repository root's host configuration: this repository is its own dogfood host and selects @zudo-sg/ui/composer-pack.
vite*.config.ts, vitest.config.ts, eslint.config.jsRoot Vite build variants, Vitest setup, and ESLint configuration used by repository checks.
package.json, pnpm-workspace.yaml, pnpm-lock.yamlWorkspace scripts, package membership and package-manager policy, and the frozen dependency graph.
CLAUDE.md, README.md, ZUDO_DEPS_PINS.md, contract-handoff.jsonOwnership, operating guidance, dependency/provider pin records, and the component-contract handoff metadata.

Revision History

CreatedUpdated