Skip to main content

compas_fab_native

A planning backend for compas_fab whose work happens in a compiled Rust core inside the Python process: no Docker, no PyBullet, no ROS.

It is experimental. The API is the usual compas_fab backend API, but what it supports is limited and may change. The documentation covers what it does, its trade-offs and how it works; SPIKE.md has the design notes, measurements and open issues.

Install

pip install compas_fab_native

Wheels are available for Linux (x86_64), macOS (Intel and Apple Silicon) and Windows (x64), for Python 3.9 and later. Elsewhere, pip builds from source, which needs a Rust toolchain.

Use

from compas_fab.backends import UR5Kinematics
from compas_fab_native import NativePlanner

planner = NativePlanner(UR5Kinematics())

More examples are in docs/files/.

Repository layout

Path Contents
crates/ Rust workspace: the core (motion_core), exact checks and sphere fitting (motion_exact), GPU kernels (motion_gpu), benchmarks (motion_bench) and Python bindings (motion_py)
src/compas_fab_native/ The compas_fab backend: NativePlanner and the robot model translation
tests/ Python tests of the backend; the Rust tests live in each crate
docs/ Documentation, examples and diagrams
demo/live_viewer/ Live browser demo
scripts/, fixtures/, results/ Benchmark tooling, robot and scene data, and recorded results

Development

With a Rust toolchain installed:

pip install -e ".[dev]"     # builds the extension; rerun after changing Rust code
python -m pytest
cargo test --workspace --exclude motion_py --release
ruff check && ruff format --check

Documentation: pip install -e ".[docs]", then mkdocs serve.

Releasing

  1. Run the prepare release workflow (Actions tab) with the kind of bump. It opens a release pull request that bumps the version and dates the changelog.
  2. Review and merge it. The release workflow then builds and tests the wheels and the source distribution, publishes them to PyPI, creates the GitHub release and deploys the documentation.

License

MIT, see LICENSE. Third-party code, data and algorithms used here are credited in NOTICE, with their licenses in licenses/, including those of the Rust crates compiled into the extension.

Metadata

Release files for compas-fab-native 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for compas-fab-native 0.1.0
File Size Uploaded Provenance Actions
compas_fab_native-0.1.0.tar.gz 137.7 kB With provenance Details for compas_fab_native-0.1.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for compas-fab-native 0.1.0
File Interpreter ABI Platform Actions
compas_fab_native-0.1.0-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details for compas_fab_native-0.1.0-cp39-abi3-win_amd64.whl
compas_fab_native-0.1.0-cp39-abi3-manylinux_2_28_x86_64.whl CPython 3.9 abi3 Linux glibc 2.28+ x86-64 Details for compas_fab_native-0.1.0-cp39-abi3-manylinux_2_28_x86_64.whl
compas_fab_native-0.1.0-cp39-abi3-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 10.12+ x86-64, macOS 11.0+ ARM64, macOS 10.12+ universal2 (ARM64, x86-64) Details for compas_fab_native-0.1.0-cp39-abi3-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl

Total release size: 7.1 MB

Release files / compas_fab_native-0.1.0.tar.gz

Download URL compas_fab_native-0.1.0.tar.gz
Size 137.7 kB
Tags Source
SHA-256 checksum
How to use checksums
b648e3d19957337adfd79f797f3cc34d094f6bf006fbed5169089f07e2cfea09
BLAKE2b-256 checksum
How to use checksums
9d6d542ad3f4f163924ce6b0d26db30814a03a144f77f960f7a7a8939d37bba8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2026.

Transparency log

Release files / compas_fab_native-0.1.0-cp39-abi3-win_amd64.whl

Download URL compas_fab_native-0.1.0-cp39-abi3-win_amd64.whl
Size 923.0 kB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
5b6edd25e15f7086af07d337d29040ec17c93a7fa7fac404904ffcb9036dd4a7
BLAKE2b-256 checksum
How to use checksums
c5f4c760680f274626b60642b8749a6843e59b8f0ddafe220cc4514475d83b57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2026.

Transparency log

Release files / compas_fab_native-0.1.0-cp39-abi3-manylinux_2_28_x86_64.whl

Download URL compas_fab_native-0.1.0-cp39-abi3-manylinux_2_28_x86_64.whl
Size 4.1 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
53192d9374b1085ef7077c304c571690357d9e00c6b2842d34739e95dce9e916
BLAKE2b-256 checksum
How to use checksums
f56ae918d5409f73b153c54e78ac0c0938f96ff75b6a4b3a80df9e47a67902ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2026.

Transparency log

Release files / compas_fab_native-0.1.0-cp39-abi3-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl

Download URL compas_fab_native-0.1.0-cp39-abi3-macosx_10_12_universal2.macosx_10_12_x86_64.macosx_11_0_arm64.whl
Size 2.0 MB
Tags CPython 3.9 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ac4fc2a75326b93f2a0514b69191e45106cb613a53cb1feb23d45daf221e1377
BLAKE2b-256 checksum
How to use checksums
5f2549f857b52c348ba4987c098975d901cea74162a3fb7423d9473678c3f6f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2026.

Transparency log

Security for compas-fab-native 0.1.0

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.

Full provenance

All 4 files in this release have been uploaded with provenance metadata.

Select from 4 files

Attestation for compas_fab_native-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 12, 2026.

Transparency log

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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

4 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page