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

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

Download URL wn_geometer-2026.9.6-py3-none-win_amd64.whl
Size 8.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
e426062a772742de5474b00116963d7fa66f7a261ec7ed2aae4eabe14a3b1bbd
BLAKE2b-256 checksum
How to use checksums
ab9ea296af79ccea090ad2c89b747ac038f0791943e07ab153ed5be351eed31b
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 6, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.6-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
d35714c74f73a69906338dd8be891384d12fce7be8754d02ff7583cb629e5cb5
BLAKE2b-256 checksum
How to use checksums
f6a57028267b95b87f651a26bb48d6d823ba70c0b4a91cfa2e736a1bb6aaa27f
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 6, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.6-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
37791e3ab3833332edb3de2d2cad7c839aa2e3e87f60d515faf1068d72fce218
BLAKE2b-256 checksum
How to use checksums
4aad78678412289ff576431731a41f17a4141e74b9a40b57a116e2331fa04378
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 6, 2026.

Transparency log

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

Download URL wn_geometer-2026.9.6-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
2d6097d54a93ab522e3346f753e31d145527409b61edffa85b04dc2b393b225f
BLAKE2b-256 checksum
How to use checksums
0f88e176b10b628271b9253fec74c7d4825852bfee67523909fb4ee43306fe6a
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 6, 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