Module Structure
A CodeSCE module is a small, self-contained package. It has up to four parts, each with a clear role and a clear visibility.
The four parts
| Part | What it is | Visibility |
|---|---|---|
| Module (ZIP) | The module's core logic — the source code buyers integrate. | 🔒 Private (paid) |
| UI | A preview of the module, used to render the live preview. | 🔒 Private |
| README | Public documentation shown on the module page. | 🌐 Public |
| config schema | The variables buyers can configure, defined by the author. | 🌐 Public (shape) |
Module (ZIP) — core logic
The heart of the module: the actual code a buyer buys, packaged as a ZIP. It's the paid deliverable — kept private and only released to buyers, as a watermarked copy, through the secure download flow.
UI — preview
A preview build that powers the live preview on the module page and in Studio. It's what lets buyers see the module in action before purchase, and it's what the UI-quality scanners (accessibility, responsive layout, image moderation) run against. Kept private.
README — public docs
The author's documentation — what the module does, how to integrate it, requirements, and notes. This is public, so anyone browsing can read it in full before buying. It's both a sales pitch and the integration guide.
config schema — variables
A structured description of the module's configurable variables: the settings a buyer can adjust after purchase. It's authored in Studio and rendered as a form by the Dynamic Configuration System. The shape is public (buyers see the config options on the module page); the buyer's chosen values are theirs.
Private vs public, and where files live
- Private files (Module ZIP + UI) are stored in private object storage and are never served directly. They're reachable only through gated, ownership-checked routes.
- Public files (README) are served openly for browsing.
- Delivery of the private code happens only after purchase, via short-lived, one-time, watermarked downloads.
Minimum viable module
To save a draft you need a name + Module ZIP + README. The UI preview is optional to save but strongly recommended, and a config schema is what makes your module configurable. See Create a Module.
Next step
See how the config schema becomes an interactive form in Dynamic Configuration →.