Skip to main content

Geometer

Geometer is a generic C++ geometry library with an executable, Python package, and browser WASM interfaces. It provides STEP conversion, hidden-line projection (HLR), planar geometry, and mesh illustration. Board/domain policy and application rendering decisions belong to callers, not the geometry kernel.

Capabilities And Maturity

Capability Use and maturity
STEP bounds, GLB conversion, HLR, planar STEP synthesis Supported geometry APIs. Model bounds has promoted generated contracts; HLR's generated contracts remain pilots.
Clipper2 Boolean/offset, planar batch solve and triangulation Supported polygonized planar workflows; packed interfaces remain handwritten.
Fast vector HLR, colored STEP tessellation and mesh illustration Browser APIs plus direct C++, native IPC, Rust and Python illustration since 2026.9.6; see the STEP-to-SVG guide. Demo applications are evaluation tools, not production renderers.
Analytic line/arc planar Boolean Experimental, not production-ready. May fail closed on valid inputs. Not the dependable whole-board/layer copper-union path; prefer Clipper2 when polygonized output is suitable.
Persistent STEP-topology sessions Experimental native-only subset. Structural declarations do not imply runtime availability.

Contract promotion and solver production readiness are separate. See contract authority and the analytic decision.

Choose An Interface

Need Entry point
Keep one executable running; send bytes and receive structured results Persistent executable IPC: Python, Node/TypeScript and Rust clients
Convenient Python file/model operations Python package
File conversion or scripting CLI commands
Geometry in a browser or Worker WASM and TypeScript clients
Embed in native C++ STEP and planar APIs
Manage byte buffers across a foreign-function boundary C ABI and generic operations

Not every operation is exposed through IPC. Check the executable's negotiated catalog and the generated operation reference.

Install And Try

Install the Python distribution (import name: geometer):

python -m pip install wn-geometer
geometer --version

Convert a STEP file with the executable-backed Python API:

from pathlib import Path
import geometer

Path("part.glb").write_bytes(geometer.model_to_glb(Path("part.step")))

Wheels bundle the native executable and install a geometer console command. For persistent processes, use the IPC quick start. Pin the package version in your application's dependency lock for repeatability.

Source checkouts provide native artifacts under dist/native/<platform>/, browser WASM under dist/wasm/browser/, and the generated ESM package under dist/wasm/npm/geometer/. The ESM artifact is not a claim of npm publication.

Documentation And Examples

Browse the generated HTML documentation or use the authored Markdown sources below.

Start with the headless Python example or HLR Lab. Analytic and topology demos remain experimental; retention does not imply production support. See the demo audit for verification limits.

Contributing And License

See the developer guide for native/WASM builds and required release checks. OCCT is generated dependency state under .deps/; documentation work does not require rebuilding it. Releases follow date-based versioning.

MIT. See LICENSE.

Release files for wn-geometer 2026.9.10

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

Built distributions (wheels)

Table of built distributions (wheels) for wn-geometer 2026.9.10
File
wn_geometer-2026.9.10-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
wn_geometer-2026.9.10-py3-none-manylinux_2_35_x86_64.whl Python 3 none Linux glibc 2.35+ x86-64 Details
wn_geometer-2026.9.10-py3-none-manylinux_2_35_aarch64.whl Python 3 none Linux glibc 2.35+ ARM64 Details
wn_geometer-2026.9.10-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 52.5 MB

Release files / wn_geometer-2026.9.10-py3-none-win_amd64.whl

Download URL wn_geometer-2026.9.10-py3-none-win_amd64.whl
Size 8.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
1ca60eb15b2f1a98fe8de2bb637c32c260e41ccb7852b7c7290cd35cf56d3297
BLAKE2b-256 checksum
How to use checksums
8c5958c040690a9332c0a299649358db5f463d0c628065ed47123fd9d1b10fd3
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 Sep 11, 2026.

Transparency log

Release files / wn_geometer-2026.9.10-py3-none-manylinux_2_35_x86_64.whl

Download URL wn_geometer-2026.9.10-py3-none-manylinux_2_35_x86_64.whl
Size 16.3 MB
Tags Linux glibc 2.35+ x86-64 Python 3
SHA-256 checksum
How to use checksums
4dab8bd5c3062e71e1762a237e93efafa4dbc87fb464f5a01a835c644e07a7ce
BLAKE2b-256 checksum
How to use checksums
18d81c70bded4d5aaa37744f1278d9198eb5edd2cc8766847940eb3b39c549c4
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 Sep 11, 2026.

Transparency log

Release files / wn_geometer-2026.9.10-py3-none-manylinux_2_35_aarch64.whl

Download URL wn_geometer-2026.9.10-py3-none-manylinux_2_35_aarch64.whl
Size 15.5 MB
Tags Linux glibc 2.35+ ARM64 Python 3
SHA-256 checksum
How to use checksums
85f83e55cd81fb19f67e27766286e9abb8da8ecfb3039d6c3e2baa6dbf9f307e
BLAKE2b-256 checksum
How to use checksums
ac7b0d439279a64cb90c3f6d209192160c7c3eb548ef627aae3567eb105f938e
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 Sep 11, 2026.

Transparency log

Release files / wn_geometer-2026.9.10-py3-none-macosx_11_0_arm64.whl

Download URL wn_geometer-2026.9.10-py3-none-macosx_11_0_arm64.whl
Size 12.2 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b7e0c4fbe06bf6efe7b8d0406bdf8a388556e619572d2317e0cc259e629ce315
BLAKE2b-256 checksum
How to use checksums
1ccac8fc17941ca9b961c67fd97ffa76b2283b37ddd71a1c0c747a59f5357e03
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 Sep 11, 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