Ga naar inhoud

Modules bouwen

Tabbr is opgebouwd uit modules. Een deel ervan zit in Tabbr zelf (vluchten, personen, rekeningen, …), een ander deel wordt los gepubliceerd in de Module Store en door een club met één klik geïnstalleerd — zoals Groepen, Toestemmingen en Bevoegdheden & competenties.

Zo’n gepubliceerde module bouw je zelf, met dezelfde bouwstenen die Tabbr voor zijn eigen modules gebruikt.

Frontend

Angular 20-componenten die als Native Federation-remote in Tabbr geladen worden: pagina’s, een menu-item, een sectie op het profiel, een widget op het dashboard, een eigen instellingenpagina.

Backend

TypeScript dat op de server draait, in de sandbox van Tabbr: elke nacht (CRON) of wanneer een record bewaard wordt (hook). Met toegang tot de gegevens van de club en een lijst toegelaten externe hosts.

Eigen entiteiten

Een module declareert haar eigen gegevens (bv. Groep, Bevoegdheid). De club krijgt er lijsten, filters, toegangsregels, hooks en audit bij — zonder dat jij er iets voor bouwt.

Contracten

Modules gebruiken elkaar — en Tabbr — alleen via contracten: een getypeerde, geversioneerde interface. Nooit via elkaars code.

  1. 1BouwenAngular + TypeScript, met @tabbr/module-sdk
  2. 2Testen in je clubnpm run publish-module
  3. 3Indienen in de storenpm run publish-store
  4. 4Installerendoor elke club, met één klik
  1. Je bouwt de module in een eigen workspace, met @tabbr/module-sdk en @tabbr/module-cli.
  2. npm start toont ze in de dev shell: het kader van Tabbr (menu, header, dashboard, profiel, instellingen) rond je module, tegen de API van je club.
  3. npm run publish-module zet ze rechtstreeks in je eigen club — ideaal om te testen.
  4. npm run publish-store dient de broncode in bij de Module Store. Tabbr bouwt ze zelf, een beheerder keurt ze goed, en vanaf dan kan elke club ze installeren.