Skip to main content

inventor-kit

IDW saved 2D display opens in the Viewer by default (partial support): Python API and Viewer.

English | 日本語

Read Autodesk Inventor document metadata and saved part geometry with a Rust parser and a Python API. Supported geometry can be converted to cq_acis.AcisModel and CadQuery objects. Runtime use does not require network access, Inventor, Windows, or user-provided schemas.

IPT → CFB / RSe → saved SAB / ASM → acis-core → AcisModel → CadQuery
IAM → saved references and placements → local part resolution → CadQuery Assembly

The parser supports a limited set of validated format profiles. It does not determine the current Model State, reevaluate feature history, or approximate unsupported geometry.

v0.4.0 adds body selection and IPT/IAM batch conversion.

v0.5.0 adds IDW sheet inventories and JSON reports, and per-sheet SVG export. See the release notes for supported drawing profiles, line styles and platform checks. Drawing support remains experimental and partial; physical scale and native rendering equivalence are unverified.

The release version is defined in Cargo.toml; see version management for the update command. The writer requires cq-acis 0.3.12 or later in the 0.3 series; see the writer guide.

Installation

Requires Python 3.11 or later, cq-acis>=0.3.12,<0.4, and shared model API 2. Where compatible published wheels are available, install with:

python -m pip install inventor-kit

Source builds use Rust 1.93, maturin, and acis-core / acis-py-bridge 0.3.12 from crates.io. See the development guide and release requirements.

Reading parts

import inventor_kit as ik
import cadquery as cq

doc = ik.read_file("part.ipt")
print(doc.summary["status"], doc.summary["diagnostics"])
if doc.model is not None:
    shape = doc.to_cadquery()  # Raises for unsupported surfaces, trims, etc.
    cq.exporters.export(shape, "part.step")

For metadata alone, use inspect_file, which does not import the Python geometry modules.

info = ik.inspect_file("part.ipt").metadata
for prop in info.find_properties(semantic_name="part_number"):
    print(prop.value, prop.source.stream, prop.state_binding)
python -m inventor_kit part.ipt
python -m inventor_kit part.ipt --step part.step
python -m inventor_kit drawing.idw --metadata-only
python -m inventor_kit part.ipt --list-candidates

For local visual inspection of parts and saved assemblies, install the optional viewer.

python -m pip install 'inventor-kit[viewer]'
python -m inventor_kit.viewer part.ipt

Inventor Kit viewer displaying the NIST CTC 03 model

Model: NIST CTC 03 (saved geometry).

Reading assemblies

assembly = ik.read_assembly_file("assembly.iam", search_roots=["parts"])
converted = assembly.to_cadquery(allow_unverified_state=True, allow_partial=True)
print(converted.omissions, converted.reference_issues)
report = converted.export_step("assembly.step", allow_partial=True)

Using saved placements requires explicit opt-in. Missing parts and unsupported geometry remain recorded in the result. Because the current state is unverified, complete is False. Assembly STEP export refuses to overwrite existing files and writes provenance and omission details to an accompanying JSON report.

Limits and supported scope

limits = ik.Limits(max_file_bytes=32 * 1024 * 1024, max_candidates=16)
doc = ik.read_file("part.ipt", limits=limits)
print(ik.capabilities())

Limits can be lowered per document. They do not guarantee bounds on process memory, runtime, or OCCT computation. See the API guide for defaults, diagnostics, and saved candidate selection.

Guide Contents
Supported scope Format profiles and geometry, state, and assembly limitations
API Metadata, saved candidates, units, reference resolution, and limits
Validation Regression and holdout checks, comparison evidence, and completed validation
Development Builds, tests, fuzzing, and public directory roles
Experimental part writer Standalone IPTs from CadQuery or STEP
Releasing Wheels, sdists, CI, and publication requirements
Format references Implementation references and licenses

To bundle authored IPTs into an IAM, see the assembly writer: new_assembly and write-assembly. Select Inventor 2026 or 2027 with target_year (API) or --target-year (CLI); 2027 remains the default. Both bounded profiles passed native open/save/reopen and moved-bundle qualification.

