Noaber.ai · intern · rebrand-plan v2

Rebrand van de volledige technische kant

noaber.ai → <NIEUW>.ai (werkhypothese: vakwark.ai) · naam-agnostisch opgezet · logo identiek, alleen de naam wijzigt
4 juli 2026 · gebaseerd op live discovery van Cloudflare (24 zones), de noaber.ai-zone (37 DNS-records), michelmedia.nl, custom hostnames, code-referenties, het logo-pakket en de e-mail/SSO-stack. Voorganger: REBRAND-PLAN.md (michelmedia → noaber, mei 2026).
Waarom naam-agnostisch. De nieuwe naam ligt nog niet vast: vakwark.ai hangt in een Cloudflare hold en de merktoets loopt nog. Dit plan gebruikt <NIEUW> als variabele, met vakwark als werkhypothese. Zodra de naam definitief is, is dit plan 1-op-1 uitvoerbaar. Naober.ai (a-o, al in bezit) is een mogelijke alternatieve of aanvullende variant.

1. Uitgangspunten

  1. Geen klant-ontwrichting. KvK, BTW, IBAN en de klant-eigen domeinen blijven gelijk. Klanten merken idealiter alleen een nieuwe afzendernaam en een nieuw logo.
  2. Logo identiek, alleen de naam wijzigt. Zelfde vormtaal, kleur (teal #4FB8B0), font en opzet; de wordmark-tekst "noaber" wordt vervangen.
  3. Cloudflare-account blijft. Account-naam en -ID (91a07c8e…) blijven; er komt alleen een zone <NIEUW>.ai bij. Geen bulk-migratie.
  4. Doorlinken kaal en tijdelijk. noaber.ai gaat 301/302 naar <NIEUW>.ai, technisch en zonder Noaber-branding, aansluitend op de juridische lijn uit het handelsnaam-dossier (overgangsmaatregel, geen permanente naamsvoering).
  5. Maximaal geautomatiseerd. Alles wat via de Cloudflare-API, code en deploys kan, doe ik autonoom. Zie de automatiserings-matrix (§9).

2. Volledige inventaris (wat draait er onder Noaber)

2a. Eigen "noaber"-gemerkte subdomeinen (deze wijzigen mee)

SubdomeinDoel / doelwitActie
noaber.ai + wwwhoofdsite → michelmedia.pages.devNieuwe site op <NIEUW>.ai; noaber.ai → 301
infra.noaber.aiinfra-dashboard (Pages infra-michelmedia)custom domain infra.<NIEUW>.ai erbij
backup.noaber.aibackup-monitoring workercustom domain + env bijwerken
login.noaber.aiSSO/passkey identity (RP_ID=noaber.ai)let op RP_ID-wissel = passkey her-enroll (§7)
brand.noaber.aibrand-site (Pages noaber-brand)nieuwe brand-site
telemetry / mijn / marketing / scan / api.scan / tanken / share / share-api / fallback / dmarc / dmarc-ingesteigen tools/dienstencustom domains + configs meenemen

2b. Klant-subdomeinen op noaber.ai (Michel-branded, wijzigen mee)

SubdomeinKlantImpact
tho.noaber.aiTHO (tho-klantinzicht)nieuw subdomein + link communiceren
tekloeze.noaber.ai + rapport.tekloeze.noaber.aiTe Kloezenieuw subdomein; klant gebruikt ook eigen domein (zie 2d)
autodriesaalten.noaber.aiAutoDriesklant draait op eigen domein (2d) → laag
fenna / vario / ipw / gezondgezagdiverse projecten/klantennieuw subdomein per stuk
offsite-topview.noaber.aiTopView (backup-tunnel)tunnel-hostname bijwerken

2c. Klant-subdomeinen die nog op michelmedia.nl staan

topview.michelmedia.nl (TopView, draait ook op eigen topview.qs.eu), thoview, bubbelbal / bubbelbrein / demo.bubbelbal / shop.bubbelbal, lurvink. michelmedia.nl → noaber.ai 301 staat al live. Deze kunnen los en later migreren; geen haast, en ze zijn niet "noaber"-gebrand.

2d. Klant-EIGEN domeinen (via Custom Hostnames) — deze wijzigen NIET

grootste geruststelling

Deze klant-facing domeinen draaien op de klant z'n eigen naam en blijven ongemoeid, ongeacht jouw rebrand:

autodriesaalten.nl · www.autodriesaalten.nl · beheer.lurvinktextiel.nl · kledingkast.lurvinktextiel.nl · rapportage.tekloeze.nl · topview.qs.eu · app.mmtest.nl

De custom-hostname-koppeling hangt aan je Cloudflare-account, niet aan de naam "noaber". Er is dus geen actie nodig richting deze klanten voor hun eigen domein.

2e. Code, config en assets met "noaber.ai" hardcoded

Referenties gevonden in: infra/ (scripts restic-backup, refresh-infra-stats, dkim-enable, + alle infra-HTML/docs), app/new/ (de hoofdsite + voorwaarden + logo), brand/noaber-ai/ (logo-pakket + brand.css), en klant-repo tekloeze/ (portal-mockup + rapportage-poc, incl. wordmark-SVG). Deze worden per repo find-and-replaced en opnieuw gedeployed.

2f. E-mail-stack (de echte klant-facing "noaber")

noaber.ai draait op Exchange Online / M365 (MX → outlook, autodiscover, SPF, DKIM selector1/2, DMARC quarantine) plus Resend voor transactionele mail (send.noaber.ai → amazonses) en mbmail.noaber.ai (Moneybird). info@noaber.ai is het adres dat klanten kennen en waar facturen vandaan komen. Dit is het gevoeligste onderdeel en vraagt een zorgvuldige overgang (§6).

3. Klant-impact per klant

KlantAfhankelijkheid van "noaber"Impact
TopView / QuickSlideeigen domein topview.qs.eu; draait al losminimaal
AutoDrieseigen domein autodriesaalten.nlminimaal
Lurvink Textieleigen domein lurvinktextiel.nlminimaal
Te Kloezeeigen rapportage.tekloeze.nl + noaber-subdomein + portal-brandinglaag (logo + link)
THOtho.noaber.ai (Michel-branded)laag (nieuw subdomein + link)
HrSound, BubbelBal, Mart Schuttendivers; grotendeels eigen kanalenlaag
Alle klantene-mail-afzender + facturen (info@noaber.ai)de kern-impact

Conclusie: de klant-impact is vrijwel volledig geconcentreerd in e-mail-afzender, factuur-branding en logo. De draaiende diensten op klant-eigen domeinen worden niet geraakt.

4. Logo & brand (identiek, nieuwe naam)

Compleet pakket aanwezig in brand/noaber-ai/logo/: wordmarks (dark/white, outlined en niet-outlined), logo-op-licht/donker (SVG/PNG/PDF, 600–1800w), favicon, en de bron-SVG's _source-light.svg / _source-dark.svg.

Aanpak: ik neem de bron-SVG's, vervang uitsluitend de wordmark-tekst "noaber" door <NIEUW> in exact hetzelfde font en dezelfde spatiëring, en regenereer daaruit het hele pakket (alle SVG/PNG/PDF-varianten + favicon) via het bestaande brand-genereerproces. Het beeldmerk/symbool en de kleuren blijven ongewijzigd. Resultaat: identiek ontwerp, andere naam.

5. DNS & Cloudflare (de motor van de rebrand)

  1. Nieuwe zone <NIEUW>.ai in hetzelfde Cloudflare-account (zodra domein geregistreerd, zie het lopende ticket).
  2. Alle 37 noaber.ai-records spiegelen naar de nieuwe zone via de API (subdomeinen → dezelfde Pages/Workers-doelen). Ik genereer dit 1-op-1 uit de huidige zone.
  3. Per Pages-project en Worker het custom domain x.<NIEUW>.ai toevoegen (naast, niet in plaats van, zolang de overgang loopt).
  4. E-mail-records opzetten (§6).
  5. Ná verificatie: noaber.ai + subdomeinen → kale redirect naar de <NIEUW>-tegenhanger (302 tijdelijk tijdens overgang, conform juridische lijn), pad behouden.

6. E-mail-migratie (zorgvuldigst)

  1. <NIEUW>.ai als domein toevoegen in M365, MX/SPF/DKIM/autodiscover opzetten, info@<NIEUW>.ai aanmaken.
  2. Resend-domein send.<NIEUW>.ai verifiëren (transactionele mail).
  3. Overgangsperiode: info@noaber.ai blijft ontvangen en wordt doorgestuurd, met auto-reply die het nieuwe adres noemt. Je verstuurt nieuw werk vanaf info@<NIEUW>.ai.
  4. Moneybird: afzender, logo en factuur-template omzetten naar de nieuwe naam.
  5. Klanten actief informeren over het nieuwe adres (korte, nette mail).

Deels API (Cloudflare DNS, Resend), deels handmatig (M365-admin, Moneybird).

7. SSO / identity (technisch aandachtspunt)

De passkey-SSO draait op login.noaber.ai met RP_ID = noaber.ai. WebAuthn-passkeys zijn cryptografisch gebonden aan dat RP_ID. Een nieuwe origin login.<NIEUW>.ai vereist opnieuw enrollen van de passkey(s). Dit raakt alleen jouw eigen admin-toegang, geen klanten. Aanpak: nieuwe RP opzetten, opnieuw enrollen met Touch ID, break-glass-fallback behouden, oude origin pas uitzetten na bevestigde toegang. Alternatief: login.noaber.ai tijdelijk laten bestaan als origin tot alles over is.

8. Fasering

FaseWatAfhankelijk van
0Naam + domein definitief (ticket/merktoets)Cloudflare-hold + merkgemachtigde
1Logo-pakket regenereren + nieuwe brand-assetsnaam vast
2Zone + DNS spiegelen, Pages/Workers custom domains erbijdomein actief
3E-mail opzetten (M365 + Resend) + Moneybirdzone actief
4Code/config find-replace + herdeploys (nieuwe site, portals)fase 2
5SSO her-enrollfase 2
6Kale redirect noaber.ai → <NIEUW> aanzetten + klanten informerenalles geverifieerd
7michelmedia.nl-subdomeinen los migreren (geen haast)na 6

9. Automatiserings-matrix

OnderdeelWieToelichting
Zone aanmaken + 37 DNS-records spiegelenClaudeCloudflare-API
Pages/Workers custom domains toevoegenClaudeAPI
Kale redirect-regels opzettenClaudeAPI (dynamic redirect ruleset)
Logo-pakket regenereren (naam vervangen)Claudebron-SVG + genereerproces
Code/config find-replace + herdeploysClauderepos + wrangler
Resend-domein + DKIMClaude + verificatieAPI + DNS
Domein registrerenMichelCloudflare-ticket/Porkbun
M365 domein toevoegen + verifiëren + mailbox aanmakenClaudevia app-registratie in eigen tenant (Graph client-credentials: Domain.ReadWrite.All + User.ReadWrite.All) — zie Appendix A. NB fijne Exchange-config (aliassen/forwarding) evt. Michel/extra rol
Moneybird branding/afzenderMichelMB-instellingen
Passkey her-enrollMichelfysiek Touch ID
Klanten informerenClaude concept + Michel verstuurtik schrijf de mail

Netto: het overgrote deel (DNS, Pages, redirects, logo, code, deploys) kan ik autonoom. Wat bij jou ligt is de registratie, M365/Moneybird-admin (geen API), passkey en het finale akkoord per fase.

10. Risico's & rollback

Appendix A — M365-beheertoegang (eigen tenant)

Scheiding gemeente/Noaber. De actieve az-sessie op deze machine is de Gemeente Oost Gelre-tenant (oostgelre.nl, admin_helsdingen@oostgelrenl). Die wordt NOOIT gebruikt voor de Noaber-rebrand. Voor M365-beheer schakelt Claude expliciet naar een aparte app-registratie in Michels eigen Noaber/michelmedia-tenant.
Setup (Michel, eenmalig):
  1. entra.microsoft.com, inloggen met eigen tenant-admin — controleer dat het de Noaber/michelmedia-tenant is, niet oostgelre.
  2. Entra ID → App registrations → New registration ("Noaber Rebrand Admin", single tenant).
  3. API permissions → Microsoft Graph → Application permissions: Domain.ReadWrite.All, User.ReadWrite.All, Organization.Read.All, Directory.Read.All → Grant admin consent.
  4. Certificates & secrets → New client secret → in Vaultwarden (folder Noaber.ai), item "Noaber Rebrand Admin": tenant_id, client_id, client_secret.

Claude gebruikt daarna client-credentials flow (headless) voor: domein toevoegen, verificatie-TXT ophalen → in Cloudflare zetten → verifiëren, mailbox info@<NIEUW> aanmaken + licentie.