IfcIO
IfcIO is a fast, 100% managed .NET library for building, reading, and exporting Industry Foundation Classes (.ifc) files compliant with IFC2x3 Coordination View V2.0 and IFC4 Design Transfer / Reference View without third-party dependencies or native code.
Built clean-room under the IOExtend organization as the shared open-standards IFC foundation for AEC/BIM projects (including NwcIO and RvtIO).
Key Features
- Full Model Ingestion & Export (
IfcModel):- Reconstruct complete spatial hierarchy (Project, Site, Building, Storeys), elements, properties, materials, and 3D meshes from any
.ifcor.ifczipfile. - Multi-line STEP statement accumulation and quote-aware tokenization in
StepReaderand high-throughput streaming inStepWriter.
- Reconstruct complete spatial hierarchy (Project, Site, Building, Storeys), elements, properties, materials, and 3D meshes from any
- IFC4 Modern Mesh Tessellation (
IfcTriangulatedFaceSet):- Encodes geometry using compact
IfcTriangulatedFaceSetandIfcCartesianPointList3Dunder representation type'Tessellation'for IFC4 exports (>60% smaller file sizes than legacy faceted B-Rep).
- Encodes geometry using compact
- Direct 3D Exporters (glTF 2.0 & Wavefront OBJ):
- Instant conversion of any IFC model to binary glTF 2.0 (
.glb) with PBR metallic-roughness materials and vertex normals, or Wavefront OBJ (.obj+.mtl).
- Instant conversion of any IFC model to binary glTF 2.0 (
- PKZip Compressed IFC (
.ifczip):- Built-in transparent compression and decompression for standard
.ifcziparchives with zero native dependencies.
- Built-in transparent compression and decompression for standard
- Cross-Platform CLI Tool (
ifcio):- Global .NET CLI tool (
IfcIO.Clion NuGet) providinginfo,export,pack,unpack,clash,diff,view, andvalidatecommands.
- Global .NET CLI tool (
- buildingSMART 22-Character GlobalId (
IfcGuid):- Standard base64-like buildingSMART encoding (
0-9, A-Z, a-z, _, $). Bidirectional conversion between 128-bit.NET Guidand 22-character IFC GlobalId.
- Standard base64-like buildingSMART encoding (
- 3D Geometric Clash Detection & Revision Diff:
- Built-in Möller triangle collision, proximity clustering, structural grid location assignment, revision comparison, and buildingSMART BCF 2.1 zip reporting.
The library targets .NET 8 and .NET 10, uses 100% pure managed code with zero native dependencies, and supports Windows, Linux, and macOS.
Where to go next
- Getting started: install the package or CLI tool and run a first export or model query.
- Public API: supported surface and key entry points of the library.
- API reference: complete API documentation generated directly from XML source docstrings.
- Source on GitHub and DeepWiki for an automated architectural overview of the repository.
IfcIO is licensed under the MIT License and is an independent implementation of the ISO 10303-21 STEP and buildingSMART specifications. buildingSMART and IFC are registered trademarks of buildingSMART International Ltd.