Awesome
<a name="readme-top"></a>
<div align="center"> <hr/> <a href="https://github.com/thijsmie/pocketbase-async"> <img src="https://raw.githubusercontent.com/thijsmie/pocketbase-async/main/images/logo.svg" alt="Logo" width="80" height="80"> </a> <h3 align="center">pocketbase-async</h3> <p align="center"> An async Python 3.11+ PocketBase SDK <hr/> <a href="https://github.com/thijsmie/pocketbase-async"><strong>Repository</strong></a> <br /> <a href="https://github.com/thijsmie/pocketbase-async/issues">Report Bug</a> · <a href="https://github.com/thijsmie/pocketbase-async/issues">Request Feature</a> </p> </div>About
PocketBase is an amazing tool to have in your developers backpack for a quick backend for your project. I found it pleasant to work with in Python but Vaphes existing Python SDK is in sync code while most of my application development is async these days. I started with a fork of Vaphes' SDK and tried to add async support but I gave up quite quickly and just started from scratch. You see the results here.
Installation
Note that this package is compatible with Python 3.11 and up. You can install this package directly from PyPi:
pip install pocketbase-async
# or if you use poetry
poetry add pocketbase-async
Usage
The API is mostly the same as the official JS SDK and the Vaphes Python SDK, with some exceptions. Authentication methods are namespaced under an extra .auth
. There are some examples to help you along. More info to come.
Roadmap
See the project board for the list of planned work. See the open issues for a full list of proposed features (and known issues).
Contributing
Contributions are welcome and appreciated, be it typo-fix, feature or extensive rework. I recommend you to open an issue if you plan to spend significant effort on making a pull request, to avoid dual work or getting your work rejected if it really doesn't fit this project.
Don't forget to give the project a star! Thanks again!
- Fork the project
- Create your feature branch (
git checkout -b feat/some-nice-feature
) - Commit your changes (
git commit -m 'feat: Add some AmazingFeature'
) - Push to the pranch (
git push -u origin feat/some-nice-feature
) - Open a pull request
License
Distributed under the MIT License. See LICENSE.txt
for more information.
Attributions
The pocketbase-async
package was inspired and guided in implementation by several other projects:
- The official js sdk: https://github.com/pocketbase/js-sdk
- The Python SDK by Vaphes: https://github.com/vaphes/pocketbase
- The official documentation: https://pocketbase.io/docs/
Furthermore, a lot of the API tests were adapted from Vaphes' work (licensed MIT).
<hr/> <a href="#readme-top">:arrow_up_small: Back to top</a>