Skip to main content

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.

Viewer showing two boxes and the selected face's source ID, node and byte range

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.3

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

Source distribution (sdist)

Source distribution for parasolid-kit 0.3.3
File Size Uploaded
parasolid_kit-0.3.3.tar.gz 1.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for parasolid-kit 0.3.3
File
parasolid_kit-0.3.3-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
parasolid_kit-0.3.3-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.3-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
parasolid_kit-0.3.3-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details

Total release size: 6.3 MB

Release files / parasolid_kit-0.3.3.tar.gz

Download URL parasolid_kit-0.3.3.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
7fc00b9e1679400f9305521dd996faa2c1f463e32846f79fef0a2a5a860005cb
BLAKE2b-256 checksum
How to use checksums
01c7b670ce2e3a69d012bc1a72b1135814681c2d44c8df4538d43f270c81bf06
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 2, 2026.

Transparency log

Release files / parasolid_kit-0.3.3-cp310-abi3-win_amd64.whl

Download URL parasolid_kit-0.3.3-cp310-abi3-win_amd64.whl
Size 1.2 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
6002a42ffe221c037a8acbd63ab31fb8a105fe2477806afde905c9e3e604d898
BLAKE2b-256 checksum
How to use checksums
61868d2e187dd727ca506a55e16cff6cffc9fb5686396c1e10fc42457a8b99ba
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 2, 2026.

Transparency log

Release files / parasolid_kit-0.3.3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL parasolid_kit-0.3.3-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
d5d892b8085af4f7d2ff2e1c572f30087d6c24ae0e95fa1fe6edfb10d0c73dbb
BLAKE2b-256 checksum
How to use checksums
d25b1acf0307d161c1d4ad41121b0b89f5e86d16c82cdbaf2dfedfc6260c98c7
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 2, 2026.

Transparency log

Release files / parasolid_kit-0.3.3-cp310-abi3-macosx_11_0_arm64.whl

Download URL parasolid_kit-0.3.3-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
dcc6b1429ff89e51c0a043c274539ecabe66d4c5571bb621f8c4253ab7548eee
BLAKE2b-256 checksum
How to use checksums
c96c6d8dcba30e7279df7512bdb8f8fd362045ede16a3d04d94da3cd63e75df9
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 2, 2026.

Transparency log

Release files / parasolid_kit-0.3.3-cp310-abi3-macosx_10_12_x86_64.whl

Download URL parasolid_kit-0.3.3-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
20ed8f196980790f5b4947031fe8270e4d10f86bd69787cde91b0bf12e2f4ca6
BLAKE2b-256 checksum
How to use checksums
ad79de23ad3edd9f5a38e0dc237dc71573869cd12e574b9b1915df4b16fcecd8
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 2, 2026.

Transparency log
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