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

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.19
File
wn_geometer-2026.9.19-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
wn_geometer-2026.9.19-py3-none-manylinux_2_35_x86_64.whl Python 3 none Linux glibc 2.35+ x86-64 Details
wn_geometer-2026.9.19-py3-none-manylinux_2_35_aarch64.whl Python 3 none Linux glibc 2.35+ ARM64 Details
wn_geometer-2026.9.19-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 53.8 MB

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

Download URL wn_geometer-2026.9.19-py3-none-win_amd64.whl
Size 8.8 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
c6746e22252a81028b8231f6d0f2b60f1ed6f5fe6c2aaa8cb23c40003b53ca43
BLAKE2b-256 checksum
How to use checksums
f0243cf6fa8114c03f5a415f9b6fffaed27e8a4288014579a59cc52893e57dbc
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 20, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.19-py3-none-manylinux_2_35_x86_64.whl
Size 16.7 MB
Tags Linux glibc 2.35+ x86-64 Python 3
SHA-256 checksum
How to use checksums
7546b6dda04ec9390eea71b3698bb132c9c2f221da78c6f9687ea19fddffc405
BLAKE2b-256 checksum
How to use checksums
3f79441cfdeef1bfef3bd8a0f88e864d7c020a81ad180cbaa81b09e280875081
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 20, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.19-py3-none-manylinux_2_35_aarch64.whl
Size 15.8 MB
Tags Linux glibc 2.35+ ARM64 Python 3
SHA-256 checksum
How to use checksums
2acb86a3017461830305b1783f940d7361707c3d6657a301d2f3c5b244d6319c
BLAKE2b-256 checksum
How to use checksums
79bf4930ea08ca81b3ad8a66a9b55df6c7d7a65ecc787c667bd4634f4cbda6fd
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 20, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.19-py3-none-macosx_11_0_arm64.whl
Size 12.5 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f0b066bc4d54b97d6c2a34db2e93acc109709de4713c00291bb147d763552595
BLAKE2b-256 checksum
How to use checksums
cef07400dedab20851ed54b388bee070eebd9f1f2568933b33c518cd3826339b
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 20, 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