Skip to content

Latest commit

 

History

History
70 lines (46 loc) · 2.65 KB

File metadata and controls

70 lines (46 loc) · 2.65 KB

Logo

Python Client for Para

NuGet version Join the chat at https://gitter.im/Erudika/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+
  1. Use the PyPI package manager to install the Python client for Para:
$ pip3 install paraclient
  1. 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

Development

This project uses uv for dependency management, builds, and publishing, and targets Python 3.9+.

  1. Install uv by following the official instructions.
  2. Run uv sync first. This installs every dependency declared in pyproject.toml and pinned in uv.lock into .venv/.
  3. Run the test suite via uv sync --extra test and uv run python -m unittest.
  4. Build distributable artifacts with uv build (output located in dist/).

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

  1. Fork this repository and clone the fork to your machine
  2. Create a branch (git checkout -b my-new-feature)
  3. Implement a new feature or fix a bug and add some tests
  4. Commit your changes (git commit -am 'Added a new feature')
  5. Push the branch to your fork on GitHub (git push origin my-new-feature)
  6. Create new Pull Request from your fork

For more information see CONTRIBUTING.md

License

Apache 2.0