Metadata-Version: 2.1
Name: popol
Version: 0.5.1
Summary: Adding new power to your FastAPI application ⛅
Home-page: https://github.com/aprilahijriyan/popol
License: MIT
Author: aprilahijriyan
Author-email: hijriyan23@gmail.com
Maintainer: aprilahijriyan
Maintainer-email: hijriyan23@gmail.com
Requires-Python: >=3.8,<4.0
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Internet
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Provides-Extra: aiosmtplib
Provides-Extra: all
Provides-Extra: background-jobs
Provides-Extra: cache
Provides-Extra: orm
Provides-Extra: redis
Provides-Extra: saq
Provides-Extra: sqlmodel
Requires-Dist: aiosmtplib (>=1.1.6,<2.0.0) ; extra == "aiosmtplib" or extra == "all"
Requires-Dist: asyncer (>=0.0.1,<0.0.2)
Requires-Dist: fastapi (>=0.88.0,<0.89.0) ; extra == "all"
Requires-Dist: pydantic[email] (>=1.10.2,<2.0.0) ; extra == "all"
Requires-Dist: pyhumps (>=3.7.2,<4.0.0) ; extra == "sqlmodel" or extra == "orm" or extra == "all"
Requires-Dist: redis (>=4.3.4,<5.0.0) ; extra == "redis" or extra == "cache" or extra == "all"
Requires-Dist: saq (>=0.8.0,<0.9.0) ; extra == "saq" or extra == "background-jobs" or extra == "all"
Requires-Dist: sqlmodel (>=0.0.6,<0.0.7) ; extra == "sqlmodel" or extra == "orm" or extra == "all"
Requires-Dist: typer (>=0.7.0,<0.8.0)
Requires-Dist: uvicorn[standard] (>=0.20.0,<0.21.0)
Project-URL: Bug Tracker, https://github.com/aprilahijriyan/popol/issues
Project-URL: Repository, https://github.com/aprilahijriyan/popol
Description-Content-Type: text/markdown

# Popol ⛅

> Adding new power to your FastAPI application ⛅

Popol is a library that provides as-is tools for use on FastAPI.

This project aims to provide APIs to support your FastAPI projects without breaking existing projects. This is another version of the [Fastack](https://github.com/fastack-dev/fastack) project. Overall the available APIs are not much different from the [Fastack plugins](https://github.com/fastack-dev).

## Features 🌟

- [x] Project Layout
- [x] Command Line Interface (like `flask` command)
- [x] Pagination
- Cache Framework

    - Backends

        - [x] Redis (Sync/Async)
        - [ ] Memcached

    - Serializers

        - [x] JSON
        - [x] Pickle
        - [ ] MsgPack

- ORM Integration

    - [x] SQLModel (Async/Sync)
    - [ ] Tortoise ORM

- ODM Integration

    - [ ] MongoEngine

- [x] SMTP client (using aiosmtplib) to send emails.
- Background Jobs:

    - [x] SAQ queue support for task scheduling


## Installation 📚

```
pip install popol>=0.4.0
```

## Documentation 📖

Not available at this time, please learn from the [examples](https://github.com/aprilahijriyan/popol/tree/main/examples).

