parasolid-kit
A schema-aware parser for Parasolid X_T and X_B transmit files. A safe Rust core handles parsing and geometry mapping; Python exposes immutable typed models and a command-line interface. The project focuses on reading and preserving the transmitted structure for inspection and conversion pipelines.
Rust applications can use parasolid-core directly, without Python.
Features
- Inspect headers and map supported topology, analytic geometry and NURBS to a typed source B-Rep.
- Compare X_T/X_B documents after pointer remapping and reconstruct an unmodified parsed X_B document byte-for-byte.
- Report structured diagnostics and enforce configurable resource limits.
- Use optional OCCT conversion, validated STEP export, CadQuery shapes and a local viewer with face/edge source picking, body visibility and section views.
Installation
Python 3.10+ is required. The base package has no runtime dependencies:
python -m pip install parasolid-kit
For STEP export and the viewer, install the OCCT profile:
python -m pip install "parasolid-kit[occt]"
See installation for platform requirements, the separate CadQuery profile, downloaded wheels and source builds.
Quick start
For an input covered by a built-in profile:
parasolid-kit inspect model.x_b # Header only; no schema catalog needed.
parasolid-kit check model.x_b # Parse and check the source B-Rep.
parasolid-kit check model.x_t --json # Structured report.
parasolid-kit compare model.x_t model.x_b
The same workflow is available in Python:
from parasolid_kit import read_brep
parsed = read_brep("model.x_b")
print(parsed.summary.to_dict())
print(parsed.complete)
print(parsed.brep.diagnostics)
complete describes source B-Rep mapping. Geometry conversion and a native CAD
file's saved configuration have separate requirements. Use check when
completeness must affect the CLI exit code. See the Python API
and CLI reference for lower-level operations and diagnostics.
Local viewer
To try the viewer from a source checkout with Rust 1.88+ installed:
python -m pip install ".[occt]"
parasolid-kit viewer model.x_t --source-unit mm
Choose the input's actual unit; it is never inferred. view is an alias.
The command opens a local URL; Ctrl-C stops serving and keeps the generated
files. Node.js and a CDN are unnecessary at runtime.
Project-authored synthetic two-body fixture, rendered with Linux/SwiftShader. See preview controls and saving, display limits and viewer development.
Supported inputs
Built-in profiles cover exact Onshape V30/V13/current, extracted iCAD and
SolidWorks partition keys. Each has verified_subset coverage and requires
zero user fields. Consult the support matrix
for exact keys and geometry limits; matching a key does not guarantee that
all records are supported. Other keys or uncovered types need an explicit
schema catalog.
Native CAD containers, assemblies and SolidWorks delta application are outside the complete parser contract. Parsing, OCCT conversion, STEP export and preview have separate coverage. See format support and limitations.
Documentation
| Topic | Guide |
|---|---|
| Setup and optional runtimes | Installation |
| Python models, conversion and CLI | API reference |
| External schema providers | Schema catalogs |
| Supported inputs and geometry | Support matrix |
| Profile sources and validation | Built-in profiles |
| Release changes | Changelog |
| Maintainer verification | Release gates, corpus policy |
License
The distribution is licensed under MIT AND Apache-2.0: the original
implementation uses MIT, and adopted partial readers use
Apache-2.0. See reader provenance
and viewer notices.
Metadata
Release files for parasolid-kit 0.3.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| parasolid_kit-0.3.7.tar.gz | 1.2 MB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| parasolid_kit-0.3.7-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| parasolid_kit-0.3.7-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| parasolid_kit-0.3.7-cp310-abi3-macosx_11_0_arm64.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64 | Details |
| parasolid_kit-0.3.7-cp310-abi3-macosx_10_12_x86_64.whl | CPython 3.10 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 6.4 MB
Release files / parasolid_kit-0.3.7.tar.gz
| Download URL | parasolid_kit-0.3.7.tar.gz |
|---|---|
| Size | 1.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9983e489185440aaa61b7f40e81e491f8b5a185cd7b523d4d30628a6a53049d0
|
|
BLAKE2b-256 checksum How to use checksums |
116f589fe32db0f5351e1cee00bc0eef5b62ebb1f7cd98ca1efa0267a11bb786
|
| 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 Oct 6, 2026.
Transparency logRelease files / parasolid_kit-0.3.7-cp310-abi3-win_amd64.whl
| Download URL | parasolid_kit-0.3.7-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
18c75c1c1cc34f144ca38b053dc6965361d8f3ad0286a3796ed436566d43ed1a
|
|
BLAKE2b-256 checksum How to use checksums |
6c36fc1ff5550aed74a626fd4c1ad96659f17c6e8904bc91922f8b14403a3c7d
|
| 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 Oct 6, 2026.
Transparency logRelease files / parasolid_kit-0.3.7-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | parasolid_kit-0.3.7-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
6e3b90e9966b7194f5b8360357647101e9d1b9c298c221b587960da6cad3e6a2
|
|
BLAKE2b-256 checksum How to use checksums |
d8e3b0a98a69774dda4436df6933c2ebc0ec2e50f25c2cc76852530aad780b89
|
| 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 Oct 6, 2026.
Transparency logRelease files / parasolid_kit-0.3.7-cp310-abi3-macosx_11_0_arm64.whl
| Download URL | parasolid_kit-0.3.7-cp310-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ea267a293607302f77c719a324542ab3dceb75eaf736882ed217e258e2c47d2b
|
|
BLAKE2b-256 checksum How to use checksums |
fa50afd04f4c67125a2e61d739db7ec9465b58fafa92d8d78a0533a47d1820be
|
| 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 Oct 6, 2026.
Transparency logRelease files / parasolid_kit-0.3.7-cp310-abi3-macosx_10_12_x86_64.whl
| Download URL | parasolid_kit-0.3.7-cp310-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 1.3 MB |
| Tags | CPython 3.10 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
2261672972cc3bf47582cfdb17afd50042490daeef453dc39d83e0f397637c00
|
|
BLAKE2b-256 checksum How to use checksums |
821325feda08290ecf3b31243d0fb81abd0dd9713e0c52e957aab26c22a3885c
|
| 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 Oct 6, 2026.
Transparency log