Public samples are validated against pinned hashes and sources; the CAD files themselves are excluded from distribution packages.

License

inventor-kit is source-available under PolyForm Noncommercial 1.0.0. For use outside PolyForm's permissions, UnRobotics Inc. offers separate commercial licenses. See licensing details for scope, earlier MIT permissions, and third-party license conditions.

Required Notice: inventor-kit is licensed by UnRobotics Inc. (https://www.un-robotics.com/).

Required Notice: inventor-kit 0.3.0 and later offer new material under PolyForm Noncommercial 1.0.0; separate commercial licenses are available.

Metadata

Release files for inventor-kit 0.9.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 inventor-kit 0.9.0
File Size Uploaded Provenance Actions
inventor_kit-0.9.0.tar.gz 1.3 MB With provenance Details for inventor_kit-0.9.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for inventor-kit 0.9.0
File Actions
inventor_kit-0.9.0-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details for inventor_kit-0.9.0-cp310-abi3-win_amd64.whl
inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details for inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64 Details for inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
inventor_kit-0.9.0-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details for inventor_kit-0.9.0-cp310-abi3-macosx_11_0_arm64.whl
inventor_kit-0.9.0-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details for inventor_kit-0.9.0-cp310-abi3-macosx_10_12_x86_64.whl

Total release size: 14.8 MB

Release files / inventor_kit-0.9.0.tar.gz

Download URL inventor_kit-0.9.0.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
5a7ffaece067663cf88b068904df2f43ea9b033fc9260c105626b9debb94c24a
BLAKE2b-256 checksum
How to use checksums
e82097707161af69634e00a480fa165503e29f309a7a31f1002828eafac329f0
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 22, 2026.

Transparency log

Release files / inventor_kit-0.9.0-cp310-abi3-win_amd64.whl

Download URL inventor_kit-0.9.0-cp310-abi3-win_amd64.whl
Size 2.6 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
fd9f66bf95c4f2e44975ef2df79b2526799a69d4cbc561eb164686fc49584ce4
BLAKE2b-256 checksum
How to use checksums
bd822f51edd6ac07c5ed5cbcd4dac328959475cbda6dacd8ffab8f54ef3fe0f5
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 22, 2026.

Transparency log

Release files / inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
9257e96b64df64c957ffa762b0f807c407eadf6725da055e6359641809cf47c6
BLAKE2b-256 checksum
How to use checksums
f5c85806e806bcb1677c16a07dd051779b28a2def02a37df83950ba8a2f7d811
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 22, 2026.

Transparency log

Release files / inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL inventor_kit-0.9.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.7 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
bda036740b4b69618c558e33bca3587204a1bb298efb4230d8eae44988f99c1e
BLAKE2b-256 checksum
How to use checksums
8480b5b9c92a1f015cd41a9d7204de4d682c0de9278a4e1bbd659fd50de0b448
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 22, 2026.

Transparency log

Release files / inventor_kit-0.9.0-cp310-abi3-macosx_11_0_arm64.whl

Download URL inventor_kit-0.9.0-cp310-abi3-macosx_11_0_arm64.whl
Size 2.6 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
46e21619c4bb0b39f1b4e82952900a4c62f9056cd78360f8f5cf52fa787038a7
BLAKE2b-256 checksum
How to use checksums
535f84640fb4a14e4a368e42b477e79d1ac5125e417426b677758a5345e11193
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 22, 2026.

Transparency log

Release files / inventor_kit-0.9.0-cp310-abi3-macosx_10_12_x86_64.whl

Download URL inventor_kit-0.9.0-cp310-abi3-macosx_10_12_x86_64.whl
Size 2.7 MB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
56330e177671a1b667978faa4380d8cee33adcf0510daef1bb79a672bec42467
BLAKE2b-256 checksum
How to use checksums
6bc5d9be7d5e8b4acb458e8a3329a4675977d8c569eb558c936008b63f7c8da0
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 22, 2026.

Transparency log

Security for inventor-kit 0.9.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 6 files in this release have been uploaded with provenance metadata.

Select from 6 files

Attestation for inventor_kit-0.9.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 Oct 22, 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.

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