Metadata-Version: 2.4
Name: patera-admin
Version: 0.11.0
Summary: Admin dashboard for Patera applications: logs, databases, files, e-mail and task managers
Keywords: patera,admin,dashboard
Author: Marko Šterk
Author-email: Marko Šterk <marko_sterk@hotmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: AsyncIO
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Requires-Dist: patera>=0.121
Requires-Dist: patera-auth>=0.11
Requires-Dist: markupsafe>=3.0
Requires-Python: >=3.13
Project-URL: Homepage, https://github.com/MarkoSterk/Patera
Project-URL: Documentation, https://github.com/MarkoSterk/Patera#readme
Project-URL: Repository, https://github.com/MarkoSterk/Patera
Project-URL: Issues, https://github.com/MarkoSterk/Patera/issues
Project-URL: Changelog, https://github.com/MarkoSterk/Patera/blob/main/CHANGELOG.md
Description-Content-Type: text/markdown

# patera-admin

Admin dashboard for Patera applications: logs, databases, files, e-mail and task managers. Part of [Patera](https://github.com/MarkoSterk/Patera), a modular async-first Python web framework.

## Installation

```sh
pip install patera-admin
# or, with uv
uv add "patera[admin]"
```

Requires Python 3.13 or newer and `patera>=0.121`.

## Usage

`patera-admin` provides a web dashboard for logs, database models, files in the static folder, task
managers and e-mail clients. It requires an [authentication](https://github.com/MarkoSterk/Patera#authentication) middleware: users need
the roles from `patera.admin.Permissions` (`ADMIN_CAN_ENTER` plus
`ADMIN_CAN_VIEW`/`CREATE`/`EDIT`/`DELETE`).

```python
from patera.admin import AdminConfig, AdminInterface


class Admin(AdminInterface):
    MANAGED_MODELS = [Note]


class Config(BaseConfig):
    ...
    ADMIN: AdminConfig = AdminConfig(
        URL_FOR_FOR_LOGIN="AuthApi.login", URL_FOR_FOR_LOGOUT="AuthApi.logout",
    )
```

See the [Admin dashboard section of the Patera documentation](https://github.com/MarkoSterk/Patera#admin-dashboard) for the full guide.

## License

MIT. See [LICENSE](https://github.com/MarkoSterk/Patera/blob/main/LICENSE).
