Apps
Prefab ships a collection of optional Django apps under prefab.apps. Each app is self-contained and can be enabled independently by adding it to INSTALLED_APPS.
Available apps
| App | Module | Description |
|---|---|---|
| Accounts | prefab.apps.accounts | User authentication, registration, password reset, profile settings |
| Backlinks | prefab.apps.backlinks | Track and manage inbound links |
| Blocks | prefab.apps.blocks | Reusable content blocks for pages |
prefab.apps.email | Transactional email with template rendering | |
| Forms | prefab.apps.forms | Dynamic user-facing forms with submissions |
| Globalization | prefab.apps.globalization | Internationalisation helpers |
| Images | prefab.apps.images | Image model with thumbnailing and optimisation |
| Pages | prefab.apps.pages | Hierarchical CMS pages with MPTT |
| Regions | prefab.apps.regions | Geographic region models |
| Subscriptions | prefab.apps.subscriptions | Email newsletter subscriptions |
| Webhooks | prefab.apps.webhooks | Inbound webhook handling |
| Websites | prefab.apps.websites | Multi-site website model |
Enabling an app
python
# myproject/settings/base.py
from prefab.settings.base import *
INSTALLED_APPS += [
'prefab.apps.pages',
'prefab.apps.blocks',
'prefab.apps.images',
]Then run migrations:
bash
docker compose run --rm web python manage.py migrateEach app may require additional URL wiring — see the individual app pages for details.