type: decision
status: active
timestamp: 2026-06-20
tags: [extensions, submodules, repos, structure]

Each Chrome extension is its own GitHub repo, added as a submodule

Each extension = own repo as git submodule

Each Chrome extension is its own GitHub repo, added as a submodule

Decision

Every extension is its own GitHub repository named chirag127/oriz-<slug>-ext, added to the master chirag127/oriz repo as a submodule under extensions/<slug>/. Extensions are not folders inside a monorepo.

Why

Each extension has its own release lifecycle (manifest version, store-review cadence, Chrome/Firefox/Edge submission timing) that shouldn’t be coupled to the master repo’s pointer bumps. Submodules preserve independent commit history and let each extension’s CI publish to all 3 stores without master being involved. They also mirror the existing pattern used for sites under sites/, so the mental model stays consistent.

Implications

Cross-refs


Edit on GitHub · Back to index