contentbox-cfml-module-developmentlisted
Install: claude install-skill ColdBox/skills
# ContentBox Module Development (CFML)
Build custom modules for ContentBox CMS using CFML. Modules are ColdBox modules that extend ContentBox functionality — adding new admin panels, API endpoints, widgets, interceptors, or content features.
## Module Architecture
ContentBox uses a layered module architecture:
| Layer | Path | Purpose |
|-------|------|---------|
| **Core** | `modules/contentbox/` | ContentBox engine (do not modify) |
| **Sub-modules** | `modules/contentbox/modules/` | Admin, API, UI, deps |
| **Custom** | `modules_app/contentbox-custom/` | User-owned customizations |
| **Standalone** | `modules/` | Independent ColdBox modules |
### Module Locations for Custom Code
| Type | Location |
|------|----------|
| Custom modules | `modules_app/contentbox-custom/_modules/` |
| Custom widgets | `modules_app/contentbox-custom/_widgets/` |
| Custom themes | `modules_app/contentbox-custom/_themes/` |
| Custom content | `modules_app/contentbox-custom/_content/` |
| Standalone modules | `modules/{moduleName}/` |
## ModuleConfig.cfc
Every module requires a `ModuleConfig.cfc` at its root:
```cfml
<!--- modules_app/contentbox-custom/_modules/myModule/ModuleConfig.cfc --->
<cfcomponent>
<!--- Module Properties --->
<cfset this.title = "My Module">
<cfset this.author = "Your Name">
<cfset this.webURL = "https://example.com">
<cfset this.version = "1.0.0">
<cfset this.description = "Description of my module">