Algoritmekader

June 17, 2026 ยท View on GitHub

Built with Material for MkDocs

Algoritmekader

Het Ministerie van Binnenlandse Zaken en Koninkrijksrelaties ontwikkelt het Algoritmekader op een open manier via Github. Het doel van het Algoritmekader is om overheden op een praktische wijze te ondersteunen, zodat zij op een wettige en ethisch verantwoorde wijze algoritmes en AI-systemen gebruiken.

In deze repository ontwikkelen wij het Algoritmekader. De informatie van het Algoritmekader wordt uitgewerkt in verschillende Markdown bestanden (een bestandsformaat voor platte tekstbestanden), welke je terug kan vinden in de map docs. Deze bestanden worden inzichtelijk gemaakt met behulp van MkDocs en Material for MkDocs.

Het Algoritmekader kun je bekijken op https://minbzk.github.io/Algoritmekader.

De image draaien of deployen

Het Algoritmekader is ook als container beschikbaar (non-root nginx-image, poort 8080). Voor build, run, reverse proxy/ingress, health checks, security en SITE_URL: zie container/README.md.

Hoe kun je bijdragen?

Dat kan op verschillende manieren. Zie onze Contributing Guidelines voor meer uitleg over hoe je kan bijdragen aan het Algoritmekader.

Lokaal ontwikkelen

Het Algoritmekader project kan lokaal worden gedraaid met Python of met een container.

Met Python

Installeer de benodigde packages in een virtual environment:

pip install -r requirements.txt
mkdocs serve

Met Podman/Docker

Bouw en draai het Algoritmekader als container:

podman build -t algoritmekader -f container/Dockerfile .
podman run -p 8080:8080 algoritmekader

Open vervolgens http://localhost:8080.

De image draait non-root op poort 8080 en is read-only-rootfs-compatibel.

Onder een subpad of eigen domein draaien

Zonder configuratie draait de image op de root (/). Met de optionele env SITE_URL geef je de publieke basis-URL op; dat stuurt de interne links, de beslishulp en de canonical/sitemap:

# root (default)
podman run -p 8080:8080 algoritmekader

# onder een subpad / eigen domein
podman run -e SITE_URL=https://algoritmes.overheid.nl/kader -p 8080:8080 algoritmekader

Je mag ook alleen een pad geven (SITE_URL=/kader); leeg of / is de root.

Voor het deployen van de image (reverse proxy / ingress, health checks, security, SITE_URL): zie container/README.md.

Validatie Tools

In de map scripts/validation/ vind je scripts die de consistentie van het Algoritmekader controleren:

  • validate_urn_uniqueness.py: Controleert of alle URNs uniek zijn
  • validate_lifecycles.py: Controleert of levenscyclus-waarden geldig zijn
  • validate_file_prefix_urn.py: Controleert of bestandsnamen overeenkomen met URNs

Gebruik

Bij pull requests worden deze validaties automatisch uitgevoerd via GitHub Actions. Je kunt ze ook lokaal draaien:

# Installeer benodigde dependencies
pip install pyyaml

# Voer alle validaties uit
python .github/scripts/run_all_validations.py

De scripts controleren:

  • Dat er geen dubbele URNs zijn (bijvoorbeeld urn:nl:ak:mtr:org-02)
  • Dat alle levenscyclus-waarden geldig zijn (zoals organisatieverantwoordelijkheden, ontwikkelen)
  • Dat bestandsnamen consistent zijn met hun URNs

Index bestanden (index.md) worden automatisch overgeslagen en bestandsnamen met numerieke voorvoegsels (zoals 0-org-01-...) worden correct herkend.

Voor meer details, zie de README in de .github/scripts map.

Vragen?

Maak een Issue aan op GitHub. Of stuur een e-mail naar algoritmes@minbzk.nl.