A modern and simplest convenient ORM package in Python. FireO is specifically designed for the Google's Firestore, it's more than just ORM. It implements validation, type checking, relational model logic and much more facilities.
Available in other language
- FireO is available also in
nodeJSFireO nodeJS
Installation
pip install fireo
Example Usage
from fireo.models import Model
from fireo.fields import TextField
class User(Model):
name = TextField()
u = User()
u.name = "Azeem Haider"
u.save()
# Get user
user = User.collection.get(u.key)
print(user.name)
With Typed Model
from fireo.typedmodels import TypedModel
class User(TypedModel):
name: str
age: int
# Use the model as usual:
user = User(name='John', age="30")
user.save()
print(user.to_dict())
Documentation
Full documentation is available in the FireO Doc.
Contributing
Bug reports and pull requests are welcome. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
- Fix bug or add new features
- Write tests for your functionality
- Mention in Documentation, what you have done and how others can use it
To run the tests while developing on this package, you'll have to setup a Google service account and setup credentials with the following command:
export GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH"
See the Google Cloud documentation for more details.
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
License
This is official FireO Repository. Powered by OctaByte Licensed under Apache License 2.0
Metadata
Release files for fireo 2.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fireo-2.2.2.tar.gz | 43.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fireo-2.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 100.1 kB
Release files / fireo-2.2.2.tar.gz
| Download URL | fireo-2.2.2.tar.gz |
|---|---|
| Size | 43.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
207b1ce8c2384872135f17c758115e36e48054b56cf4c3b27f45529188e67615
|
|
BLAKE2b-256 checksum How to use checksums |
e239630a014b1f9e4892f6d2754a221d786657b15eca0327244c06f716b6250f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|
Release files / fireo-2.2.2-py3-none-any.whl
| Download URL | fireo-2.2.2-py3-none-any.whl |
|---|---|
| Size | 57.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7d9a7d9fe893cde31f96a1fc0dda104743566a99e5aaafc9f16ff0d356bd8845
|
|
BLAKE2b-256 checksum How to use checksums |
92cb8512f22e52e8799366e58c87e659edc74be0f3016668a869775f9a70aa39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|