Python Client for Para
What is this?
Para was designed as a simple and modular backend framework for object persistence and retrieval. It helps you build applications faster by taking care of the backend. It works on three levels - objects are stored in a NoSQL data store or any old relational database, then automatically indexed by a search engine and finally, cached.
This is the Python client for Para.
Quick start
Prerequisites:
- uv
- Python 3.9+
- Use the PyPI package manager to install the Python client for Para:
$ pip3 install paraclient
- Initialize the client with your access and secret API keys:
from paraclient import ParaClient
paraclient = ParaClient('ACCESS_KEY', 'SECRET_KEY')
paraclient.setEndpoint("http://localhost:8080")
Documentation
Read the Docs
Development
This project uses uv for dependency management, builds, and publishing, and targets Python 3.9+.
- Install uv by following the official instructions.
- Run
uv syncfirst. This installs every dependency declared inpyproject.tomland pinned inuv.lockinto.venv/. - Run the test suite via
uv sync --extra testanduv run python -m unittest. - Build distributable artifacts with
uv build(output located indist/).
When dependencies change, update the [project] section of pyproject.toml, then regenerate the lock file with uv lock --upgrade.
The test suite uses Testcontainers to spin up Para Docker container automatically,
so ensure Docker is installed and the daemon is running before invoking uv run python -m unittest.
You can override some environment variables (see tests/test_paraclient.py).
Contributing
- Fork this repository and clone the fork to your machine
- Create a branch (
git checkout -b my-new-feature) - Implement a new feature or fix a bug and add some tests
- Commit your changes (
git commit -am 'Added a new feature') - Push the branch to your fork on GitHub (
git push origin my-new-feature) - Create new Pull Request from your fork
For more information see CONTRIBUTING.md
License
Metadata
Release files for paraclient 1.37.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| paraclient-1.37.5.tar.gz | 17.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| paraclient-1.37.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 38.8 kB
Release files / paraclient-1.37.5.tar.gz
| Download URL | paraclient-1.37.5.tar.gz |
|---|---|
| Size | 17.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
866dd0490c46e3584fc8a32a34cfd59421c7cabe83bafe6f4b3909de83bd79fd
|
|
BLAKE2b-256 checksum How to use checksums |
3ec1c003fbc90d9c72d4b4f1b55b6a8c4b86f172b6a64efe81c9569e8a5642a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / paraclient-1.37.5-py3-none-any.whl
| Download URL | paraclient-1.37.5-py3-none-any.whl |
|---|---|
| Size | 21.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9a3691395ba528f191ad4fa4019c848b56cd1a52beac5e680d56b0e773b37280
|
|
BLAKE2b-256 checksum How to use checksums |
365d86d0afe83af2cc63c0de055a98f2704d44c6216fac2ff50fbc476cf42fe3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|