Skip to content

Architecture

Rogatio is a strict TypeScript 7, ESM/NodeNext monorepo using pnpm 10.32.1.

Package Responsibility
@rogatio/schema Version-1 JSON Schema, AJV validation, origins, bounds, forbidden headers.
@rogatio/compiler Validated source → browser-neutral operations + stable diagnostics.
@rogatio/browser-core Versioned storage, migrations, permissions, enablement, CAS lifecycle, atomic install/recovery, runtime state, diagnostics, badge state.
@rogatio/editor Shared framework-free DOM controller and accessible view.
@rogatio/dry-run Pure-offline bounded URL batch test engine (4-dim matching, preview seam).
@rogatio/docs-site Astro + Starlight static documentation site (this site).
@rogatio/sanity Additional validation and sanity checks.
@rogatio/smoke Browser smoke tests and end-to-end journey fixtures.
Chrome MV3 extension Translates neutral rules to WebExtensions/DNR. Designed to support more browsers later.
@rogatio/cli Editor host, file verification, runtime dispatch, macOS runtime lifecycle.
@rogatio/runtime Reusable bounded mock, response-body, and request-body transformation/runtime components.

Dependency direction:

schema -> compiler -> { browser-core, editor, runtime } -> cli -> { extension, native runtime }
  • Builds use esbuild.
  • Quality gates use Biome (format + lint), strict TypeScript checks, Vitest for unit tests, and Playwright for end-to-end tests.
  • CI and semantic-release publish the CLI to npm and extension ZIPs to GitHub Releases, with consistent CLI/extension/Git-tag versioning.
  • The documentation site (this site) uses Astro and Starlight and is a separate static package that does not share runtime code with the product packages.