That Open Engine
That Open Engine (Open BIM Components) is a free MIT-licensed JavaScript toolkit that layers IFC import, editing, navigation, and export on top of Three.js so teams ship browser-based BIM viewers without building a geometry stack from scratch.
That Open Engine is the current name for the open-source stack That Open Company maintains after the earlier IFC.js effort. Developers install @thatopen/components and @thatopen/components-front from npm, wire them into a Three.js scene, and gain prebuilt BIM-oriented helpers for loaders, worlds, measurements, annotations, and related UI patterns described in the public documentation.
The documentation states that every library is free, open source, and safe to redistribute or embed in commercial products, which suits software vendors, integrators, and in-house IT groups that need a long-term alternative to opaque binary SDKs.
The flagship engine_components repository on GitHub carried about 634 stars when checked in April 2026, which is a modest but active signal for a niche developer audience rather than a mass-market mobile app.
Typical use cases include custom CDE viewers, tenant portals, quality dashboards, and research prototypes where IFC 2x3 or IFC4 payloads must render in WebGL without shipping a Windows-only desktop client.
Specifications
Pricing
Platforms
Used for
Used by
Tasks
Pros and cons
Pros
- No runtime license fee for the core libraries under MIT terms.
- Large surface area of examples and tutorial paths in the official docs.
- Active GitHub org (ThatOpen) with issue queues for bug reports.
Cons
- Requires solid JavaScript, bundler, and Three.js skills; not a drag-and-drop app for end users.
- Advanced BIM authoring still belongs in desktop authoring tools.
- Community support depends on forums and GitHub unless you buy professional services.
Key features
IFC workflows: Import, display, navigate, edit, and export IFC models from browser or Node.js contexts per the introductory docs.
Three.js foundation: Builds on Three.js so teams reuse lighting, materials, and camera controls they already know.
2D and 3D tooling: Docs list measurement, annotations, floorplan navigation, and evolving 2D plus 3D editing helpers.
Broader formats: States support for importing and navigating additional 3D formats beyond IFC for mixed pipelines.
MIT license:
package.jsonin the engine_components repo declares an MIT license for redistribution-friendly embedding.
Pricing
Open source (MIT)
per month
Free
Core `@thatopen/components` packages are MIT-licensed on npm; optional That Open services or accelerator programs are separate commercial agreements.
Frequently asked questions
Is That Open Engine free for commercial products?
The introductory documentation states that all covered libraries are free and open source and that you may distribute or sell what you build. The
@thatopen/componentspackage metadata on GitHub lists MIT as the SPDX license, which is the usual signal your legal team checks before embedding a dependency.Which runtimes and platforms does That Open Engine support?
The docs explicitly list web browsers with HTML and CSS, Node.js servers, Electron desktops, and mobile stacks such as React Native or iframe embeds. In practice most teams start with a Vite or Webpack web bundle, then optionally reuse the same packages inside an Electron shell if they need offline desktop distribution.
Which IFC versions and exchange patterns are realistic?
The documentation centers on IFC import, visualization, navigation, editing, and export, which maps to typical coordination and review workflows rather than full parametric authoring. Validate your specific IFC4 option sets and property sets against the loader release you pin, because schema coverage evolves with each npm release.
Can That Open Engine replace a full clash detection or cost engine?
It gives you geometry, metadata access, and UI affordances in JavaScript, but clash rules engines, quantity takeoff, and cost databases are still your responsibility. Most teams pair the viewer with backend services that run rules in Python or C++ while the browser handles presentation and redlining.
That Open Engine vs building on raw Three.js alone: when does the toolkit earn its place?
If you only need generic meshes, raw Three.js stays smaller. Once you must stream large IFC archives, preserve building element identities, and expose BIM-specific measurement and sectioning controls, the Open BIM Components layer saves months of parser work because it ships IFC-oriented systems on top of Three.js.
Who should fund a proof of concept first?
Product leads who must expose models to clients in a browser but cannot mandate a single proprietary viewer should sponsor a two sprint spike. Success criteria usually cover load time on a 300 MB coordination model, accuracy of a few critical properties, and whether your security review accepts npm dependencies from the ThatOpen scope.
