Front-end developer – Rich Text Editor 16u/w
Volgnummer: 115077
Publicatiedatum: 06-02-2026
Locatie: DEN HAAG
Standplaats: DEN HAAG
Duur: 09-03-2026 - 09-03-2027
Optie tot verlenging: Ja
Reageren voor: 25-02-2026
Organisatie:
Organisatie
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties. Met de NL Design System aanpak verzamelen we richtlijnen, componenten en voorbeelden om robuuste websites en webapplicaties voor de overheid te bouwen. Dit wordt gedaan binnen een multidisciplinaire groep professionals die samen het NL Design System Kernteam en het Expertteam Digitale Toegankelijkheid vormen. De componenten en richtlijnen van NL Design System zijn open source beschikbaar op GitHub en Figma, zodat iedereen ze kan gebruiken voor een begrijpelijke, gebruiksvriendelijke en toegankelijke onlinedienstverlening. Met het Expertteam Digitale Toegankelijkheid worden concrete oplossingen gebouwd om het eenvoudiger te maken voor overheidsorganisaties om toegankelijke websites en webapplicaties aan te bieden.
!!! Let op. Het aanleveren van een toelichting op zowel de eisen als de wensen en een persoonlijke motivatie is verplicht. Helaas kunnen wij het CV niet verder in behandeling nemen wanneer dit ontbreekt.
Beschrijving project/programma:
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties. Met de NL Design System aanpak verzamelen we richtlijnen, componenten en voorbeelden om robuuste websites en webapplicaties voor de overheid te bouwen. Dit wordt gedaan binnen een multidisciplinaire groep professionals die samen het NL Design System Kernteam en het Expertteam Digitale Toegankelijkheid vormen. De componenten en richtlijnen van NL Design System zijn open source beschikbaar op GitHub en Figma, zodat iedereen ze kan gebruiken voor een begrijpelijke, gebruiksvriendelijke én toegankelijke onlinedienstverlening. Met het Expertteam Digitale Toegankelijkheid worden concrete oplossingen gebouwd om het eenvoudiger te maken voor overheidsorganisaties om toegankelijke websites en webapplicaties aan te bieden.
Omschrijving einde project/programma:
Het project is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van NL Design System, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Welke rol heeft de professional binnen het project/programma:
De opdracht bestaat uit het ontwikkelen van een gebruiksvriendelijke content management interface en rich text editor, waarmee het voor contentmakers makkelijk wordt om toegankelijke content te publiceren, op basis van NL Design System componenten en richtlijnen. Zo help je mee om de toegankelijkheid in Nederland te verbeteren met de hulpmiddelen die het expertteam maakt en draag je bij aan de doorontwikkeling van NL Design System als overheidsbreed open source white-label design system.
De activiteiten die horen bij het realiseren van de opdracht zijn:
•
• Ontwikkelen van een toegankelijke front-end applicatie met een rich-text editor.
• Ontwikkelen van herbruikbare front-end componenten.
• Ontwikkelen een rich-text editor variant, op basis van TipTap en CKEditor, waarmee het mogelijk is een editor op te bouwen met NL Design System componenten die content die voldoet aan een strict schema kan opslaan in CMS-en zoals Drupal, TYPO3 en WordPress.
• Ontwikkelen van definities voor content, zoals JSON Schema's of TipTap node types, van componenten zoals Image, Table, Accordion, etcetera.
• Ontwikkelen van server-side templates om de content te tonen, zoals Twig templates, voor componenten zoals Image, Table, Accordion, etcetera.
• Ontwikkelen van gebruiksvriendelijke foutherkenning voor ontoegankelijke content.
• Ontwikkelen van transformaties van datastructuren om ontoegankelijke content in een rich-text editor met een druk op de knop te verbeteren, zoals het converteren van Bold Table Cells naar Table Heading Cells, een Table Row naar een Table Caption, Pargraph naar Heading, Paragraphs naar List Items, etcetera.
• Ontwikkelen van real-time client side validatie van content om de toegankelijkheid te meten.
• Ontwikkelen volgens de NL Design System architectuur.
• Ontwikkelen van testplannen en testscenario's om de werking van de software te testen met de veelvoorkomende content.
• Ontwikkelen een koppeling met de REST API van content-management systemen.
• Ontwikkelen van geautomatiseerde tests op het niveau van end-to-end tests en unit tests.
• Het verbeteren van de software op basis van feedback van toegankelijkheidsspecialisten, het NL Design System-kernteam en gebruikersonderzoek.
• Het vastleggen van kansen voor verbetering en technical debt in de backlog van het project.
• Vers & veilig houden van de front-end applicatie met rich-text editor door maandelijks code dependencies te updaten.
• Het in samenspraak met andere professionals uit het Expertteam Digitale Toegankelijkheid ontwikkelen en begeleiden van ontwikkelen en begeleiden van (online) workshops over een toegankelijke huisstijl ontwikkelen.
• In overleg met professionals uit het Expertteam Digitale Toegankelijkheid activiteiten uitvoeren voor valideren en uitbreiden van de templates, patronen en documentatie door middel van:
• Een keer in de 2 weken: Sprint planningen.
• Indien nodig: Refinements in een privé Slack Huddle van het Expertteam Digitale Toegankelijkheid.
• Indien nodig: reviewen van pull requests van andere experts uit het project om vroegtijdig feedback te geven vanuit eigen expertise.
• Voortgang delen in het privé Slack kanaal van het Expertteam Digitale Toegankelijkheid en de NL Design System Heartbeat.
• Publieke Huddles om een nieuwe aanpak voor de templates, patronen of componenten van NL Design System te bepalen.
Welke deelresultaten zal de professional dienen te behalen gedurende de opdracht:
•
• Contentdefinities en validatieregels om de toegankelijkheid van een component te testen, en om ontoegankelijke content te herkennen, op te leveren per component.
• User stories voor scenario’s van het maken van toegankelijke content, en het herstellen van ontoegankelijke content, en daarvoor een rich text editor implementatie en testautomatisering, voor de meestvoorkomende variaties van ontoegankelijke content.
• Geautomatiseerde tests om de kwaliteit van de software te meten.
• User stories voor het controleren van content op toegankelijkheid, aan de hand van previewschermen waar je specifieke aspecten kan controleren, zoals koppenstructuur, linkteksten, alt-teksten, informatie alleen via kleur geven.
Welke eindresultaten zal de professional aan het einde van de opdracht dienen op te leveren.
•
• Website met een rich-text editor om de meestgebruikte rich-text componenten van NL Design System in te voeren, en gebruikers te begeleiden naar een toegankelijk resultaat.
• Open source rich-text editor in een npm package, die geïntegreerd kan worden met CMS-en zoals Drupal, TYPO3 en WordPress.
• Open source packages voor de validatie logica.
• Werkende plugins voor tenminste 2 CMS-en (Drupal, Typo3 of WordPress).
• Werkende acceptatieomgeving van 2 CMS-en (Drupal, Typo3 of WordPress) voor de CMS-plugins.
• Documentatie waarmee CMS-developers van tenminste 2 CMS-en (Drupal, Typo of WordPress) de 2 plugins zelfstandig kunnen implementeren.
• Documentatie waarmee het beheer van de referentie implementatie en de packages overgedragen kan worden.
Wanneer is de opdracht afgerond en beëindigd:
De opdracht is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van het Expertteam Digitale Toegankelijkheid, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Gewenst profiel:
•
• De kandidaat heeft uitgebreide ervaring met toegankelijke content in HTML: koppenstructuur, alternatieve teksten, video en audio met ondertitels en transcriptie, linkteksten, complexe tabellen, lijst-structuren, onderdelen in een andere taal.
• De kandidaat heeft ervaring met veelvoorkomende soorten ontoegankelijke content, zoals semantische elementen gebruiken voor opmaak en vice versa.
• De kandidaat heeft ervaring met de verantwoordelijkheid hebben voor toegankelijkheid van een website, terwijl de content door anderen wordt gemaakt.
• De kandidaat heeft ervaring met het meetbaar verbeteren van de toegankelijkheid van content die door anderen wordt gemaakt.
• De kandidaat heeft ervaring met het aanpassen van rich text editors via JavaScript API’s.
• De kandidaat heeft ervaring met maken van schema’s voor rich text data.
• De kandidaat heeft ervaring met het renderen van content uit een CMS met toegankelijke templates.
• De kandidaat heeft ervaring met het ontwikkelen van client-side meerstapsformulieren met state management in JavaScript.
• De kandidaat heeft ervaring met het builden van front-end code met TypeScript en ES Modules, met Vite.
• De kandidaat heeft ervaring met het toepassen van herbruikbare componenten uit Design Systems of Component Libraries.
• De kandidaat is pragmatisch en kan werk opdelen in kleine stappen en fases.
• De kandidaat kan zonder code-duplicatie onderdelen hergebruiken, zodat verbeteringen zowel in de bestaande website als de nieuwe website kunnen worden gebruikt.
• De kandidaat heeft uitgebreide ervaring met moderne JavaScript (ECMAScript). Bijvoorbeeld met: ES Modules, import(), URL, async/await, Map, Set, map/filter/reduce, nullish coalescing, class, import.meta, Promises, Object entries, destructuring.
• De kandidaat heeft ervaring met npm packages gebruiken, monorepositories en npm packages publiceren met semantic versioning.
• De kandidaat heeft ervaring met TypeScript in Node.js.
• De kandidaat heeft ervaring met REST APIs gebruiken voor data waarmee webpagina’s gevuld kunnen worden.
• De kandidaat heeft ervaring met unit tests en end-to-end tests voor front-end code. Bijvoorbeeld met Jest, Vitest, Cypress of Playwright.
• De kandidaat beschikt over goede mondelinge en schriftelijke communicatieve vaardigheden.
• De kandidaat werkt zelfstandig en bewaakt de eigen voortgang als onderdeel van de scrum planning.
• De kandidaat is accuraat, werkt gedisciplineerd en is in staat om de hoeveelheid en diversiteit aan werkzaamheden te ordenen en prioriteren en stemt hierover af met de Product Manager.
• De kandidaat heeft ervaring met open source werken en vindt het vanzelfsprekend om alles (inclusief het proces) open en transparant te delen.
Functie-eisen:
de kandidaat over een goede schriftelijke beheersing van de Nederlandse taal beschikt;
de kandidaat goed mondeling kan samenwerken tijdens online en fysieke bijeenkomsten.
de kandidaat over een goede schriftelijke beheersing van de Engelse taal beschikt;
de kandidaat bij wil dragen aan het NL Design System.
Per wens het aantal jaar/projecten concrete ervaring dat de professional per wens heeft opgedaan in de context van deze aanvraag.
Wensen:
Aantoonbare ervaring met het datamodel en de user interface van een rich text editor aanpassen, voor TipTap of CKEditor
Aantoonbare ervaring in de afgelopen 5 jaar met ontwikkelen, documenteren en onderhouden van open source projecten
Aantoonbare ervaring met de W3C Authoring Tool Accessibility Guidelines (ATAG)
Ervaring met ontwikkeling van plugins in 1 of meer van de volgende CMS-en: Drupal, WordPress, Typo3
Ervaring met NL Design System, wat blijkt uit ervaring met het toepassen van design tokens JSON, documenteren van componenten in Storybook, aanwezigheid op Slack en hergebruik van community componenten.
De kandidaat toont aan over een pragmatische en oplossingsgerichte werkwijze te beschikken. De weging wordt ook meegenomen in het gesprek.
De kandidaat toont aan accuraat te werken om tot een toegankelijk en onderhoudbaar resultaat te komen. De weging wordt ook meegenomen in het gesprek. Solliciteer nu!
Duur: 09-03-2026 - 09-03-2027
Optie tot verlenging: Ja
Reageren voor: 25-02-2026
Organisatie:
Organisatie
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties. Met de NL Design System aanpak verzamelen we richtlijnen, componenten en voorbeelden om robuuste websites en webapplicaties voor de overheid te bouwen. Dit wordt gedaan binnen een multidisciplinaire groep professionals die samen het NL Design System Kernteam en het Expertteam Digitale Toegankelijkheid vormen. De componenten en richtlijnen van NL Design System zijn open source beschikbaar op GitHub en Figma, zodat iedereen ze kan gebruiken voor een begrijpelijke, gebruiksvriendelijke en toegankelijke onlinedienstverlening. Met het Expertteam Digitale Toegankelijkheid worden concrete oplossingen gebouwd om het eenvoudiger te maken voor overheidsorganisaties om toegankelijke websites en webapplicaties aan te bieden.
!!! Let op. Het aanleveren van een toelichting op zowel de eisen als de wensen en een persoonlijke motivatie is verplicht. Helaas kunnen wij het CV niet verder in behandeling nemen wanneer dit ontbreekt.
Beschrijving project/programma:
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties. Met de NL Design System aanpak verzamelen we richtlijnen, componenten en voorbeelden om robuuste websites en webapplicaties voor de overheid te bouwen. Dit wordt gedaan binnen een multidisciplinaire groep professionals die samen het NL Design System Kernteam en het Expertteam Digitale Toegankelijkheid vormen. De componenten en richtlijnen van NL Design System zijn open source beschikbaar op GitHub en Figma, zodat iedereen ze kan gebruiken voor een begrijpelijke, gebruiksvriendelijke én toegankelijke onlinedienstverlening. Met het Expertteam Digitale Toegankelijkheid worden concrete oplossingen gebouwd om het eenvoudiger te maken voor overheidsorganisaties om toegankelijke websites en webapplicaties aan te bieden.
Omschrijving einde project/programma:
Het project is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van NL Design System, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Welke rol heeft de professional binnen het project/programma:
De opdracht bestaat uit het ontwikkelen van een gebruiksvriendelijke content management interface en rich text editor, waarmee het voor contentmakers makkelijk wordt om toegankelijke content te publiceren, op basis van NL Design System componenten en richtlijnen. Zo help je mee om de toegankelijkheid in Nederland te verbeteren met de hulpmiddelen die het expertteam maakt en draag je bij aan de doorontwikkeling van NL Design System als overheidsbreed open source white-label design system.
De activiteiten die horen bij het realiseren van de opdracht zijn:
•
• Ontwikkelen van een toegankelijke front-end applicatie met een rich-text editor.
• Ontwikkelen van herbruikbare front-end componenten.
• Ontwikkelen een rich-text editor variant, op basis van TipTap en CKEditor, waarmee het mogelijk is een editor op te bouwen met NL Design System componenten die content die voldoet aan een strict schema kan opslaan in CMS-en zoals Drupal, TYPO3 en WordPress.
• Ontwikkelen van definities voor content, zoals JSON Schema's of TipTap node types, van componenten zoals Image, Table, Accordion, etcetera.
• Ontwikkelen van server-side templates om de content te tonen, zoals Twig templates, voor componenten zoals Image, Table, Accordion, etcetera.
• Ontwikkelen van gebruiksvriendelijke foutherkenning voor ontoegankelijke content.
• Ontwikkelen van transformaties van datastructuren om ontoegankelijke content in een rich-text editor met een druk op de knop te verbeteren, zoals het converteren van Bold Table Cells naar Table Heading Cells, een Table Row naar een Table Caption, Pargraph naar Heading, Paragraphs naar List Items, etcetera.
• Ontwikkelen van real-time client side validatie van content om de toegankelijkheid te meten.
• Ontwikkelen volgens de NL Design System architectuur.
• Ontwikkelen van testplannen en testscenario's om de werking van de software te testen met de veelvoorkomende content.
• Ontwikkelen een koppeling met de REST API van content-management systemen.
• Ontwikkelen van geautomatiseerde tests op het niveau van end-to-end tests en unit tests.
• Het verbeteren van de software op basis van feedback van toegankelijkheidsspecialisten, het NL Design System-kernteam en gebruikersonderzoek.
• Het vastleggen van kansen voor verbetering en technical debt in de backlog van het project.
• Vers & veilig houden van de front-end applicatie met rich-text editor door maandelijks code dependencies te updaten.
• Het in samenspraak met andere professionals uit het Expertteam Digitale Toegankelijkheid ontwikkelen en begeleiden van ontwikkelen en begeleiden van (online) workshops over een toegankelijke huisstijl ontwikkelen.
• In overleg met professionals uit het Expertteam Digitale Toegankelijkheid activiteiten uitvoeren voor valideren en uitbreiden van de templates, patronen en documentatie door middel van:
• Een keer in de 2 weken: Sprint planningen.
• Indien nodig: Refinements in een privé Slack Huddle van het Expertteam Digitale Toegankelijkheid.
• Indien nodig: reviewen van pull requests van andere experts uit het project om vroegtijdig feedback te geven vanuit eigen expertise.
• Voortgang delen in het privé Slack kanaal van het Expertteam Digitale Toegankelijkheid en de NL Design System Heartbeat.
• Publieke Huddles om een nieuwe aanpak voor de templates, patronen of componenten van NL Design System te bepalen.
Welke deelresultaten zal de professional dienen te behalen gedurende de opdracht:
•
• Contentdefinities en validatieregels om de toegankelijkheid van een component te testen, en om ontoegankelijke content te herkennen, op te leveren per component.
• User stories voor scenario’s van het maken van toegankelijke content, en het herstellen van ontoegankelijke content, en daarvoor een rich text editor implementatie en testautomatisering, voor de meestvoorkomende variaties van ontoegankelijke content.
• Geautomatiseerde tests om de kwaliteit van de software te meten.
• User stories voor het controleren van content op toegankelijkheid, aan de hand van previewschermen waar je specifieke aspecten kan controleren, zoals koppenstructuur, linkteksten, alt-teksten, informatie alleen via kleur geven.
Welke eindresultaten zal de professional aan het einde van de opdracht dienen op te leveren.
•
• Website met een rich-text editor om de meestgebruikte rich-text componenten van NL Design System in te voeren, en gebruikers te begeleiden naar een toegankelijk resultaat.
• Open source rich-text editor in een npm package, die geïntegreerd kan worden met CMS-en zoals Drupal, TYPO3 en WordPress.
• Open source packages voor de validatie logica.
• Werkende plugins voor tenminste 2 CMS-en (Drupal, Typo3 of WordPress).
• Werkende acceptatieomgeving van 2 CMS-en (Drupal, Typo3 of WordPress) voor de CMS-plugins.
• Documentatie waarmee CMS-developers van tenminste 2 CMS-en (Drupal, Typo of WordPress) de 2 plugins zelfstandig kunnen implementeren.
• Documentatie waarmee het beheer van de referentie implementatie en de packages overgedragen kan worden.
Wanneer is de opdracht afgerond en beëindigd:
De opdracht is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van het Expertteam Digitale Toegankelijkheid, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Gewenst profiel:
•
• De kandidaat heeft uitgebreide ervaring met toegankelijke content in HTML: koppenstructuur, alternatieve teksten, video en audio met ondertitels en transcriptie, linkteksten, complexe tabellen, lijst-structuren, onderdelen in een andere taal.
• De kandidaat heeft ervaring met veelvoorkomende soorten ontoegankelijke content, zoals semantische elementen gebruiken voor opmaak en vice versa.
• De kandidaat heeft ervaring met de verantwoordelijkheid hebben voor toegankelijkheid van een website, terwijl de content door anderen wordt gemaakt.
• De kandidaat heeft ervaring met het meetbaar verbeteren van de toegankelijkheid van content die door anderen wordt gemaakt.
• De kandidaat heeft ervaring met het aanpassen van rich text editors via JavaScript API’s.
• De kandidaat heeft ervaring met maken van schema’s voor rich text data.
• De kandidaat heeft ervaring met het renderen van content uit een CMS met toegankelijke templates.
• De kandidaat heeft ervaring met het ontwikkelen van client-side meerstapsformulieren met state management in JavaScript.
• De kandidaat heeft ervaring met het builden van front-end code met TypeScript en ES Modules, met Vite.
• De kandidaat heeft ervaring met het toepassen van herbruikbare componenten uit Design Systems of Component Libraries.
• De kandidaat is pragmatisch en kan werk opdelen in kleine stappen en fases.
• De kandidaat kan zonder code-duplicatie onderdelen hergebruiken, zodat verbeteringen zowel in de bestaande website als de nieuwe website kunnen worden gebruikt.
• De kandidaat heeft uitgebreide ervaring met moderne JavaScript (ECMAScript). Bijvoorbeeld met: ES Modules, import(), URL, async/await, Map, Set, map/filter/reduce, nullish coalescing, class, import.meta, Promises, Object entries, destructuring.
• De kandidaat heeft ervaring met npm packages gebruiken, monorepositories en npm packages publiceren met semantic versioning.
• De kandidaat heeft ervaring met TypeScript in Node.js.
• De kandidaat heeft ervaring met REST APIs gebruiken voor data waarmee webpagina’s gevuld kunnen worden.
• De kandidaat heeft ervaring met unit tests en end-to-end tests voor front-end code. Bijvoorbeeld met Jest, Vitest, Cypress of Playwright.
• De kandidaat beschikt over goede mondelinge en schriftelijke communicatieve vaardigheden.
• De kandidaat werkt zelfstandig en bewaakt de eigen voortgang als onderdeel van de scrum planning.
• De kandidaat is accuraat, werkt gedisciplineerd en is in staat om de hoeveelheid en diversiteit aan werkzaamheden te ordenen en prioriteren en stemt hierover af met de Product Manager.
• De kandidaat heeft ervaring met open source werken en vindt het vanzelfsprekend om alles (inclusief het proces) open en transparant te delen.
Functie-eisen:
de kandidaat over een goede schriftelijke beheersing van de Nederlandse taal beschikt;
de kandidaat goed mondeling kan samenwerken tijdens online en fysieke bijeenkomsten.
de kandidaat over een goede schriftelijke beheersing van de Engelse taal beschikt;
de kandidaat bij wil dragen aan het NL Design System.
Per wens het aantal jaar/projecten concrete ervaring dat de professional per wens heeft opgedaan in de context van deze aanvraag.
Wensen:
Aantoonbare ervaring met het datamodel en de user interface van een rich text editor aanpassen, voor TipTap of CKEditor
Aantoonbare ervaring in de afgelopen 5 jaar met ontwikkelen, documenteren en onderhouden van open source projecten
Aantoonbare ervaring met de W3C Authoring Tool Accessibility Guidelines (ATAG)
Ervaring met ontwikkeling van plugins in 1 of meer van de volgende CMS-en: Drupal, WordPress, Typo3
Ervaring met NL Design System, wat blijkt uit ervaring met het toepassen van design tokens JSON, documenteren van componenten in Storybook, aanwezigheid op Slack en hergebruik van community componenten.
De kandidaat toont aan over een pragmatische en oplossingsgerichte werkwijze te beschikken. De weging wordt ook meegenomen in het gesprek.
De kandidaat toont aan accuraat te werken om tot een toegankelijk en onderhoudbaar resultaat te komen. De weging wordt ook meegenomen in het gesprek. Solliciteer nu!