Companion packages¶
Arvel keeps the core small. Optional features ship as separate packages you install as extras. Each one registers a service provider and, where it needs tables, publishes migrations under its own tag.
| Package | Extra | What it adds |
|---|---|---|
| arvel-oauth | arvel[oauth] | OAuth2/OIDC social login (Google, GitHub, Microsoft, Apple, generic OIDC) |
| arvel-permission | arvel[permission] | Roles and permissions with mixins, middleware, and Gate integration |
| arvel-image | arvel[image] | Pillow-based image manipulation + a polymorphic media library |
| arvel-search | arvel[search] | Full-text search with pluggable drivers (database, Meilisearch, Elasticsearch) |
| arvel-audit | arvel[audit] | Automatic change-audit trail + a fluent activity log |
Installing and wiring a package¶
Install the extra:
Register its provider in bootstrap/providers.py:
If the package ships migrations, publish and run them:
See each package page for its specific configuration, models, and usage.
Looking for a full reference app? See the e-commerce kit — it's a starter kit, not a package.