Feature anatomy
A feature in SPLENT is an independent, self-contained Python package that adds a specific capability to a product. It ships its own models, routes, templates, migrations, assets, tests, and configuration.
- Archetypes — the four feature types (full, light, config, service)
- Directory structure — files, folders, and Docker infrastructure
- Key files — what each file does, with real examples
- Contract and dependencies — the feature contract, extension points, dependency rules, naming conventions
A feature is not a plugin or a loose collection of files. It is a formally defined variability unit in a Software Product Line, with declared dependencies, a versioned API surface, and an observable lifecycle.