Skip to main content

ForgeCertify

The open standard for CAD geometry kernel certification.

Run 2,223 geometry tests against any B-rep kernel and receive a cryptographically signed result you can publish, audit, and reproduce.

pip install forgecertify
forgecertify run --kernel forgekernel

→ forgecertify.org


What it tests

Suite Tests Coverage
Boolean operations 412 Union, intersection, subtraction across degenerate and near-tangent geometry
B-rep topology 387 Vertex/edge/face/shell integrity, winding order, orientation
NURBS surfaces 298 Degree, knot vectors, G0/G1/G2 continuity, trimmed NURBS
Healing & repair 241 Gap filling, duplicate face removal, self-intersection repair
Topological naming 196 Persistent face/edge identity across edits — all 19 known failure modes
Import/export fidelity 318 STEP AP203/214/242, IGES 5.3, DXF, native .SFC round-trips
Direct modelling 174 Push/pull, move edge, offset, taper, history-free ops
Tolerance model 197 Chord height, angular tolerance, floating-point edge cases

Total: 2,223 tests · 91 test files · 0 failures on ForgeKernel


Quick start

# Install
pip install forgecertify

# List available kernel adapters
forgecertify kernels

# Run the full suite against ForgeKernel (reference implementation)
forgecertify run --kernel forgekernel --output ./results

# Run against manifold3d (requires: pip install manifold3d)
forgecertify run --kernel manifold3d

# Run against OpenCASCADE (requires: conda install -c conda-forge pythonocc-core)
forgecertify run --kernel ocp

# Run only fast tests
forgecertify run --kernel forgekernel -m "not slow"

# Verify a result file signature
forgecertify verify results/forgecertify-result-forgekernel.json

# Generate a signing keypair for your own results
forgecertify keygen --out-prefix my_kernel

Kernel adapters

ForgeCertify ships with adapters for 8 kernels:

Kernel Tier Install
ForgeKernel PRO (reference) bundled
manifold3d COMMUNITY pip install manifold3d
OCP / OCCT PRO conda install -c conda-forge pythonocc-core
CadQuery PRO pip install cadquery
CGAL COMMUNITY conda install -c conda-forge cgal
FreeCAD PRO conda install -c conda-forge freecad
Blender COMMUNITY pip install bpy
Parasolid PRO (stub) Siemens licence required

To certify your own kernel, implement KernelAdapter (see forgecertify/adapters/base.py) and pass --kernel your_module.


How certification works

  1. Run — forgecertify run invokes all 2,223 tests via your adapter
  2. Sign — results are signed with your Ed25519 private key
  3. Submit — upload the signed JSON at forgecertify.org/certify
  4. Publish — results are verified and added to the public ledger

Nothing is uploaded automatically. You own your results.


License

MIT © 2026 SKYFIRE Systems · forgecertify.org

Metadata

Release files for forgecertify 1.0.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 forgecertify 1.0.0
File Size Uploaded
forgecertify-1.0.0.tar.gz 351.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for forgecertify 1.0.0
File Interpreter ABI Platform
forgecertify-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 778.5 kB

Release files / forgecertify-1.0.0.tar.gz

Download URL forgecertify-1.0.0.tar.gz
Size 351.2 kB
Tags Source
SHA-256 checksum
How to use checksums
83184eac14d4c7bc76d1ed911882fa051aa66108d8359220deb326e4bff0337a
BLAKE2b-256 checksum
How to use checksums
d076bfed55286ec39fbcf6d1943457fd6cbc9ab75431287bae75a75dc9dc85a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / forgecertify-1.0.0-py3-none-any.whl

Download URL forgecertify-1.0.0-py3-none-any.whl
Size 427.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
966539ac5bf5d3430e04be27b672548ae1eccdff36fe8d7554da9e9a0e060b4a
BLAKE2b-256 checksum
How to use checksums
175eca37df45a48f4e6500c40f2a510048ced27ecc9d337d1f27383940897805
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 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