Skip to main content

opencad

The OpenCAD core: geometry kernel, constraint solver, feature tree, and the fluent modelling API — with no web framework and no network dependency.

Install:

pip install opencad          # pydantic + numpy only
pip install "opencad[occt]"  # add the OCCT B-rep backend
pip install "opencad[full]"  # OCCT + scipy solver + networkx graph analysis

Use:

from opencad import Part, Sketch

profile = Sketch(name="Plate").rect(80, 30).circle(3, center=(8, 8), subtract=True)
plate = Part().extrude(profile, depth=4, name="Plate")
plate.fillet(edges="all", radius=1.0)

Every fluent call appends a node to a rebuildable feature DAG, which you can serialize, edit, and replay. See the repository ARCHITECTURE.md for the kernel/solver/tree design and TOPOLOGY.md for topological naming.

Packages

Module Responsibility
opencad Fluent Part/Sketch API, RuntimeContext, CLI, design artifacts
opencad.kernel B-rep operations, OCCT and analytic backends, KernelClient
opencad.solver 2-D constraint solving (NumPy/SciPy and SolveSpace backends)
opencad.tree Feature DAG, incremental rebuild, branching, expressions

Related distributions

  • opencad-agent — natural-language modelling on top of this package
  • opencad-backend — FastAPI HTTP service exposing all of the above

Tests

pytest

The suite runs against this package alone. A few integration tests exercise repository files (examples/, docs/schemas/) and skip automatically when the package is tested outside a monorepo checkout.

Download files

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

Source Distribution

opencad-0.2.3.tar.gz (79.9 kB view details)

Uploaded Source

Built Distribution

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

opencad-0.2.3-py3-none-any.whl (93.2 kB view details)

Uploaded Python 3

File details

Details for the file opencad-0.2.3.tar.gz.

File metadata

  • Download URL: opencad-0.2.3.tar.gz
  • Upload date:
  • Size: 79.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.2

File hashes

Hashes for opencad-0.2.3.tar.gz
Algorithm Hash digest
SHA256 48c80a9bcf8b56ec09bae4527bbcb59271f42b12d9f8fc06826a5d80a0a93945
MD5 d9e9bbdad7428648191ee18228d99f94
BLAKE2b-256 2b59573e6c7b893a9191ce9a6cc61350b4d65c62301da2a04719d234b68ea3da

See more details on using hashes here.

File details

Details for the file opencad-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: opencad-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 93.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.2

File hashes

Hashes for opencad-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 36ab5f56529093d346924fd9fc395798da5dab1a3c6aef65c4d4f7d57b3857b4
MD5 9d189780ee23c75546980eeb3f00c1aa
BLAKE2b-256 a5ab04ca54e97484506ed3475cc835bb424871643c614543f39bad9301ae43b3

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.4

2 files

This release

0.2.3 This release

2 files

0.2.1

2 files

0.2.0

2 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