Open-source toolkit for the IFC file format. WebGPU rendering, columnar in-memory store, faster than the alternatives on most models. Runs from a CDN.
Most browser IFC libraries stop at parsing or rendering. IFClite covers the whole pipeline. Read a STEP file, look at it, query it, edit it, federate it, validate it, automate it with an agent, and write it back out. Click a stage to try it.
Each package composes with the rest. Progress events on the long-running calls. No globals. Tree-shakable, so you only pay for the parts you import.
Same core, four delivery modes. Start in the browser. Add a server when files get big or teams need caching. Ship a Tauri build when 500 MB models show up on a USB stick.
Full client-side viewer. No backend, no upload, no shared state. The model never leaves the browser tab.
You already have a 3D app. IFClite parses, tessellates, and hands you meshes you can feed straight into your scene graph.
Cache parsed models, stream geometry to many clients, dedupe by content hash. Built for teams and 100 MB+ files.
Native binary for offline work and very large files. Multi-threaded geometry, direct filesystem access, fast-path desktop optimizations.
30+ TypeScript packages and 5 Rust crates. You rarely need all of them. Pick a preset, or tick the bits you want. The bundle estimate updates as you go.
Hot paths (tokenization, tessellation, federation) run in Rust, compiled to WebAssembly. Your code stays in TypeScript. Browser-shipped, but the math still goes through Rust.
Most IFC libraries cover a subset of the schema. IFClite implements every IFC4 and IFC4X3 entity, plus the new IFC5 JSON format.
WebGPU is required for the built-in renderer. The Three.js and Babylon.js integrations fall back to WebGL and work everywhere those engines do.
Organized by what you want to do, not by package. Start with a tutorial. Use a guide for a specific feature. Hit the API reference when you know what you need.
Parse your first IFC file. Five minutes, one terminal, one model.
→ tutorialStep-by-step: a WebGPU viewer with picking, hierarchy, and property panel.
→ guideFilters, SQL, joins across property sets. Find what you need without parsing twice.
→ guideWrite a spec, run it against a model, generate a pass / fail report.
→ referenceHow parsing, federation, and rendering are wired together end to end.
→ referenceEvery type, every method, every default. TypeScript and Rust both covered.
Drop an .ifc file on ifclite.com to see it in the browser. Or run npx create-ifc-lite for a working WebGPU viewer locally.