Skip to content

Project Registration: OCCTSwift #2

Description

@gsdali

Project name

OCCTSwift

Type

wrapper

Category

swift

Tagline

Comprehensive Swift wrapper for OCCT — B-Rep solid modeling for macOS, iOS, visionOS, tvOS.

Description

OCCTSwift is a comprehensive Swift wrapper for OpenCASCADE Technology, providing B-Rep solid modeling, OCAF document handling, BRepGraph topology analysis, drawing/projection, and ML-friendly graph samplers natively on Apple platforms. It pins to OCCT 8.0.0 GA (released 2026-05-07) and ships a pre-built OCCT.xcframework so consumers don't need to build OCCT themselves. Roughly 4,279 OCCT operations are wrapped across the public Swift API.

The kernel anchors a layered family of public Swift packages, each with a narrow role: OCCTSwiftIO (headless STEP / IGES / STL / OBJ / BREP / glTF I/O, no Viewport dependency), OCCTSwiftMesh (mesh decimation / smoothing / repair via vendored meshoptimizer), OCCTSwiftViewport (Metal-based 3D viewport for UIKit / AppKit / SwiftUI), OCCTSwiftTools (kernel ↔ viewport bridge: converts Shape to ViewportBody with picking metadata), OCCTSwiftAIS (high-level interactive services — selection-from-topology, manipulator widgets, dimension annotations, scene objects), OCCTSwiftScripts (the occtkit CLI with 26+ JSON-driven verbs and a script harness), and OCCTMCP (MCP server exposing OCCT modeling to LLM agents). Lower layers don't know about upper layers, so headless / batch / server-side users can depend on the kernel alone without pulling Metal in transitively.

All public packages graduated to SemVer-stable v1.0.0 simultaneously on 2026-05-07 alongside OCCT 8.0.0 GA. Pre-1.0 was a coordinated soak across rc3 → rc4 → rc5 → beta1 → beta2 → GA spanning ~170 OCCTSwift point releases. From v1.0 onward the cohort follows SemVer strictly. See the ecosystem map for an architecture overview and a "when to use which" guide.

OCCTSwift is the Swift-native choice for engineering CAD, parametric modelling, design automation, ML feature extraction over B-Rep geometry, and AI-driven CAD authoring on Apple platforms. The whole cohort is indexed on Swift Package Index (SwiftPackageIndex/PackageList#13496).

Software type

open-source

License

LGPL-2.1-only

Homepage URL

https://github.com/gsdali/OCCTSwift

Repository URL

https://github.com/gsdali/OCCTSwift

Documentation URL

https://github.com/gsdali/OCCTSwift/blob/main/docs/ecosystem.md

Industries

General, Software Development, Engineering, Manufacturing

Scopes

Wrapper, CAD, 3D modeling, Geometry Processing, Data Exchange, STEP, Visualization, Mesh Generation

Languages

Swift, Objective-C++, C++

Platforms

  • macOS
  • iOS

Logo or screenshot URL

No response

Affiliation confirmation

  • I am the project maintainer, OR I have permission to register this project on the maintainer's behalf.
  • I confirm the information above is accurate to the best of my knowledge.

Additional context

OCCTSwift is the keystone of an 8-package public ecosystem (OCCTSwift, OCCTSwiftIO, OCCTSwiftMesh, OCCTSwiftViewport, OCCTSwiftTools, OCCTSwiftAIS, OCCTSwiftScripts, OCCTMCP) that all graduated to SemVer-stable v1.0.0 alongside OCCT 8.0.0 GA. If a single registry entry per project is preferred, the kernel (this submission) is the canonical entry point and the ecosystem map at docs/ecosystem.md directs readers to the right sibling for a given task. Happy to file additional entries for specific siblings if the registry prefers per-package granularity — let me know.

Notable ecosystem features that exercise OCCT 8.0 GA capabilities:

  • Full BRepGraph (graph-based topology) wrapping including the EditorView mutation surface and MeshView two-tier mesh storage from OCCT 8.0 beta1.
  • TopologyGraph.exportForML() (lifted to OCCTSwiftIO in v0.171.0) — flat / COO-format graph tensors for GNN / UV-Net / BRepNet pipelines, with face UV-grid samplers and edge curve samplers in the kernel.
  • Per-input boolean history (Shape.unionWithFullHistory(_:) etc., v1.0.2) — exposes BRepAlgoAPI Modified / Generated / IsDeleted for selection-remapping consumers.
  • STEP / IGES / STL / OBJ / BREP / glTF I/O via OCCTSwiftIO, with full color, dimension, datum, and geometric tolerance support.

Indexed on Swift Package Index. Used downstream by several private CAD applications and design-automation tools the maintainer ships.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions