Open-source begrotingssoftware voor de bouwsector
Varianten • Features • Installatie • API • Technologie • Bijdragen
OpenCalc is een moderne, open-source webapplicatie voor het maken van bouwkostenbegrotingen. Ontworpen voor de Nederlandse bouwsector, van ZZP'ers tot professionele calculatiekantoren.
OpenCalc is beschikbaar in verschillende edities:
| Editie | Doelgroep | Interface | Status |
|---|---|---|---|
| OpenCalc-SBO | ZZP'ers, kleine aannemers | Card-based, wizard | Actief |
| OpenCalc Extended | MKB bedrijven | Grid/Excel-achtig | In ontwikkeling |
| OpenCalc Estimator | Professionele calculators | Grid/Excel-achtig | Gepland |
| OpenCalc API/CLI | Developers | REST API + Python | Gepland |
De huidige versie - eenvoudig te gebruiken voor kleine bedrijven. Card-based interface met wizard-achtige flows.
Uitgebreide versie met Excel-achtige grid interface. Volledig keyboard-navigeerbaar (Tab, pijltjes), Excel export, geavanceerde rapportage.
Volledige professionele versie met IFC/BIM integratie, team samenwerking, multi-valuta en onbeperkte features.
Python SDK en command-line interface voor automatisering en integratie met andere systemen.
Zie docs/ROADMAP.md voor de volledige product roadmap en implementatie planning.
- Projectbeheer - Organiseer begrotingen per project met klantgegevens
- Hoofdstukken - Structureer begrotingen met NL-SfB of STABU codering
- Kostenposten - Gedetailleerde regels met arbeid, materiaal en onderaanneming
- Automatische berekeningen - Subtotalen, opslagen, BTW en eindtotalen
- Versies - Meerdere versies per begroting
- NL-SfB - Nederlandse SfB elementenmethode
- STABU - STABU werksoorten systematiek
- RAW - RAW GWW systematiek
- Eigen posten - Maak je eigen kostenbibliotheek
- Specificatieteksten - Gedetailleerde technische specificaties
- Offerteteksten - Rich text met afbeeldingen voor offertes
- PDF Export - Professionele offertes met bedrijfslogo
- ODS Export - LibreOffice/Excel spreadsheet
- IFC Export - BIM-compatibel kostenmodel
- Rapportpreview - Bekijk en print direct vanuit de browser
- ERPNext - Importeer projecten en klanten uit ERPNext
- REST API - Volledige API voor externe koppelingen
- PWA - Installeerbaar als desktop app op Windows en Linux
- Offline - Werkt offline na installatie (basis functies)
- Node.js 18 of hoger
- npm of pnpm
-
Clone de repository
git clone https://github.com/OpenAEC-Foundation/Open-Calc.git cd Open-Calc -
Installeer dependencies
npm install
-
Configureer environment
cp .env.example .env # Pas de DATABASE_URL en AUTH_SECRET aan -
Initialiseer database
npx prisma db push npx prisma db seed
-
Start development server
npm run dev
- Open de app in Chrome of Edge
- Klik op het installeer-icoon in de adresbalk
- OpenCalc verschijnt als desktop applicatie
OpenCalc biedt een RESTful API voor alle functionaliteit.
| Methode | Endpoint | Beschrijving |
|---|---|---|
| GET | /api/projects |
Lijst alle projecten |
| POST | /api/projects |
Maak nieuw project |
| GET | /api/projects/:id |
Haal project op |
| PATCH | /api/projects/:id |
Update project |
| DELETE | /api/projects/:id |
Verwijder project |
| Methode | Endpoint | Beschrijving |
|---|---|---|
| GET | /api/projects/:id/estimates |
Lijst begrotingen |
| POST | /api/projects/:id/estimates |
Maak begroting |
| GET | /api/projects/:id/estimates/:estimateId |
Haal begroting op |
| PATCH | /api/projects/:id/estimates/:estimateId |
Update begroting |
| Methode | Endpoint | Beschrijving |
|---|---|---|
| GET | /api/projects/:id/estimates/:estimateId/export/ods |
Export ODS |
| GET | /api/projects/:id/estimates/:estimateId/export/ifc |
Export IFC |
- Next.js 15 - React framework met App Router
- React 19 - UI library
- TypeScript - Type-safe JavaScript
- Prisma - Database ORM
- SQLite - Database (ontwikkeling)
- NextAuth.js v5 - Authenticatie
- Tailwind CSS - Styling
- shadcn/ui - UI componenten
- NL-SfB - Nederlandse SfB elementenmethode
- STABU - STABU werksoorten systematiek
- RAW - RAW GWW systematiek
- IFC - Industry Foundation Classes (BIM)
Bijdragen zijn welkom!
- Fork de repository
- Maak een feature branch (
git checkout -b feature/nieuwe-feature) - Commit je wijzigingen (
git commit -m 'Voeg nieuwe feature toe') - Push naar de branch (
git push origin feature/nieuwe-feature) - Open een Pull Request
Dit project is gelicenseerd onder de MIT License.
Gemaakt met ❤️ voor de Nederlandse bouwsector