Feature anatomy
A feature is an independent Python package that adds one capability to your product. It ships its own models, routes, templates, migrations, assets, tests and configuration. It is also a unit of variability in the SPL, with declared dependencies, a versioned contract and a lifecycle you can observe.
- Archetypes, the four types, full, light, config and service
- Directory structure, files, folders and where features live
- Key files, what each file does
- Contract and dependencies, the contract, dependency rules and naming
- Content features, a feature that owns a content type and its pages
- Settings, what a feature reads and how your product changes it