prpl-kinematics
Kinematics-only robot modeling, IK, motion planning, and manipulation primitives
built on a general KinematicTree. A ground-up successor to pybullet-helpers:
engine-agnostic (PyBullet is a pluggable collision/render backend, not the source
of truth), with poses represented as spatialmath SE3/SE2.
See DESIGN.md for the architecture and roadmap.
Status
Early, and the API may still change. The geometry layer and the KinematicTree
(joints, forward kinematics, grasp via re-parenting, state snapshots) are the
stable core. Built on top of them: URDF loading, PyBullet and Blender backends,
numerical and analytic IK (IKFast, EAIK, optionally SSIK), BiRRT and OMPL motion
planning, manipulation primitives, and robot models for the Franka Panda, Kinova
Gen3, TidyBot, and the bimanual Dexmate Vega.
Pin a version if you need stable behavior.
Requirements
- Python 3.10+
Installation
pip install prpl_kinematics
IKFast solvers are compiled from the bundled C++ sources on first use, which needs a C++ toolchain and LAPACK/BLAS. The other IK backends have no such requirement.
Optional extras
pip install "prpl_kinematics[planning]" # OMPLPlanner and seed_ompl
pip install "prpl_kinematics[ssik]" # the SSIK analytic IK backend
ompl publishes wheels for far fewer platforms than everything else here (none for
Windows, and macOS 15 or newer only), so it stays out of the base install. Importing
OMPLPlanner or seed_ompl without it raises an ImportError saying so; everything
else, including BiRRTPlanner, works untouched.
Development
From the monorepo root, with uv:
uv pip install -e "./prpl-kinematics[develop]"
./run_ci_checks.sh # autoformat, mypy, pylint, pytest
Metadata
Release files for prpl-kinematics 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| prpl_kinematics-0.0.3.tar.gz | 22.1 MB | Without provenance | Details for prpl_kinematics-0.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| prpl_kinematics-0.0.3-py3-none-any.whl | Python 3 | none | any | Details for prpl_kinematics-0.0.3-py3-none-any.whl |
Total release size: 44.4 MB
Release files / prpl_kinematics-0.0.3.tar.gz
| Download URL | prpl_kinematics-0.0.3.tar.gz |
|---|---|
| Size | 22.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1bc0371e1de95607dde5452f48599a9bc37eda7729f260cb19815905594dbd11
|
|
BLAKE2b-256 checksum How to use checksums |
9c0be2fb543119138a4ff797350f8053e10bfb8f3bf1a22c4d5b851e36862f71
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.10
|
Release files / prpl_kinematics-0.0.3-py3-none-any.whl
| Download URL | prpl_kinematics-0.0.3-py3-none-any.whl |
|---|---|
| Size | 22.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
90e2e61bba889b145bad6474686c34aa28538320590b0b084c7ac585a119dc7e
|
|
BLAKE2b-256 checksum How to use checksums |
393adc7d9816e444b898e6a09acc52f4f5313a5a279f021113d5c708b4f29acb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.10
|
Security for prpl-kinematics 0.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.