Metadata-Version: 2.1
Name: lxcor-reggi
Version: 0.1.0
Summary: API key management and user identity for Django — registration, email verification, key rotation, and tier assignment.
Author-email: Alexandre Scozzafave Alves <frontdesk@lxcor.com>
License: MIT
Project-URL: Homepage, https://github.com/lxcor/api-suite/tree/main/reggi
Project-URL: Repository, https://github.com/lxcor/api-suite
Keywords: django,api-keys,authentication,registration
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Django
Classifier: Framework :: Django :: 3.2
Classifier: Framework :: Django :: 4.2
Classifier: Framework :: Django :: 5.0
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Internet :: WWW/HTTP
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: django>=3.2
Requires-Dist: djangorestframework>=3.14

# reggi

API key management and user identity for Django.

`reggi` provides registration, email verification, login, password reset, API key issuance and rotation, and tier assignment — everything needed to get users authenticated and issuing API requests.

Part of the [lxcor/api-suite](https://github.com/lxcor/api-suite).

## Install

```bash
pip install lxcor-reggi
```

## Setup

```python
# settings.py
INSTALLED_APPS = [
    ...
    'reggi',
]
```

```python
# urls.py
urlpatterns = [
    path('reggi/', include('reggi.urls')),
]
```

## Settings

| Setting | Default | Description |
|---|---|---|
| `REGGI_SITE_NAME` | `'API'` | Site name shown in emails and the navbar |
| `REGGI_AUTO_ISSUE_KEY` | `False` | Auto-issue a free API key named "Default" on registration |
| `REGGI_DOCS_URL` | `None` | URL shown as "Docs" link in the user navbar dropdown |
| `REGGI_USAGE_URL` | `None` | URL shown as "Usage" link in the user navbar dropdown |

## Features

- Registration with email verification
- Login / logout / password reset
- API key creation, rotation, and revocation
- Tier assignment per key (integrates with `lxcor-kotta`)
- `reggi_login_required` decorator for protecting views
- `{% include "reggi/_navbar_user.html" %}` — drop-in navbar fragment

## License

MIT
