StepKit for Apple platforms
In development · pure-Swift STEP toolkit

STEP files, rendered
natively.

StepKit is a from-scratch, pure-Swift STEP (ISO 10303) loader, B-rep geometry kernel, watertight tessellator and Metal viewer — no third-party CAD kernels, App-Store-shippable. It reads CAD assemblies with their colours and structure and turns them into clean, watertight meshes on Apple platforms.

Pure Swift · no LGPL On-device · App Store-ready Watertight meshes
A STEP assembly loaded by StepKit — coloured parts (plate, brackets, rod, bolts, nut) placed at their assembly transforms and rendered with Metal.

AS1 assembly · colours + structure + per-part placement, rendered on-device

Status

In active development.

StepKit already loads and renders most of a 400-file AP203 / AP214 / AP242 test corpus. These numbers move as the kernel matures.

272/403
corpus files watertight
3
STEP APs (203 / 214 / 242)
0
third-party CAD kernels
STL·OBJ·glTF
mesh export formats
What it does

A complete STEP pipeline, written from scratch in Swift.

Parse → resolve B-rep → tessellate to a watertight mesh → render with Metal. Colours, assembly structure and interchange formats included.

Pure-Swift STEP loader

ISO 10303-21 parser + resolved B-rep kernel for AP203 / AP214 / AP242. No third-party CAD kernels, no LGPL, App-Store-shippable.

Watertight tessellation

Every edge discretized once and shared, so adjacent faces meet on bit-identical points — closed, manifold solids by construction.

Metal rendering

On-device GPU rendering with runtime-compiled shaders — no offline toolchain. Headless PNG or an interactive viewer.

Colours & materials

STYLED_ITEM → COLOUR_RGB resolved per face (body base colour plus per-face overrides) and rendered — not one grey blob.

Assemblies

Product / assembly tree with names, per-part show/hide, and per-occurrence transforms — repeated parts placed where they belong.

Import & export

Read STEP and glTF; write STL, OBJ and binary glTF (.glb). Take a CAD model anywhere on Apple platforms.

A coloured push-button part loaded from STEP and rendered by StepKit — red cap, grey body, with crease-aware shading.

Per-face STEP colours and crease-aware normals, rendered on-device

Availability

Not for sale — yet.

StepKit is in active development and isn't publicly available. It is neither sold nor released for free at this stage.

In development
Interested?

If you're building something that needs native STEP on Apple platforms — or you just want to follow along — get in touch and I'll keep you posted.

  • Native iOS / macOS, on-device
  • No third-party CAD kernel, no LGPL
  • Watertight tessellation + Metal rendering
Email michal.fanta@xfanta.cz