![]() |
![]() |
IFC Flow Map provides a graphical interface for viewing, filtering, transforming, and analyzing Building Information Modeling (BIM) data through an intuitive workflow system. Create complex data manipulation pipelines with a simple drag-and-drop interface.
- 🔄 Visual Node-Based Interface - Create workflows by connecting nodes in a flow diagram
- 🏢 IFC File Support - Load and analyze IFC files for BIM data
- 🧩 Multiple Node Types:
- 📁 IFC Node - Import IFC files
- 📐 Geometry Node - Extract geometric information
- 🔍 Filter Node - Filter elements based on properties
- 🔄 Transform Node - Apply transformations to elements
- 👁️ Viewer Node - Visualize 3D models
- 📏 Quantity Node - Extract quantity information
- 🏷️ Property Node - Work with element properties and property sets
- 🔖 Classification Node - Manage element classifications
- 📍 Spatial Node - Perform spatial queries
- 💾 Export Node - Export data in various formats (CSV, JSON, IFC)
- 🔗 Relationship Node - Query element relationships
- 📊 Analysis Node - Perform analyses like clash detection
- 👀 Watch Node - Monitor element values
- ⚙️ Parameter Node - Define workflow parameters
- 💾 Workflow Storage - Save and load workflows
- ⚡ Real-time Execution - Execute workflows and see results immediately
- ⌨️ Keyboard Shortcuts - Efficient workflow creation with keyboard shortcuts
- 🔄 Advanced Property Handling - Get, set, add, and remove properties in IFC elements
- 📤 IFC Export - Export modified IFC files with your property changes
- 🧰 IfcOpenShell Integration - Leverage IfcOpenShell 0.8.1 for reliable IFC processing
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the application.
- Create a New Workflow - Start with a blank canvas
- Add Nodes - Drag and drop nodes from the sidebar
- Connect Nodes - Create connections between node inputs and outputs
- Load IFC Files - Use an IFC node to import your BIM data
- Configure Node Properties - Set properties in the properties panel
- Execute Workflow - Run the workflow to see results
- Save Your Workflow - Save workflows for later use
- Get Properties - Use the Property Node with "Get" action to extract properties like "IsExternal" from walls
- Set Properties - Modify existing properties or add new ones with the "Set" action
- Connect Property Nodes - Chain property operations by connecting nodes
- Export Modified IFC - Use the Export Node with "ifc" format to save your changes
- Web-Based Processing - All IFC processing happens client-side using WebAssembly
- IfcOpenShell Integration - Uses IfcOpenShell 0.8.1 via Pyodide for robust IFC handling
- Property Management - Comprehensive property handling across property sets (Psets) and quantities
- JSON-Based IFC Model - Efficient conversion between IFC and JSON for manipulation
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). This means:
- You are free to use, modify, and distribute this software
- If you modify the software, you must distribute your modifications under the same license
- If you run a modified version of this software on a server that others can interact with, you must make the source code available to them
See the GNU AGPL-3.0 License for more details.
To learn more about the technologies used:
Check out the Next.js deployment documentation for more details.