OpenC Contract Compliance Management
- Svelte 53%
- TypeScript 46.5%
- HTML 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Documenteer ook BODY_SIZE_LIMIT in .env.example: nodig voor productie met adapter-node, anders begrenst de Node-server requests op 512 KB. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
| .claude | ||
| .vscode | ||
| src | ||
| static | ||
| .env.example | ||
| .gitignore | ||
| .npmrc | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
OpenContract
OpenC Contract & Compliance Management — webapplicatie waarmee OpenC per opdrachtgever aantoont dat de dienstverleningsovereenkomst (DVO) wordt nageleefd.
Functies
- Nalevingsmatrix per overeenkomst: verplichtingen uit de DVO, het DORA-amendement, de Verwerkersovereenkomst en de Werkafspraken, met artikelverwijzing, frequentie, status (nog te starten / in uitvoering / gereed / n.v.t.), uitvoeringsdatum en notities. Filterbaar per bron en status, doorzoekbaar.
- Documenten: uploaden (max. 50 MB), categoriseren (overeenkomst, beleid, gespreksverslag, SLA-rapportage, polis, auditbewijs, …) en optioneel koppelen aan een verplichting als bewijs. Downloads zijn afgeschermd per bedrijf.
- Beheer van bedrijven, personen en gebruikersaccounts.
- Rollen: Admin (OpenC) beheert alles; Klant (contactpersoon van een opdrachtgever) ziet uitsluitend het dashboard, de naleving en de documenten van het eigen bedrijf, als alleen-lezen.
- Incidenten en changes worden bewust niet in deze app beheerd; dat gebeurt in forge.smartyellow.nl. Een koppeling (Forgejo REST API) is voorzien als latere uitbreiding.
Techniek
- SvelteKit (Svelte 5) met
@sveltejs/adapter-node - SQLite via
better-sqlite3; database en uploads in./data/(buiten git) - Sessie-authenticatie met HttpOnly-cookies, wachtwoorden gehasht met bcrypt
- Bij de eerste start wordt de database automatisch aangemaakt en gevuld met startdata: OpenC, Donatus Verzekeringen en Solarif Group, het admin-account en de volledige nalevingsmatrix van de DVO Donatus (118 verplichtingen).
Ontwikkelen
npm install
npm run dev
Inloggen: remcovanburen@openc.nl met het wachtwoord uit ADMIN_INITIAL_PASSWORD (zie .env.example; standaard OpenC2026!wijzigen — direct wijzigen na eerste login via Gebruikers → Wachtwoord).
Productie
npm run build
node build
De server draait dan op poort 3000 (aanpasbaar met PORT). Zorg dat ./data/ persistent is (database + uploads).
Projectstructuur
src/lib/server/db.ts— schema, migratie en seedsrc/lib/server/auth.ts— login, sessies, wachtwoordensrc/lib/server/seed-obligations.json— de 118 verplichtingen uit de Nalevingsmatrix DVO Donatussrc/routes/— pagina's: dashboard, naleving, documenten, bedrijven, personen, gebruikersInputDocs/— brondocumenten (alleen lokaal, staat in.gitignore)