opencad-backend
FastAPI transport over the OpenCAD core. This is the only distribution in the
repository that depends on a web framework — opencad and opencad-agent
carry no FastAPI, Starlette, httpx, or uvicorn.
Run
uv run --package opencad-backend --extra occt \
python -m uvicorn opencad_server.app:app --reload --port 8000
opencad_server.app mounts every service router in one process:
| Prefix | Router | Service |
|---|---|---|
/kernel |
opencad_server.kernel_router |
Geometry operations, topology, mesh |
/solver |
opencad_server.solver_router |
2-D constraint solving and diagnostics |
/tree |
opencad_server.tree_router |
Feature DAG CRUD, rebuild, branching |
/agent |
opencad_server.agent_router |
Natural-language modelling |
Each router module also exposes create_app() and a module-level app, so any
service can run standalone — for example opencad_server.kernel_router:app.
Modules
app.py— aggregate app, mounts every routerapi_app.py— shared FastAPI factory with production CORS/docs defaultshttp_kernel_client.py— the only outbound HTTP client to the kernel; implementsopencad.kernel.client.KernelClient*_router.py— one router per service
Kernel transport
Core packages depend on the KernelClient protocol, never on a transport. This
app chooses the implementation at startup: HttpKernelClient when
OPENCAD_TREE_LIVE_KERNEL / OPENCAD_AGENT_LIVE_KERNEL are true, otherwise the
in-process default.
Tests
OPENCAD_KERNEL_BACKEND=analytic pytest
tests/test_core_boundary.py parses every core module and fails if any of them
imports FastAPI, Starlette, httpx, uvicorn, python-dotenv, or opencad_server.
Metadata
Release files for opencad-backend 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| opencad_backend-0.2.3.tar.gz | 21.5 kB | Without provenance | Details for opencad_backend-0.2.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| opencad_backend-0.2.3-py3-none-any.whl | Python 3 | none | any | Details for opencad_backend-0.2.3-py3-none-any.whl |
Total release size: 39.6 kB
Release files / opencad_backend-0.2.3.tar.gz
| Download URL | opencad_backend-0.2.3.tar.gz |
|---|---|
| Size | 21.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7540e6ef58b34844255dbe0535ea4ba9e5808fe058c5a57b8e021cf8966b3ac
|
|
BLAKE2b-256 checksum How to use checksums |
8237a89fcb2459406a90963a5e139a24726877b4b9270218349280b075150757
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Release files / opencad_backend-0.2.3-py3-none-any.whl
| Download URL | opencad_backend-0.2.3-py3-none-any.whl |
|---|---|
| Size | 18.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bf4c90499922edc7aca8957c8bbe1b4ce865e660f1a1769fa87d9023f73e752c
|
|
BLAKE2b-256 checksum How to use checksums |
9c70bf9828aee3d8eb2bc95ed88b4762239b69bcd7109b0725a9380da488461b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Security for opencad-backend 0.2.3
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.