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.11 or later in the 0.3 series; see the writer guide.

Installation

Requires Python 3.11 or later, cq-acis>=0.3.11,<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.11 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. The bounded profile 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.8.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.8.0
File Size Uploaded
inventor_kit-0.8.0.tar.gz 1.2 MB Details

Built distributions (wheels)

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

Total release size: 13.9 MB

Release files / inventor_kit-0.8.0.tar.gz

Download URL inventor_kit-0.8.0.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
c6e58afabf34a54997ee221724b875bf908309192254381eacd28474eed422ef
BLAKE2b-256 checksum
How to use checksums
f939225c0545227409d89398e5a0bf3cb4431068eb998ccbb755a310016b5a84
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 12, 2026.

Transparency log

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

Download URL inventor_kit-0.8.0-cp310-abi3-win_amd64.whl
Size 2.4 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
dd03cdf3204009de5f6ae15dfa6de699bc1af7e94539f2173e6939c16cdcb99c
BLAKE2b-256 checksum
How to use checksums
7ac83a3f10052b51ad9155010cff66666767cbea7fa7fe74a4913e64596d4387
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 12, 2026.

Transparency log

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

Download URL inventor_kit-0.8.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 2.7 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
f3e68b895cd3c9e9f36bf32c74cccb1462a3623acc1776d5025e8459fe848c8a
BLAKE2b-256 checksum
How to use checksums
b7db2582f2cbc87ce7a0cc32933fbfbb8747ad7105eb9fa62c514f505b57e290
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 12, 2026.

Transparency log

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

Download URL inventor_kit-0.8.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 2.6 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
7aadb7ea715c9b130a6317c3d4144c1716b8791652f1a0ba19ff2531a9045cd9
BLAKE2b-256 checksum
How to use checksums
da80813b263dc6382452e93f526509bbd38bd21a00932df6b13a831923809675
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 12, 2026.

Transparency log

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

Download URL inventor_kit-0.8.0-cp310-abi3-macosx_11_0_arm64.whl
Size 2.5 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
04f76b648f70871c74355e6217272e93f860836fb5bcf883e0364f6c4f63829f
BLAKE2b-256 checksum
How to use checksums
9d61af2fc2f38e56e2bfb101219da1636e3cbb56a9c284662fc7dd456481744c
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 12, 2026.

Transparency log

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

Download URL inventor_kit-0.8.0-cp310-abi3-macosx_10_12_x86_64.whl
Size 2.6 MB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
7753d3a13a0d9243c8a1991a7260abf77be8928e1abe5823e135507d5b07837e
BLAKE2b-256 checksum
How to use checksums
e42c69ed906baa7850a64cd2bfeb7205e535a83399bd93a89019c5d5eed1793f
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 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.8.0 This release

6 release files

0.7.0

5 release files

0.6.0

5 release files

0.5.0

5 release files

0.4.0

5 release files

0.2.0

5 release files

0.1.0

5 release files

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