Skip to main content

Workspace boundaries

SibylHub is a pnpm workspace orchestrated by Turborepo. JavaScript and TypeScript dependencies belong to pnpm, PHP dependencies to Composer, and Rust dependencies to Cargo. Keeping those ownership boundaries intact makes local checks reproducible and prevents one runtime from silently owning another's lockfile or package graph.

Turborepo caches deterministic build, lint, typecheck, and test outputs using committed lockfiles and declared inputs. Development servers, migrations, deployment, publication, coverage, and cleanup remain uncached because they have process or external-state effects.

apps/web owns Astro and Cloudflare Worker output. apps/backoffice owns Laravel, Filament, Composer, and the registry database. apps/backend owns the Axum API and its operational state. apps/cli owns the sibyl executable. apps/docs owns the static Docusaurus build. packages/schemas owns JSON Schema and Zod validation, while packages/typescript-config owns shared compiler presets.

From the workspace root, install with pnpm install --frozen-lockfile, then use pnpm check:config, pnpm dev, pnpm build, pnpm test, pnpm lint, pnpm typecheck, pnpm format, and pnpm clean. The docs package also supports pnpm --filter docs dev on port 3001, pnpm --filter docs build, and pnpm turbo run build --filter=docs.

These commands inspect or build the checkout. They do not establish that a Cloudflare deployment, database, registry publication, remote storage export, or provider authentication has converged.