Een codebase, overal
Elke tool in het OpenAEC-ecosysteem wordt ontwikkeld als een enkele applicatie die op alle platformen draait. Geen aparte versies voor web en desktop, geen dubbel onderhoud. Dezelfde code, dezelfde features, overal.
Dit bereiken we door te bouwen op Tauri en Rust als fundament, met een moderne web-frontend die zowel in de browser als in een native shell draait.
Architectuur overzicht
Technologie stack
Tauri 2.0 Core
Framework voor het bouwen van desktop- en mobiele apps met webtechnologie. Gebruikt de native webview van het OS in plaats van Chromium — resulteert in kleine installatiebestanden (<10MB) en laag geheugengebruik.
Rust Backend
De core-logica van elke tool is geschreven in Rust: IFC-parsing, validatie, berekeningen en bestandsverwerking. Rust biedt geheugen-veiligheid, hoge performance en compileert naar elk platform.
WebAssembly Web
Dezelfde Rust-code compileert naar WebAssembly (WASM) voor de webversie. Hierdoor draait de volledige rekenlogica ook in de browser, met near-native performance.
HTML / CSS / JS UI
De gebruikersinterface is gebouwd met standaard webtechnologie. Geen zware frameworks — lichtgewicht, snel en onderhoudbaar. Dezelfde UI draait in Tauri en in de browser.
Three.js 3D
3D-visualisatie van IFC-modellen via Three.js en That Open Engine. WebGL-gebaseerd, draait overal waar een browser draait.
FastAPI API
Server-side API's gebouwd met Python FastAPI voor async validatie, documentbeheer en integraties. Deployed via Docker.
Lokaal en in de cloud — een systeem
Elke OpenAEC-tool werkt standalone op je eigen machine, zonder internetverbinding. Maar wanneer je verbinding maakt, synchroniseert alles naadloos met de cloud via het OpenAEC-platform. Projecten, documenten en modeldata stromen automatisch tussen lokale installaties en de server. Je kiest zelf: volledig lokaal, volledig in de cloud, of een hybride setup.
Platform vergelijking
| Functie | Desktop (Tauri) | Web (Browser) | Mobiel (Tauri) |
|---|---|---|---|
| Offline werken | ✓ | Beperkt (PWA) | ✓ |
| Bestandstoegang | ✓ Volledig | Beperkt (upload) | ✓ |
| IFC-verwerking | ✓ Native Rust | ✓ WASM | ✓ Native Rust |
| 3D Viewer | ✓ | ✓ | ✓ |
| Installatiegrootte | <10 MB | 0 MB | <15 MB |
| Auto-update | ✓ | Altijd actueel | ✓ |
| Camera toegang | — | ✓ | ✓ |
| Systeemintegratie | ✓ Volledig | Beperkt | ✓ |
Uitbreidbaarheid & integratie
Elke tool in het ecosysteem is ontworpen om uitgebreid en geïntegreerd te worden. Vier lagen van uitbreidbaarheid:
Open Feedback Studio Feedback
Ingebouwd feedbacksysteem in elke tool. Gebruikers kunnen direct vanuit de applicatie feedback geven, bugs melden en feature requests indienen. Gekoppeld aan het centrale platform.
REST API API
Elke tool biedt een REST API voor integratie met externe systemen. Automatiseer workflows, koppel met ERP-systemen of bouw eigen dashboards bovenop het ecosysteem.
MCP Servers AI
Model Context Protocol (MCP) servers voor elke tool. Hiermee kunnen AI-agents (zoals Claude) direct communiceren met de tools — modellen valideren, documenten genereren of berekeningen uitvoeren via natuurlijke taal.
Extensions Plugins
Elke tool ondersteunt extensions voor maatwerk-functionaliteit. Bouw je eigen plugins in TypeScript of Rust en deel ze met de community via het extension register.
Bouwen op bestaande open source projecten
We vinden het wiel niet opnieuw uit. Het OpenAEC-ecosysteem bouwt zoveel mogelijk verder op bewezen open source projecten uit de BIM- en 3D-wereld:
That Open Engine
De 3D-rendering en IFC-parsing in onze viewers is gebaseerd op That Open Engine (voorheen IFC.js). Een krachtige TypeScript/Three.js library voor BIM in de browser.
Blender & Bonsai
Voor 3D-modellering en BIM-authoring integreren we met Blender en het Bonsai add-on (voorheen BlenderBIM). De krachtigste open source 3D-tool ter wereld.
IfcOpenShell
De industriestandaard Python/C++ library voor het lezen, schrijven en manipuleren van IFC-bestanden. De ruggengraat van onze server-side IFC-verwerking.
PDF.js & pdf-lib
Mozilla's PDF.js voor rendering en pdf-lib voor het programmatisch aanmaken en bewerken van PDF-documenten. Bewezen technologie, miljoenen gebruikers.
Waarom deze aanpak?
Klein & snel
Geen Electron, geen Chromium. Tauri gebruikt de native webview — installatiebestanden zijn kleiner dan 10MB en het geheugengebruik is minimaal.
Veilig
Rust voorkomt geheugenfouten, buffer overflows en race conditions. De applicatie is veilig by design.
Open source
Tauri, Rust, en alle gebruikte bibliotheken zijn open source. Geen vendor lock-in op framework-niveau.
Toekomstbestendig
Web-standaarden en Rust zijn technologieen met lange levensduur. Geen framework-churn, geen breaking changes.