Skip to main content

The open standard for CAD geometry kernel certification — 2,223 tests, signed results, 8 kernel adapters

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

forgecertify-1.0.0.tar.gz (351.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

forgecertify-1.0.0-py3-none-any.whl (427.3 kB view details)

Uploaded Python 3

File details

Details for the file forgecertify-1.0.0.tar.gz.

File metadata

  • Download URL: forgecertify-1.0.0.tar.gz
  • Upload date:
  • Size: 351.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for forgecertify-1.0.0.tar.gz
Algorithm Hash digest
SHA256 83184eac14d4c7bc76d1ed911882fa051aa66108d8359220deb326e4bff0337a
MD5 a21c492030d04ef4d1136527b211a80e
BLAKE2b-256 d076bfed55286ec39fbcf6d1943457fd6cbc9ab75431287bae75a75dc9dc85a8

See more details on using hashes here.

File details

Details for the file forgecertify-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: forgecertify-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 427.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for forgecertify-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 966539ac5bf5d3430e04be27b672548ae1eccdff36fe8d7554da9e9a0e060b4a
MD5 0c9d198d837f79251ef9392f3affe0cb
BLAKE2b-256 175eca37df45a48f4e6500c40f2a510048ced27ecc9d337d1f27383940897805

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page