[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"technologies":3,"\u002Fservices\u002Fflutter-app-development\u002Fadd-to-app":167,"service-parent:\u002Fservices\u002Fflutter-app-development\u002Fadd-to-app":515,"service-children:\u002Fservices\u002Fflutter-app-development\u002Fadd-to-app":1008,"glossary":1009},[4,10,15,21,26,32,38,43,48,53,58,63,68,73,77,82,87,92,97,103,108,113,118,123,128,133,138,143,147,152,157,162],{"title":5,"description":6,"slug":7,"category":8,"icon":9},"Android","Elke app die we uitbrengen bereikt Android — platform-API's, uitvoering op de achtergrond, permissies en de winkeleisen die daarbij horen.","android","framework","logos:android-icon",{"title":11,"description":12,"slug":13,"category":8,"icon":14},"Angular","Het front-endframework waarin we werken als een product al Angular is — een kant-en-klare structuur die past bij grote, langlevende applicaties.","angular","logos:angular-icon",{"title":16,"description":17,"slug":18,"category":19,"icon":20},"Dart","De taal waarin elke Flutter-app die we uitbrengen geschreven is — sound null safety, echte pattern matching, en een compiler voor native en web.","dart","language","logos:dart",{"title":22,"description":23,"slug":24,"category":8,"icon":25},"Django","Het Python-framework dat we pakken als een product op dag één een beheeromgeving, authenticatie en een echt datamodel nodig heeft.","django","logos:django-icon",{"title":27,"description":28,"slug":29,"category":30,"icon":31},"Docker","Elke service die we bouwen verschijnt als container, zodat wat op een laptop, in CI en in productie draait één artefact is en niet drie verschillende.","docker","infrastructure","logos:docker-icon",{"title":33,"description":34,"slug":35,"category":36,"icon":37},"Fastlane","De releaseautomatisering achter ons mobiele werk — ondertekenen, builds en winkeluploads draaien vanuit CI, niet vanaf één laptop.","fastlane","tools","logos:fastlane",{"title":39,"description":40,"slug":41,"category":8,"icon":42},"Flutter","Onze belangrijkste mobiele stack sinds 2018 — één Dart-codebase die uitkomt op iOS, Android, web en desktop zonder een apart team per platform.","flutter","logos:flutter",{"title":44,"description":45,"slug":46,"category":36,"icon":47},"Git","Elk project dat we aanraken leeft in Git — beoordeelde pull requests, CI op elke branch, en een historie die maanden later nog te volgen is.","git","logos:git-icon",{"title":49,"description":50,"slug":51,"category":19,"icon":52},"Go","Onze backendtaal voor realtime-API's en services onder belasting — kleine binaries, snelle builds, en gelijktijdigheid die leesbaar blijft.","go","logos:gopher",{"title":54,"description":55,"slug":56,"category":30,"icon":57},"Google Cloud","De cloud waarop onze productieworkloads draaien — beheerde Kubernetes, opslag en netwerken, zonder handgebouwde servers die niemand wil onderhouden.","gcp","logos:google-cloud",{"title":59,"description":60,"slug":61,"category":36,"icon":62},"Gradle","Het buildsysteem waar elke Android-release doorheen gaat — product flavours, ondertekeningsconfiguraties, en de afhankelijkheden onder een Flutter-app.","gradle","logos:gradle",{"title":64,"description":65,"slug":66,"category":30,"icon":67},"Helm","Hoe we een Kubernetes-uitrol verpakken — service, configuratie, secrets en ingress als één versiebeheerde eenheid die je kunt promoveren en terugdraaien.","helm","logos:helm",{"title":69,"description":70,"slug":71,"category":19,"icon":72},"Kotlin","Waar we naar grijpen als een Flutter-app echt Android eronder nodig heeft — platform channels, achtergrondwerk en integraties met native SDK's.","kotlin","logos:kotlin-icon",{"title":74,"description":75,"slug":76,"category":8,"icon":72},"Kotlin Multiplatform","Bedrijfslogica delen tussen iOS en Android terwijl elk platform zijn eigen native UI houdt — het alternatief wanneer Flutter niet past.","kmp",{"title":78,"description":79,"slug":80,"category":30,"icon":81},"Kubernetes","Hoe we services in productie draaien — Helm-uitrollen, rollouts die terug te draaien zijn, en schalen zonder dat iemand om 3 uur 's nachts wakker hoeft te zijn.","kubernetes","logos:kubernetes",{"title":83,"description":84,"slug":85,"category":30,"icon":86},"NATS","Lichtgewicht berichtenverkeer tussen services — publish\u002Fsubscribe en request\u002Freply zonder het beheergewicht van een volledig brokercluster.","nats","logos:nats-icon",{"title":88,"description":89,"slug":90,"category":8,"icon":91},"Nuxt","Vue met serverrendering, routering en SEO al geregeld — hoe we marketingsites en webapps bouwen die bij het eerste laden snel en vindbaar moeten zijn.","nuxt","logos:nuxt-icon",{"title":93,"description":94,"slug":95,"category":19,"icon":96},"PHP","Waar we met een bestaande PHP-backend werken — hem uitbreiden, ermee integreren, en de mobiele en webclients bouwen die hij moet bedienen.","php","logos:php",{"title":98,"description":99,"slug":100,"category":101,"icon":102},"PostgreSQL","Onze standaarddatabase — waar we naar grijpen tenzij een product een specifieke reden geeft om dat niet te doen, van schema tot indexen.","postgres","database","logos:postgresql",{"title":104,"description":105,"slug":106,"category":19,"icon":107},"Python","Onze taal voor backends, datawerk en AI-integraties — inclusief de Python-bindings die we bij onze eigen Rust-tooling leveren.","python","logos:python",{"title":109,"description":110,"slug":111,"category":8,"icon":112},"React","De front-endbibliotheek waarin we werken als een product al React is — componenten, hooks, en het ecosysteem dat eromheen is gegroeid.","react","logos:react",{"title":114,"description":115,"slug":116,"category":101,"icon":117},"Redis","Waar we data neerzetten die snel moet zijn en opnieuw op te bouwen valt — caches, sessies, verzoeklimieten en achtergrondwachtrijen.","redis","logos:redis",{"title":119,"description":120,"slug":121,"category":19,"icon":122},"Ruby","De taal waarin onze mobiele releaseautomatisering geschreven is — Fastlane-lanes, eigen acties, en de CI-lijm die builds naar de winkels brengt.","ruby","logos:ruby",{"title":124,"description":125,"slug":126,"category":19,"icon":127},"Rust","Waar we heen gaan als prestaties én correctheid allebei tellen — documenten renderen, CLI-tooling, en services die snel en voorspelbaar moeten blijven.","rust","simple-icons:rust",{"title":129,"description":130,"slug":131,"category":101,"icon":132},"SQLite","De database die meereist in de app — lokale caches, offline-first opslag, en alles wat ook zonder netwerk moet blijven werken.","sqlite","logos:sqlite",{"title":134,"description":135,"slug":136,"category":8,"icon":137},"Strapi","Een headless CMS waar we naar grijpen als redacteuren de content moeten beheren — een echte beheeromgeving en een schone API, zonder ze zelf te bouwen.","strapi","logos:strapi-icon",{"title":139,"description":140,"slug":141,"category":19,"icon":142},"Swift","Waar we naar grijpen als een Flutter-app echt iOS eronder nodig heeft — platform channels, integraties met native SDK's, widgets en App Clips.","swift","logos:swift",{"title":144,"description":145,"slug":146,"category":8,"icon":142},"SwiftUI","Het UI-framework van Apple, waar we de native oppervlakken bouwen die een Flutter-app niet kan afdekken — widgets, App Clips, extensies en systeemintegraties.","swiftui",{"title":148,"description":149,"slug":150,"category":8,"icon":151},"Tailwind CSS","Hoe we elke front-end die we bouwen vormgeven — utility-klassen en designtokens in plaats van een stylesheet die alleen maar groeit en nooit wordt opgeschoond.","tailwind","logos:tailwindcss-icon",{"title":153,"description":154,"slug":155,"category":19,"icon":156},"TypeScript","De standaard voor alles wat we voor de browser en voor Node-services schrijven — types die integratiebugs vangen voordat ze een review halen.","typescript","logos:typescript-icon",{"title":158,"description":159,"slug":160,"category":8,"icon":161},"Vue","Ons front-endframework voor beheerpanelen, dashboards voor winkeliers en webapps die jaren onderhoudbaar moeten blijven, geen sprints.","vue","logos:vue",{"title":163,"description":164,"slug":165,"category":36,"icon":166},"Whisper","Het opensource spraakherkenningsmodel van OpenAI — de transcriptiemotor achter spraakinvoer, draaiend als backendservice én op het toestel in de app.","whisper","simple-icons:openai",{"id":168,"title":169,"body":170,"description":478,"extension":479,"footerCta":480,"headingCta":494,"image":499,"meta":503,"metaDescription":504,"metaTitle":505,"navigation":506,"ogDescription":507,"parent":508,"path":509,"seo":510,"slug":511,"stem":512,"updated":513,"__hash__":514},"services_nl\u002Fservices\u002Fadd-to-app.md","Add-to-app: Flutter in je native app",{"type":171,"value":172,"toc":453},"minimark",[173,177,191,196,225,230,233,237,251,255,273,282,286,290,295,302,306,310,313,317,320,324,333,337,345,349,352,356,359,363,370,374,385,396,399,403,416,429,433,436,440],[174,175,176],"p",{},"Add-to-app is het officiële mechanisme van Flutter om een Flutter-module in te bedden in een bestaande native iOS- of Android-applicatie. De gastapp blijft precies wat hij is — jouw Swift- of Kotlin-codebase, jouw releaseproces, jouw gebruikers — en Flutter komt daarachter te staan als één gecompileerde module, die de schermen rendert die jij hem toevertrouwt. Elk van die schermen wordt één keer geschreven en draait op beide platforms.",[174,178,179,180,184,185,190],{},"Deze pagina is voor teams die Flutter ",[181,182,183],"em",{},"binnen"," de app willen die ze al hebben: een native product dat niemand gaat herbouwen, maar waarvan elke volgende functie het dubbele blijft kosten omdat die apart voor iOS en Android moet worden gebouwd. Is je werkelijke doel om volledig op Flutter uit te komen, dan is dat een andere opdracht met dezelfde mechaniek — lees dan ",[186,187,189],"a",{"href":188},"\u002Fservices\u002Fflutter-app-development\u002Fflutter-migration","migratie van React Native en native",", die eerlijk is over het feit dat het een herbouw is. Hier wordt niets herbouwd: de native app blijft het product, en Flutter verdient zijn plek functie voor functie.",[192,193,195],"h3",{"id":194},"de-opdrachten-die-we-uitvoeren","De opdrachten die we uitvoeren",[197,198,199,207,213,219],"ul",{},[200,201,202,206],"li",{},[203,204,205],"strong",{},"Een pilotfunctie"," — één afgebakende functie, gebouwd in Flutter en uitgebracht binnen je beide native apps, waarbij de integratiekosten en de opbrengst worden gemeten in plaats van bediscussieerd",[200,208,209,212],{},[203,210,211],{},"Functiepariteit inhalen"," — het scherm dat je iOS-app wel heeft en je Android-app niet (of andersom), één keer gebouwd voor beide in plaats van een tweede keer voor één",[200,214,215,218],{},[203,216,217],{},"Het nieuwe oppervlak"," — een loyaliteitsprogramma, een boekingsstroom, een chat: een op zichzelf staande toevoeging aan een volwassen native product, die beide platforms bereikt op één budget",[200,220,221,224],{},[203,222,223],{},"Fundament voor adoptie"," — de modulescaffolding, de routerkoppeling, de CI-opzet en de platform-channel-contracten netjes ingericht, zodat je eigen engineers de functies opleveren",[226,227,229],"h2",{"id":228},"voor-wie-dit-is-en-wie-beter-kan-migreren","Voor wie dit is — en wie beter kan migreren",[174,231,232],{},"Add-to-app verdient zichzelf terug onder specifieke voorwaarden, en we benoemen die liever dan een integratie te verkopen aan een team dat iets anders nodig heeft.",[192,234,236],{"id":235},"tekenen-dat-add-to-app-past","Tekenen dat add-to-app past",[197,238,239,242,245,248],{},[200,240,241],{},"Elke roadmapfunctie wordt twee keer gebouwd, en de iOS- en Android-versies van je app zijn in mogelijkheden uit elkaar gaan lopen",[200,243,244],{},"De app is te groot of te bewezen om te herbouwen, dus \"gewoon Flutter gebruiken\" is nooit een beschikbaar antwoord geweest",[200,246,247],{},"Je wilt Flutter beoordelen op echt productiewerk — één functie, echte gebruikers, gemeten — voordat je een grotere verbintenis aangaat",[200,249,250],{},"Twee platformteams zijn moeilijk gelijkmatig te bemensen, en nieuwe oppervlakken lopen vast op het platform dat dit kwartaal toevallig onderbezet is",[192,252,254],{"id":253},"wanneer-het-niet-de-juiste-keuze-is","Wanneer het NIET de juiste keuze is",[197,256,257,264,267,270],{},[200,258,259,260,263],{},"De app is klein genoeg dat een verse Flutter-bouw of een ",[186,261,262],{"href":188},"migratie"," scherm voor scherm minder kost dan het onderhouden van een naad tussen native en Flutter — integratie heeft overhead, en een kleine gastapp kan die niet terugverdienen",[200,265,266],{},"Het besluit om op 100% Flutter uit te komen is al genomen — voer het dan vanaf dag één uit als een migratie, met een migratiekaart, in plaats van er langzaam in af te glijden",[200,268,269],{},"De app is al React Native — een tweede cross-platformruntime naast de eerste inbedden verergert het probleem; de realistische opties voor dat team zijn blijven zitten of migreren",[200,271,272],{},"De functie die je wilt is een diepe platformmogelijkheid — een ervaring die om widgets draait, functionaliteit die op de Watch begint — waar Flutter het verkeerde gereedschap is, en dat zeggen we dan ook",[274,275,276],"info-box",{},[174,277,278,281],{},[203,279,280],{},"De eerlijke lezing:"," een hybride app is een permanente naad — twee toolchains, twee sets idiomen, en een grens die elke engineer in het team moet begrijpen. Add-to-app is die kosten waard wanneer de gastapp te groot is om te herbouwen en de roadmap de belasting van twee platforms blijft betalen. Is geen van beide waar voor jouw app, dan is een van de naburige pagina's het betere antwoord — en in het eerste gesprek zeggen we welke.",[226,283,285],{"id":284},"hoe-stapsgewijze-adoptie-verloopt","Hoe stapsgewijze adoptie verloopt",[192,287,289],{"id":288},"de-add-to-app-stroom","De add-to-app-stroom",[291,292],"add-to-app-flow",{":items":293,"step-label":294},"[{\"label\": \"Native app blijft het product\", \"description\": \"Je iOS- en Android-apps blijven ongewijzigd uitkomen — geen bevriezing, geen parallelle herbouw, geen omschakeling aan de horizon\", \"icon\": \"lucide:smartphone\"}, {\"label\": \"Flutter-module ingebed\", \"description\": \"Eén Flutter-module wordt in beide gastapps ingebouwd en deelt hun navigatie, authenticatie en analytics via vastgelegde contracten\", \"icon\": \"lucide:puzzle\"}, {\"label\": \"Pilotfunctie komt uit\", \"description\": \"Een afgebakende functie wordt één keer in Flutter gebouwd en binnen beide apps uitgebracht, met de omvang- en opstartkosten vooraf en achteraf gemeten\", \"icon\": \"lucide:rocket\"}, {\"label\": \"Adoptie groeit functie voor functie\", \"description\": \"Elk nieuw oppervlak dat in de module landt is er één dat je niet twee keer hebt gebouwd — en elk is een besluit, geen verplichting\", \"icon\": \"lucide:layers\"}, {\"label\": \"Jij bepaalt het eindspel\", \"description\": \"Blijf onbeperkt hybride, draag de module over aan je eigen team, of zet het momentum om in een volledige migratie — elke grens is een stoppunt\", \"icon\": \"lucide:git-branch\"}]","Stap",[174,296,297,298,301],{},"Deze aanpak gebruikt bewust dezelfde machinerie als onze ",[186,299,300],{"href":188},"migratiedienst"," — een Flutter-module achter een gedeelde router, schermen die één voor één verhuizen. Het verschil is de bestemming: een migratie faseert de native gastapp aan het einde uit, en adoptie hoeft dat nooit. Dat betekent ook dat adoptie later netjes omgezet kan worden in een migratie als de module dat verdient, zonder dat er iets wordt weggegooid.",[226,303,305],{"id":304},"wat-add-to-app-werkelijk-vraagt","Wat add-to-app werkelijk vraagt",[192,307,309],{"id":308},"eén-engine-met-een-beheerde-levenscyclus","Eén engine, met een beheerde levenscyclus",[174,311,312],{},"Een Flutter-module brengt de Flutter-engine mee, en die engine is een hulpbron die de gastapp bewust moet beheren: voorverwarmd zodat het eerste Flutter-scherm opent zonder zichtbare opstarttijd, gedeeld over toegangspunten in plaats van per scherm geïnstantieerd, en vrijgegeven wanneer het platform geheugen terugvraagt. Dit verkeerd doen is onzichtbaar in een demo en overduidelijk in productie. Het is het eerste wat we bouwen, niet het laatste wat we bijstellen.",[192,314,316],{"id":315},"navigatie-over-de-grens","Navigatie over de grens",[174,318,319],{},"Gebruikers maakt het niet uit welk framework het scherm rendert waar ze op staan, en de navigatie moet zich daar ook naar gedragen: teruggebaren die de conventie van elk platform volgen, deeplinks die net zo betrouwbaar op Flutter-schermen landen als op native schermen, en state die de oversteek in beide richtingen overleeft. Het routercontract tussen gastapp en module is het stuk add-to-app-architectuur dat bepaalt of de naad onzichtbaar is of een permanente bron van bugs.",[192,321,323],{"id":322},"gedeelde-diensten-geleend-in-plaats-van-gedupliceerd","Gedeelde diensten, geleend in plaats van gedupliceerd",[174,325,326,327,332],{},"Je app heeft al authenticatie, analytics, een netwerklaag en feature flags. De Flutter-module moet die lenen via ",[328,329,331],"term",{"slug":330},"platform-channels","platform channels"," — niet zijn eigen kopieën laten groeien, want zo eindigt een hybride app met twee sessies, twee eventschema's en metrieken die niemand vertrouwt. Die channelcontracten precies vastleggen is het grootste deel van de fundamentopdracht, en het is werk dat zich uitbetaalt bij elke functie die volgt.",[192,334,336],{"id":335},"twee-toolchains-in-één-pijplijn","Twee toolchains in één pijplijn",[174,338,339,340,344],{},"Na de integratie bouwt je ",[328,341,343],{"slug":342},"ci-cd","CI\u002FCD"," de Flutter-module én beide native gastapps, en wordt de module geversioneerd tegen twee releasetreinen die niet altijd samen zullen bewegen. We nemen de modulebuild op in je bestaande pipeline — gecachet, reproduceerbaar, en eigendom van je repo in plaats van van een laptop — want een integratie die je CI niet kan bouwen, is niet geïntegreerd.",[192,346,348],{"id":347},"een-naad-waar-je-designers-mee-kunnen-leven","Een naad waar je designers mee kunnen leven",[174,350,351],{},"Flutter tekent zijn eigen pixels, en dat heeft twee kanten: het erft je native componenten niet, maar het reproduceert je designsysteem exact — zodra je tokens, typografie en spacing zijn overgezet naar het thema van de module. Dat overzetten doen we als onderdeel van het fundament, zodat een gebruiker die van een native scherm een Flutter-scherm in scrollt op geen enkele manier kan zien waar de grens lag.",[192,353,355],{"id":354},"de-kosten-gemeten-in-plaats-van-beweerd","De kosten, gemeten in plaats van beweerd",[174,357,358],{},"Flutter inbedden voegt echt gewicht toe: in de orde van enkele megabytes aan een Android-release en iets meer op iOS, plus de opstart van de engine bij de eerste lancering van een Flutter-scherm. De exacte getallen hangen af van jouw app, en daarom horen bij de oplevering van de pilot de voor- en nametingen van binaire omvang en opstarttijd — jij beslist of je verder gaat op basis van data uit je eigen product, niet uit een benchmarkblog.",[226,360,362],{"id":361},"precedent-in-productie","Precedent in productie",[174,364,365,366,369],{},"Add-to-app is al jaren een ondersteund integratiemodel van Flutter, en de bekendste gebruiker is Google Pay, dat Flutter adopteerde binnen een bestaande native app met honderden miljoenen gebruikers voordat het de inzet vergrootte. Het patroon is wat deze pagina beschrijft: inbedden, één oppervlak uitbrengen, meten, dan beslissen. Onze eigen staat van dienst ermee komt uit ",[186,367,368],{"href":188},"migratiewerk",", waar dezelfde machinerie van een module achter een router hele apps overzet; adoptie gebruikt die machinerie met een lichtere verbintenis.",[226,371,373],{"id":372},"hoe-we-werken","Hoe we werken",[174,375,376,379,380,384],{},[203,377,378],{},"Fundament en pilot met vaste scope."," We integreren de module in beide gastapps, zetten de designtokens over, leggen de channelcontracten vast en brengen de eerste functie uit — een afgebakende opdracht met de metingen als onderdeel van de oplevering. Ons ",[186,381,383],{"href":382},"\u002Fblog\u002Fflutter-app-development-process","ontwikkelproces"," beschrijft hoe we afgebakend werk week na week uitvoeren.",[174,386,387,390,391,395],{},[203,388,389],{},"Ingebedde engineers."," Onze Flutter-engineers sluiten aan bij je native team, in jouw repo en jouw sprints, en bouwen de module uit naast de mensen die de gastapp bezitten — zie ",[186,392,394],{"href":393},"\u002Fservices\u002Fteam-augmentation","teamuitbreiding",". Dit is de natuurlijke vorm zodra de pilot zich heeft bewezen en de module een plek wordt waar je roadmap regelmatig landt.",[174,397,398],{},"Hoe dan ook sturen we, zodra we de eisen scherp hebben, binnen twee werkdagen een offerte met duidelijke scope.",[226,400,402],{"id":401},"wat-een-add-to-app-integratie-kost","Wat een add-to-app-integratie kost",[174,404,405,406,410,411,415],{},"De opdracht van fundament plus pilot wordt geoffreerd nadat we de app hebben gezien: de integratiekosten worden bepaald door de gastapp — zijn navigatiearchitectuur, zijn buildsysteem, hoe zijn gedeelde diensten worden ontsloten — veel meer dan door de pilotfunctie zelf, dus een getal dat vóór het bekijken van de codebase wordt genoemd zou fictie zijn. Als ankerpunt: een afgebakende pilot blijft ruim onder wat een losstaande app kost — de gepubliceerde niveaus op de pagina ",[186,407,409],{"href":408},"\u002Fservices\u002Fflutter-app-development","Flutter-appontwikkeling"," beginnen bij ",[412,413],"service-price",{"service":414},"flutter-app-development\u002Fmvp"," voor een volledige MVP, en een pilotfunctie binnen een bestaande gastapp is een fractie van die scope.",[174,417,418,419,421,422,425,426,428],{},"Voor het ingebedde model geldt het gepubliceerde tarief van ",[186,420,394],{"href":393},": ",[412,423],{"service":424},"team-augmentation\u002Fsenior"," per senior engineer per maand. En is het eerlijke eindspel van de roadmap een app die volledig Flutter is, prijs het dan als wat het is — een ",[186,427,262],{"href":188},", die op die pagina wordt geankerd tegen een volledige herbouw, niet als een adoptie die haar naam is ontgroeid.",[226,430,432],{"id":431},"veelgestelde-vragen","Veelgestelde vragen",[174,434,435],{},"Veelgestelde vragen van teams die Flutter binnen een bestaande native app overwegen.",[437,438],"questions",{":items":439},"[{\"title\":\"Kunnen jullie Flutter toevoegen aan een bestaande iOS- of Android-app?\",\"text\":\"Ja — daar bestaat het add-to-app-integratiemodel van Flutter precies voor. Een Flutter-module wordt ingebed in je bestaande Swift- of Kotlin-app, aangesloten op zijn navigatie, authenticatie en analytics via platform channels, en rendert de schermen die jij erin laat bouwen. Je app blijft de hele tijd ongewijzigd uitkomen; de module wordt toegevoegd naast de code die je hebt, niet in plaats daarvan. Elk Flutter-scherm wordt één keer geschreven en draait binnen zowel je iOS- als je Android-app.\"},{\"title\":\"Moeten we de hele app naar Flutter migreren?\",\"text\":\"Nee. Adoptie en migratie delen dezelfde mechaniek — een Flutter-module achter een gedeelde router — maar een migratie verbindt zich eraan de native app aan het einde uit te faseren, en adoptie hoeft dat nooit. Elke functiegrens is een legitiem stoppunt: sommige producten blijven onbeperkt hybride met Flutter als eigenaar van een handvol oppervlakken, sommige dragen de module over aan hun eigen team, en sommige zetten het momentum om in een volledige migratie zodra de module dat heeft verdiend. Niets wat tijdens de adoptie is gebouwd wordt weggegooid als je later verder gaat.\"},{\"title\":\"Hoeveel voegt Flutter inbedden toe aan de app-omvang?\",\"text\":\"De Flutter-engine en de module voegen echt gewicht toe — in de orde van enkele megabytes aan een Android-releasebuild en iets meer op iOS. Het precieze getal hangt af van je app en van wat de module bevat, en daarom omvat onze pilotopdracht voor- en nametingen van binaire omvang en opstarttijd op je werkelijke product. Je neemt het adoptiebesluit op basis van je eigen getallen, niet van een generieke benchmark.\"},{\"title\":\"Is add-to-app zinnig voor een React Native-app?\",\"text\":\"Mechanisch werkt het — Flutter kan op dezelfde manier in een React Native-gastapp worden ingebed als in een volledig native app. Strategisch is het zelden zinnig: je zou twee cross-platformruntimes, twee bruggen en drie UI-idiomen in één binary draaien, wat het onderhoudsprobleem verergert in plaats van oplost. Voor een React Native-team dat ontevreden is met de status quo zijn de realistische opties blijven zitten of scherm voor scherm naar Flutter migreren — en onze migratiepagina opent met wie geen van beide zou moeten doen.\"},{\"title\":\"Is add-to-app bewezen in productie?\",\"text\":\"Ja. Add-to-app is al jaren een ondersteund integratiemodel van Flutter, en de bekendste gebruiker is Google Pay, dat Flutter inbedde in een native app met honderden miljoenen gebruikers voordat het de inzet vergrootte. Het patroon van een module inbedden, één oppervlak uitbrengen, meten en dan beslissen is bekend terrein. De engineeringrisico's die overblijven zijn de integratiedetails — de levenscyclus van de engine, navigatie over de grens, gedupliceerde diensten — en dat is precies het werk dat een gestructureerde fundamentopdracht naar voren haalt.\"},{\"title\":\"Moeten onze native engineers Dart leren?\",\"text\":\"Niet voor de pilot — die bouwen wij, en jouw team beoordeelt de modulegrens in plaats van de Dart erbinnen. Groeit de Flutter-adoptie, dan zullen sommige van je engineers in de module willen werken, en Dart is een kleine stap vanaf Swift of Kotlin: sterk getypeerd, met garbage collection, en dichter bij wat ze al schrijven dan JavaScript zou zijn. Het model met ingebedde engineers bestaat precies voor deze overgang — onze mensen bouwen naast de jouwe totdat de module een codebase is die je team bezit in plaats van alleen huisvest.\"}]",[174,441,442,443,446,447,449,450,452],{},"Lees de ",[186,444,445],{"href":188},"migratiepagina"," als de bestemming volledig Flutter is, ",[186,448,394],{"href":393}," voor het ingebedde model, of begin bij de pijler ",[186,451,409],{"href":408},".",{"title":454,"searchDepth":455,"depth":455,"links":456},"",2,[457,459,463,466,474,475,476,477],{"id":194,"depth":458,"text":195},3,{"id":228,"depth":455,"text":229,"children":460},[461,462],{"id":235,"depth":458,"text":236},{"id":253,"depth":458,"text":254},{"id":284,"depth":455,"text":285,"children":464},[465],{"id":288,"depth":458,"text":289},{"id":304,"depth":455,"text":305,"children":467},[468,469,470,471,472,473],{"id":308,"depth":458,"text":309},{"id":315,"depth":458,"text":316},{"id":322,"depth":458,"text":323},{"id":335,"depth":458,"text":336},{"id":347,"depth":458,"text":348},{"id":354,"depth":458,"text":355},{"id":361,"depth":455,"text":362},{"id":372,"depth":455,"text":373},{"id":401,"depth":455,"text":402},{"id":431,"depth":455,"text":432},"Nieuwe functies in Flutter binnen de iOS- en Android-apps die je al uitbrengt — één ingebedde module, scherm voor scherm, zonder je aan een migratie te verbinden","md",{"heading":481,"text":482,"buttons":483},"Denk je aan Flutter binnen je app?","Vertel ons wat de volgende functie op je roadmap is en welke platforms die moet bereiken. Wij zeggen je wat Flutter inbedden in je app inhoudt, wat het kost, en of het de moeite waard is voor een app van jouw omvang.",[484,490],{"to":485,"label":486,"leadingIcon":487,"color":488,"variant":489},"\u002Fcontact?intent=flutter-app-development","Plan een gesprek","lucide:message-circle","neutral","outline",{"to":188,"label":491,"color":492,"variant":493},"Toch migreren? Begin hier","primary","solid",[495,496],{"to":485,"label":486,"leadingIcon":487,"color":492,"variant":493},{"to":497,"label":498,"color":488,"variant":489},"\u002Fportfolio","Bekijk ons werk",{"url":500,"alt":501,"text":502},"\u002Fservices\u002Fadd-to-app.webp","Stapsgewijze Flutter-adoptie in een bestaande native app","Stuk voor stuk",{},"Flutter in een bestaande iOS- of Android-app met add-to-app: één ingebedde module, nieuwe functies op beide platforms, geen herbouw. Eerlijk over de grenzen.","Add-to-app: Flutter in je bestaande native app",true,"Je native app blijft het product. Flutter komt binnen als één ingebedde module, levert een functie op beide platforms tegelijk, en verdient de volgende — of niet.","flutter-app-development","\u002Fservices\u002Fflutter-app-development\u002Fadd-to-app",{"title":169,"description":478},"add-to-app","services\u002Fadd-to-app","2026-09-05","7f3ePu6iY5pgW_DRhJThx1vIKQBJM-rsK0GD-5PVnHI",{"id":516,"title":409,"body":517,"description":981,"extension":479,"footerCta":982,"headingCta":990,"image":996,"meta":999,"metaDescription":1000,"metaTitle":1001,"navigation":506,"ogDescription":1002,"parent":1003,"path":408,"seo":1004,"slug":508,"stem":1005,"updated":1006,"__hash__":1007},"services_nl\u002Fservices\u002Fflutter-app-development.md",{"type":171,"value":518,"toc":965},[519,526,542,546,550,553,557,569,573,580,584,601,619,632,636,639,643,649,652,657,664,669,672,678,681,686,690,693,699,716,720,723,756,759,763,766,872,879,881,894,905,911,915,918,922,937,939,942,945],[174,520,521,522,525],{},"Flutter-appontwikkeling betekent je iOS- en Android-apps — en, waar dat zijn plek verdient, je webapp — bouwen vanuit één codebase, met één team, op Googles Flutter-toolkit. Goed gedaan kost het ",[203,523,524],{},"30–40% minder om te bouwen dan twee native apps",", en de kloof groeit gedurende de levensduur van het product, omdat elke toekomstige functie en fix één keer wordt geschreven in plaats van twee keer. Slecht gedaan levert het een app op die op beide platforms nét niet goed aanvoelt — en daarom doet het framework er minder toe dan wie het in handen heeft.",[174,527,528,529,532,533,537,538,452],{},"We zijn een team dat sinds 2019 Flutter naar productie brengt en verder weinig anders doet. Zeven van de acht projecten in ons ",[186,530,531],{"href":497},"portfolio"," zijn Flutter-apps, van een live beleggingsplatform tot een vloot van vijftien white-label-apps gebouwd vanuit één codebase. Onze engineers onderhouden ",[186,534,536],{"href":535},"\u002Fopen-source","opensource-Flutterpakketten"," op pub.dev, en onze prijzen staan op deze pagina in plaats van in een privéofferte — we zetten liever de getallen online en gaan de discussie aan dan dat we openen met \"dat hangt ervan af\". De volledige uiteenzetting van wat ze bepaalt staat in onze ",[186,539,541],{"href":540},"\u002Fblog\u002Fflutter-app-development-cost-2026","kostengids",[543,544],"statistics-grid",{":items":545},"[{\"icon\": \"lucide:dollar-sign\", \"value\": \"30-40%\", \"label\": \"Lagere bouwkosten\", \"description\": \"Eén codebase in plaats van twee native apps — en de kloof groeit met het onderhoud\"}, {\"icon\": \"lucide:clock\", \"value\": \"2-3x\", \"label\": \"Sneller in beide winkels\", \"description\": \"Eén team levert iOS en Android samen op\"}, {\"icon\": \"lucide:layers\", \"value\": \"7\", \"label\": \"Flutter-apps opgeleverd\", \"description\": \"In productie, elk met een casestudy om na te lezen\"}, {\"icon\": \"lucide:package\", \"value\": \"6\", \"label\": \"Opensourcepakketten\", \"description\": \"Onderhouden door onze engineers op pub.dev en daarbuiten\"}]",[226,547,549],{"id":548},"wie-je-flutter-app-bouwt","Wie je Flutter-app bouwt",[174,551,552],{},"Frameworks opsommen kan iedereen. Wat een Flutter-bureau onderscheidt van een bureau dat weleens Flutter heeft gebruikt, is productiewerk dat je kunt inspecteren — dus hier is het onze.",[192,554,556],{"id":555},"een-live-beleggingsapp-onder-realtime-marktdata","Een live beleggingsapp onder realtime marktdata",[174,558,559,563,564,568],{},[186,560,562],{"href":561},"\u002Fportfolio\u002Fextraetf","ExtraETF"," is een beleggingsapp voor Isarvest GmbH: live koersen, portefeuillebeheer en grafieken die soepel blijven terwijl koersen binnenstromen over WebSockets vanaf een Go-backend die we ook bouwden. Zes maanden tot beide winkels. Het moeilijke aan zo'n app is niet de grafiek tekenen — het is de framerate vlak houden terwijl er elke paar honderd milliseconden data binnenkomt, een kwestie van rebuilds afbakenen die we in ",[186,565,567],{"href":566},"\u002Fblog\u002Fextraetf-realtime-fintech-flutter-go","technisch detail"," hebben opgeschreven.",[192,570,572],{"id":571},"twee-native-apps-samengevoegd-tot-één-codebase","Twee native apps, samengevoegd tot één codebase",[174,574,575,579],{},[186,576,578],{"href":577},"\u002Fportfolio\u002Fformtastic","Formtastic"," verscheen jarenlang als aparte iOS- en Android-apps — elke functie twee keer gebouwd, releases die uit de pas liepen. We brachten het product samen in één Flutter-codebase zonder de klanten te verstoren die er al op vertrouwden, en bouwden daarna verder: iPad-ondersteuning, offline synchronisatie, spraak naar tekst voor formuliervelden. Het is het duidelijkste voor-en-na dat we kunnen laten zien van wat één codebase met een roadmap doet, en de klant zegt het hieronder in zijn eigen woorden.",[192,581,583],{"id":582},"vijftien-merkapps-vanuit-één-codebase","Vijftien merkapps vanuit één codebase",[174,585,586,587,591,592,596,597,452],{},"Voor een cashback- en loyaliteitsplatform onder NDA produceert één Flutter-codebase ",[186,588,590],{"href":589},"\u002Fportfolio\u002Fcashback-loyalty-platform","een vloot van meer dan vijftien volledig gebrande apps",", elk met een eigen naam, thema en winkelvermelding, plus een winkeliersapp en een beheerpaneel dat een nieuw merk lanceert zonder engineeringwerk. Die bouw werd een eigen dienstlijn — ",[186,593,595],{"href":594},"\u002Fservices\u002Fwhitelabel-app-development","white-label-appontwikkeling"," — en een eigen ",[186,598,600],{"href":599},"\u002Fblog\u002Fwhite-label-app-platform-flutter","uitgeschreven architectuur",[174,602,603,604,608,609,613,614,618],{},"Kleiner en sneller, dezelfde discipline: ",[186,605,607],{"href":606},"\u002Fportfolio\u002Farcana","Arcana",", een AI-chatcompanion die markdown op 60 fps streamt door duizenden berichten, kostte drie weken. ",[186,610,612],{"href":611},"\u002Fportfolio\u002Fonetwodo","OneTwoDo",", een tweezijdige dienstenmarktplaats, kostte er zeven. ",[186,615,617],{"href":616},"\u002Fportfolio\u002Fjepta","Jepta",", een buurtapp met realtime chats en kanalen, leverde zijn volledige functieset op binnen zes maanden.",[620,621,626,629],"testimonial",{"author":622,"avatar":623,"linkedin":624,"role":625},"Julian Garbotz","\u002Fclients\u002Fjulian-garbotz.png","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fjulian-garbotz","Algemeen directeur, Formtastic GmbH",[174,627,628],{},"Jarenlang verscheen Formtastic als twee losse native apps — een voor iOS, een voor Android. Elke functie moest twee keer gebouwd worden, releases liepen tussen de platforms uit de pas, en twee codebases onderhouden vrat stilletjes aan onze roadmap.",[174,630,631],{},"Nerdy Production heeft alles samengebracht in één Flutter-codebase, zonder het product te verstoren waar onze klanten op vertrouwen. Nu leveren beide apps dezelfde functies op hetzelfde moment, is de ervaring op iPhone en Android identiek, en is onze doorlooptijd naar productie fors gedaald. We onderhouden één codebase in plaats van twee, en het team besteedt zijn energie eindelijk aan nieuwe functies in plaats van aan twee apps gelijk houden.",[226,633,635],{"id":634},"hoe-flutter-werkt-het-geheim-achter-de-prestaties","Hoe Flutter werkt: het geheim achter de prestaties",[174,637,638],{},"De reden dat Flutter-apps niet het prestatieverlies van de \"hybride app\" meedragen is architectonisch, en twee minuten waard — ook als je nooit Dart leest.",[192,640,642],{"id":641},"de-renderarchitectuur-van-flutter","De renderarchitectuur van Flutter",[644,645,646],"ol",{},[200,647,648],{},"Rechtstreeks compileren naar native code",[174,650,651],{},"Anders dan hybride frameworks die door JavaScript-bruggen lopen, compileert Flutter ahead-of-time naar native ARM-machinecode. Er zit geen interpreter tussen je app en de processor, dus starttijden en uitvoeringssnelheid liggen in dezelfde orde als apps geschreven in Swift of Kotlin.",[644,653,654],{"start":455},[200,655,656],{},"Een eigen grafische engine",[174,658,659,660,663],{},"Flutter tekent elke pixel zelf — via ",[328,661],{"slug":662},"skia",", de 2D-engine achter Chrome en Android, en zijn opvolger Impeller op moderne toestellen. In plaats van platform-UI-componenten samen te stellen, rendert het de interface rechtstreeks op het schermcanvas. Daarom ziet een Flutter-app er op elk platform hetzelfde uit en gedraagt hij zich hetzelfde, en daarom is volledige controle over elke animatie de standaard in plaats van een gevecht.",[644,665,666],{"start":458},[200,667,668],{},"Declaratief UI-framework",[174,670,671],{},"De widgetboom van Flutter bouwt alleen de delen van de UI opnieuw op die veranderen, via een efficiënt vergelijkingsalgoritme vergelijkbaar met dat van React. Complexe schermen met honderden geanimeerde elementen houden 60 fps vast — 120 fps op schermen die dat ondersteunen — mits het opnieuw opbouwen zorgvuldig wordt afgebakend, en precies dat soort zorg onderscheidt Flutter-productiewerk van Flutter-demowerk.",[644,673,675],{"start":674},4,[200,676,677],{},"Geoptimaliseerde laagarchitectuur",[174,679,680],{},"De engine (C\u002FC++) verzorgt renderen, tekstopmaak en I\u002FO; het framework (Dart) biedt de API daarbovenop. De scheiding houdt prestatiekritieke bewerkingen op native snelheid, terwijl de code waarin je team werkt productief en testbaar blijft.",[682,683],"features",{":items":684,":title":685},"[{\"label\": \"Animaties op 60\u002F120 fps\", \"description\": \"Boterzachte animaties op alle platforms zonder haperingen\"}, {\"label\": \"Snelle starttijden\", \"description\": \"Apps starten in milliseconden, net als native applicaties\"}, {\"label\": \"Kleine binary\", \"description\": \"Geoptimaliseerde codesplitsing en tree shaking beperken de appgrootte\"}, {\"label\": \"Laag geheugengebruik\", \"description\": \"Efficiënt geheugenbeheer houdt apps responsief\"}]","Waarom prestaties geen zorg zijn",[226,687,689],{"id":688},"flutter-tegenover-react-native-en-native-ontwikkeling","Flutter tegenover React Native en native ontwikkeling",[174,691,692],{},"Zie hoe Flutter zich verhoudt tot andere aanpakken voor mobiele ontwikkeling",[694,695],"features-table",{":heading":696,":rows":697,":top-left-label":698},"[{\"label\": \"Flutter\", \"hightlightLabel\": \"Aanbevolen\"}, {\"label\": \"React Native\"}, {\"label\": \"Native (Swift\u002FKotlin)\"}]","[{\"label\": \"Prestaties\",\"cells\": [{\"text\": \"Native snelheid\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Bijna native\", \"color\": \"warning\", \"icon\": \"lucide:minus\" },{ \"text\": \"Native\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" }]}, {\"label\": \"Ontwikkelsnelheid\",\"cells\": [{\"text\": \"Zeer snel\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Snel\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Traag (2x codebase)\", \"color\": \"error\", \"icon\": \"lucide:x\" }]}, {\"label\": \"Consistente UI\",\"cells\": [{\"text\": \"Pixelperfect\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Afhankelijk van platform\", \"color\": \"warning\", \"icon\": \"lucide:minus\" },{ \"text\": \"Vraagt 2x ontwerp\", \"color\": \"warning\", \"icon\": \"lucide:minus\" }]}, {\"label\": \"Hergebruik van code\",\"cells\": [{\"text\": \"90-95%\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"70-85%\", \"color\": \"warning\", \"icon\": \"lucide:minus\" },{ \"text\": \"0% (aparte apps)\", \"color\": \"error\", \"icon\": \"lucide:x\" }]}, {\"label\": \"Hot reload\",\"cells\": [{\"text\": \"Binnen een seconde\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Beschikbaar\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Beperkt\", \"color\": \"warning\", \"icon\": \"lucide:minus\" }]}, {\"label\": \"Ondersteunde platforms\",\"cells\": [{\"text\": \"6 platforms\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"iOS, Android, web\", \"color\": \"warning\"},{ \"text\": \"Slechts één platform\", \"color\": \"warning\"}]}, {\"label\": \"Leercurve\",\"cells\": [{\"text\": \"Makkelijk (Dart)\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Makkelijk (JavaScript)\", \"color\": \"success\"},{ \"text\": \"Steil (2 talen)\", \"color\": \"warning\"}]}, {\"label\": \"Ontwikkelkosten\",\"cells\": [{\"text\": \"30-40% lager\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"20-30% lager\", \"color\": \"warning\"},{ \"text\": \"Hoogst (2x team)\", \"color\": \"error\"}]}, {\"label\": \"Onderhoud\",\"cells\": [{\"text\": \"Eén codebase\", \"color\": \"success\", \"icon\": \"lucide:check-circle\" },{ \"text\": \"Platformspecifieke fixes\", \"color\": \"warning\"},{ \"text\": \"2x onderhoud\", \"color\": \"error\"}]}, {\"label\": \"Gesteund door\",\"cells\": [{\"text\": \"Google\", \"color\": \"success\"},{ \"text\": \"Meta\"},{ \"text\": \"Apple \u002F Google\"}]}]","Kenmerk",[274,700,701],{},[174,702,703,706,707,711,712,452],{},[203,704,705],{},"💡 Kort gezegd:"," Flutter levert native prestaties tegen aanzienlijk lagere ontwikkel- en onderhoudskosten. React Native is een geloofwaardige optie — zeker voor een team dat al diep in React zit — maar het rendermodel, de consistente UI en het platformbereik van Flutter maken het voor de meeste producten de sterkere standaardkeuze. Voor alle afwegingen, lees ",[186,708,710],{"href":709},"\u002Fblog\u002Fflutter-vs-react-native-2026","Flutter tegenover React Native in 2026"," en ",[186,713,715],{"href":714},"\u002Fblog\u002Fflutter-vs-native-2026","Flutter tegenover native in 2026",[226,717,719],{"id":718},"wanneer-flutter-de-verkeerde-keuze-is","Wanneer Flutter de verkeerde keuze is",[174,721,722],{},"Een aanbeveling is alleen iets waard als hij ook de andere kant op kan uitvallen, dus hier is waar we onze eigen dienst afraden.",[197,724,725,731,741],{},[200,726,727,730],{},[203,728,729],{},"Het product ís een platformmogelijkheid."," Een diepe Apple Watch-ervaring, een product dat om widgets draait, een app gebouwd rond een API die maar op één platform bestaat — de cross-platformbesparing is dan niet het punt, en native is het eerlijke antwoord.",[200,732,733,736,737,740],{},[203,734,735],{},"Je team is al een native team."," Heb je sterke Swift- en Kotlin-engineers, een gevestigde codebase en geen kostendruk door dubbele oplevering, dan lost een frameworkwissel een probleem op dat je niet hebt. Dezelfde eerlijkheid geldt omgekeerd voor ",[186,738,739],{"href":188},"migraties",": die pagina opent met wie er niet zou moeten migreren.",[200,742,743,746,747,750,751,755],{},[203,744,745],{},"Je wilt gedeelde logica maar native UI."," ",[186,748,74],{"href":749},"\u002Ftechnologies\u002Fkmp"," deelt bedrijfslogica en houdt de native interface van elk platform. Het is een andere weddenschap — meer platformtrouw, minder UI-hergebruik — en voor sommige teams de juiste. We vergelijken de twee eerlijk in ",[186,752,754],{"href":753},"\u002Fblog\u002Fflutter-vs-kotlin-multiplatform-2026","Flutter tegenover Kotlin Multiplatform in 2026",", en wij zeggen het in het eerste gesprek in plaats van het laatste.",[174,757,758],{},"Al het andere — consumentenproducten, marktplaatsen, fintech, zorg, interne tools, producten die met één budget in beide winkels moeten staan — is het terrein waar Flutter, in onze ervaring over zeven productie-apps, op de inhoud wint.",[226,760,762],{"id":761},"wat-we-bouwen","Wat we bouwen",[174,764,765],{},"De pijler is één dienst; het werk komt in vormen. Elk van deze pagina's publiceert zijn eigen scope, getallen en eerlijke faalwijzen:",[197,767,768,777,786,795,804,813,822,830,838,847,855,864],{},[200,769,770,776],{},[203,771,772],{},[186,773,775],{"href":774},"\u002Fservices\u002Fflutter-app-development\u002Fmvp","MVP-ontwikkeling"," — de kleinste app die je zakelijke vraag kan beantwoorden, in twee tot drie maanden in beide winkels, tegen een gepubliceerde prijs.",[200,778,779,785],{},[203,780,781],{},[186,782,784],{"href":783},"\u002Fservices\u002Fflutter-app-development\u002Ffintech","Fintech-apps"," — producten voor beleggen, bankieren en betalen: realtime marktdata, exacte geldberekening, strenge compliance-eisen. ExtraETF is het bewijs.",[200,787,788,794],{},[203,789,790],{},[186,791,793],{"href":792},"\u002Fservices\u002Fflutter-app-development\u002Fhealthcare","Zorgapps"," — producten voor telemedicine en mentale gezondheid: videoconsulten die echte netwerken overleven, patiëntgegevens behandeld met HIPAA- en AVG-discipline.",[200,796,797,803],{},[203,798,799],{},[186,800,802],{"href":801},"\u002Fservices\u002Fflutter-app-development\u002Fe-commerce","E-commerce-apps"," — catalogus, afrekenen en betalingen, van één winkel tot een vloot merkapps; het niveau in de prijstabel hieronder heeft eindelijk zijn eigen pagina.",[200,805,806,812],{},[203,807,808],{},[186,809,811],{"href":810},"\u002Fservices\u002Fflutter-app-development\u002Fmarketplace","Marketplace-apps"," — tweezijdige producten, beide rollen uit één codebase. OneTwoDo is het bewijs.",[200,814,815,821],{},[203,816,817],{},[186,818,820],{"href":819},"\u002Fservices\u002Fflutter-app-development\u002Fsocial","Social- en community-apps"," — chats, kanalen en livefeeds op één realtimelaag. Jepta is het bewijs.",[200,823,824,829],{},[203,825,826],{},[186,827,828],{"href":188},"Migratie van React Native en native"," — scherm voor scherm, add-to-app, zonder downtime, en een pagina die opent met wanneer je het niet moet doen.",[200,831,832,837],{},[203,833,834],{},[186,835,836],{"href":509},"Add-to-app-integratie"," — Flutter ingebed in de native app die je al hebt: nieuwe features op beide platformen zonder je aan een migratie te binden.",[200,839,840,846],{},[203,841,842],{},[186,843,845],{"href":844},"\u002Fservices\u002Fflutter-app-development\u002Fapp-rescue","App-rescue en performance"," — audits, framerate-werk en stabilisatie voor een Flutter-app die in productie faalt, afgebakend op basis van de symptomen, niet op basis van een functielijst.",[200,848,849,854],{},[203,850,851],{},[186,852,853],{"href":594},"White-label-platforms"," — één codebase, een vloot merkapps, en de valkuilen van Apple-richtlijn 4.2.6 er vanaf het begin uit ontworpen.",[200,856,857,863],{},[203,858,859],{},[186,860,862],{"href":861},"\u002Fservices\u002Fchatbot-to-app","Van chatbot naar app"," — een Telegram- of WhatsApp-bot met een echt gebruikersbestand, omgezet naar een volwaardige app in de winkels zonder die gebruikers te verliezen.",[200,865,866,871],{},[203,867,868],{},[186,869,870],{"href":393},"Teamuitbreiding"," — senior Flutter-engineers ingebed in jouw team, in jouw repo en jouw sprints, wanneer je capaciteit nodig hebt in plaats van oplevering.",[174,873,874,875,452],{},"Bestaat de app al en gaat de vraag over zijn toestand in plaats van zijn roadmap — een overdracht van een bureau, een AI-gebouwd prototype, een codebase waar je twijfels over hebt — begin dan met een ",[186,876,878],{"href":877},"\u002Fservices\u002Fai-code-audit","audit van AI-code",[226,880,373],{"id":372},[174,882,883,886,887,889,890],{},[203,884,885],{},"Oplevering met vaste scope."," Wij nemen de uitkomst van begin tot eind voor onze rekening: verkenning, ontwerp, architectuur, bouw, indienen bij de winkels. Eén team aanspreekbaar op de lanceerdatum. Hoe dat er week na week uitziet staat in ons ",[186,888,383],{"href":382},", en de fase-voor-fase-planning in ",[186,891,893],{"href":892},"\u002Fblog\u002Fhow-long-to-build-a-flutter-app","Hoe lang duurt het om een Flutter-app te bouwen?",[174,895,896,899,900,904],{},[203,897,898],{},"Teamuitbreiding."," Onze engineers voegen zich bij de jouwe, onder jouw aansturing. Dit werkt het best wanneer je al technische leiding hebt en Flutter-diepgang nodig hebt — onze ",[186,901,903],{"href":902},"\u002Fblog\u002Fhire-flutter-developers-2026","gids over Flutter-developers inhuren"," is eerlijk over wanneer dit een bureautraject verslaat en wanneer niet.",[174,906,907,908,910],{},"Welke route ook past, zodra we de eisen scherp hebben sturen we binnen twee werkdagen een offerte met duidelijke scope — en de engineering waarop we ongeacht het budget weigeren te bezuinigen is overal dezelfde: ",[328,909],{"slug":342}," vanaf week één, tests waar fouten geld kosten, en modulegrenzen die v2 laten groeien zonder herbouw.",[226,912,914],{"id":913},"tarieven-voor-flutter-appontwikkeling","Tarieven voor Flutter-appontwikkeling",[174,916,917],{},"Heldere tarieven voor je Flutter-appproject",[919,920],"pricing-table",{":items":921},"[{\"title\": \"MVP\", \"subtitle\": \"Toets je idee snel\", \"price\": \"flutter-app-development\u002Fmvp\", \"terms\": \"2-3 maanden\", \"lines\": [\"Apps voor iOS en Android\", \"5-8 kernfuncties\", \"Eenvoudig UI\u002FUX-ontwerp\", \"Koppeling met REST-API\", \"Gebruikersauthenticatie\", \"Basisanalyse\", \"Publicatie in de appwinkels\"], \"callToAction\": {\"to\": \"\u002Fcontact?intent=flutter-app-development\", \"label\": \"Aan de slag\"}},{\"title\": \"Zakelijke app\", \"subtitle\": \"Volwaardige oplossing\", \"price\": \"flutter-app-development\u002Fbusiness\", \"terms\": \"3-5 maanden\", \"lines\": [\"iOS, Android en web\", \"15-20 functies\", \"Eigen UI\u002FUX-ontwerp\", \"Geavanceerde API-koppelingen\", \"Pushmeldingen\", \"Offline werken\", \"Analyse en monitoring\", \"Beheerdashboard\"], \"callToAction\": {\"to\": \"\u002Fcontact?intent=flutter-app-development\", \"label\": \"Aan de slag\"}},{\"highlight\": \"Populair\",\"title\": \"E-commerce \u002F retail\", \"subtitle\": \"Verkoop online met stijl\", \"price\": \"flutter-app-development\u002Fecommerce\", \"terms\": \"4-6 maanden\", \"lines\": [\"Alle platforms plus desktop\", \"Productcatalogus en zoeken\", \"Winkelwagen en afrekenen\", \"Koppeling met betaaldienst\", \"Bestellingen volgen\", \"Klantbeoordelingen\", \"Voorraadbeheer\", \"Beheer- en leveranciersportalen\"], \"callToAction\": {\"to\": \"\u002Fcontact?intent=flutter-app-development\", \"label\": \"Aan de slag\"}},{\"title\": \"Enterprise \u002F AI\", \"subtitle\": \"Complex en schaalbaar\", \"price\": \"flutter-app-development\u002Fenterprise\", \"terms\": \"6+ maanden\", \"lines\": [\"Alle platforms\", \"AI\u002FML-integratie\", \"Complexe processen\", \"Beveiliging op enterpriseniveau\", \"Eigen backendinfrastructuur\", \"Geavanceerde analyse\", \"Multi-tenant-architectuur\", \"Persoonlijke ondersteuning\"], \"callToAction\": {\"to\": \"\u002Fcontact?intent=flutter-app-development\", \"label\": \"Aan de slag\"}}]",[274,923,926],{":leading-icon":924,":title":925},"lucide:dollar-sign","Maatwerktarieven mogelijk",[174,927,928,929,932,933,452],{},"Elk project is anders. Deze prijzen zijn indicatieve bandbreedtes op basis van gangbare projectwensen. We geven een gedetailleerde offerte zodra we je specifieke behoeften, planning en complexiteit begrijpen. Neem contact op voor een gratis kennismaking en een nauwkeurige prijsindicatie. Voor wat de kosten van een app werkelijk bepaalt, zie ",[186,930,931],{"href":540},"Wat een Flutter-app kost in 2026"," en onze ",[186,934,936],{"href":935},"\u002Fblog\u002Fmobile-cost-reduction-case-studies","casestudy's over kostenverlaging bij mobiel",[226,938,432],{"id":431},[174,940,941],{},"Alles wat je moet weten over onze diensten voor Flutter-appontwikkeling",[437,943],{":items":944},"[{\"title\":\"Wat is Flutter en waarom zou ik het voor mijn app gebruiken?\",\"text\":\"Flutter is een opensource UI-toolkit van Google voor het bouwen van native gecompileerde applicaties voor mobiel, web en desktop vanuit één codebase. Het zakelijke argument is structureel: één codebase betekent één team, één releasetrein en elke functie één keer gebouwd — daarom kost een Flutter-bouw doorgaans 30 tot 40 procent minder dan twee native apps, en groeit de kloof gedurende de levensduur van het product naarmate het onderhoud zich opstapelt. Het technische argument is dat Flutter naar native code compileert en zijn eigen UI tekent, waardoor het zowel het prestatieverlies van hybride frameworks vermijdt als het uiteengroeien van twee implementaties.\"},{\"title\":\"Wat kost Flutter-appontwikkeling?\",\"text\":\"Onze gepubliceerde niveaus lopen van $15.000 tot $30.000 voor een MVP, $30.000 tot $60.000 voor een volwaardige zakelijke app, $50.000 tot $90.000 voor een e-commerceproduct, en vanaf $90.000 voor enterprisewerk — de exacte bandbreedtes staan in het tarievengedeelte van deze pagina in plaats van achter een verkoopgesprek. Wat het bedrag beweegt is eerst scope en daarna koppelingen. De volledige uiteenzetting van wat het cijfer bepaalt, inclusief de kosten die teams vergeten te begroten, staat in onze gids over de kosten van Flutter-appontwikkeling in 2026.\"},{\"title\":\"Hoe lang duurt het om een Flutter-app te bouwen?\",\"text\":\"Een MVP kost twee tot drie maanden van kickoff tot een live winkelvermelding. Een volwaardige zakelijke app loopt drie tot vijf maanden, en een e-commerce- of enterprisebouw vier tot zes of meer. De kalender gaat zelden op aan de code: betaalstromen die halverwege het project opduiken, ontwerprondes, toegang tot externe API's en de indieningscyclus van de winkels zijn waar planningen werkelijk bewegen. Onze fase-voor-fase-uiteenzetting staat in Hoe lang duurt het om een Flutter-app te bouwen.\"},{\"title\":\"Kunnen Flutter-apps net zo goed presteren als native apps?\",\"text\":\"Ja. Flutter compileert ahead-of-time naar native ARM-code en rendert via zijn eigen grafische engine, dus animaties houden 60 frames per seconde vast — 120 op ondersteunde schermen — zonder de brugoverhead die hybride frameworks meedragen. Productie-apps als Google Ads, Alibaba en de voertuigapp van BMW draaien op Flutter, en ons eigen ExtraETF houdt zijn framerate vast onder live streamende marktdata. De eerlijke kanttekening is dat prestaties een eigenschap van de engineering zijn, niet van het framework: onafgebakende widget-rebuilds laten in Flutter net zo goed frames vallen als gelekte observers dat in Swift doen.\"},{\"title\":\"Hoe verschilt Flutter van React Native?\",\"text\":\"Flutter compileert naar native code en tekent zijn eigen UI via zijn renderengine; React Native slaat een brug naar de native componenten van elk platform. In de praktijk geeft dat Flutter meer prestatieruimte, pixelidentieke UI op alle platforms, 90 tot 95 procent hergebruik van code tegenover 70 tot 85 bij React Native, en zes ondersteunde platforms inclusief desktop. React Native blijft een geloofwaardige keuze voor teams die al diep in React zitten. Onze volledige vergelijking, inclusief waar React Native wint, staat in Flutter tegenover React Native in 2026.\"},{\"title\":\"Is Flutter een goede keuze voor web- en desktopapps?\",\"text\":\"Met kanttekeningen. Flutter web is het sterkst voor app-achtige ervaringen — dashboards, portalen, tools achter een login — waar het canvasrenderen een voordeel is in plaats van een kostenpost; voor contentsites die leven van SEO en een directe eerste weergave is een conventionele webstack het betere gereedschap, en dat zeggen we ook al verkopen we allebei. Desktopondersteuning voor Windows, macOS en Linux is productieklaar en blinkt uit voor interne tools en companion-apps die een mobiele codebase delen.\"},{\"title\":\"Kunnen jullie een bestaande Flutter-app overnemen of redden?\",\"text\":\"Ja — een deel van ons best gedocumenteerde werk begon zo, waaronder een live telezorgproduct dat we stabiliseerden terwijl het in productie bleef. Een overname begint met een audit van de codebase: architectuur, statebeheer, testdekking en de specifieke symptomen die aanleiding gaven tot het gesprek. Je krijgt een geschreven bevindingenrapport en een geordend plan voordat er ook maar over herbouw wordt gesproken, want soms is het antwoord twee weken fixes in plaats van een herschrijving — en als dat zo is, zeggen we het.\"},{\"title\":\"Bouwen jullie ook de backend naast de app?\",\"text\":\"Ja. ExtraETF draait op een Go-backend die we bouwden voor het uitwaaieren van realtime marktdata; het platform van Formtastic omvat backend en web naast de apps; en voor MVP's kiezen we bewust voor beheerde backends zoals Firebase wanneer er zelf een schrijven jouw budget aan loodgieterswerk zou opmaken. De keuze tussen eigen en beheerd is een engineeringbeslissing die we openlijk tijdens de scoping maken, omdat hij zowel de prijs als de planning beweegt.\"},{\"title\":\"Is Flutter over vijf jaar nog een veilige keuze?\",\"text\":\"Zo veilig als keuzes in deze industrie worden. Flutter wordt open ontwikkeld door Google, brengt regelmatig stabiele releases uit, drijft Googles eigen omzetkritieke apps zoals Google Ads aan, en heeft een van de grootste cross-platformcommunity's en pakketecosystemen. Geen enkele frameworkkeuze is zonder risico — daarom is de duurzamere verzekering codekwaliteit: een goed gestructureerde Flutter-app met heldere modulegrenzen houdt zijn bedrijfslogica overdraagbaar, wat de industrie hierna ook doet.\"},{\"title\":\"Voor welke sectoren bouwen jullie Flutter-apps?\",\"text\":\"Ons diepste sectorwerk zit in fintech — producten voor beleggen, bankieren en betalen — en de zorg, inclusief telemedicine, elk met een eigen dienstpagina over de compliance- en engineeringdetails. Daarbuiten leverden we marktplaatsen, sociale en communityproducten, loyaliteitsplatforms en AI-gedreven consumentenapps op. Wat over al die sectoren heen meereist is de productiediscipline: omgaan met realtime data, offline gedrag, toegankelijkheid en de eisen van de winkelreview.\"},{\"title\":\"Hoe starten we een project met jullie?\",\"text\":\"Vertel ons via het contactformulier wat je bouwt, inclusief wat er vandaag al is — een specificatie, een prototype, een app die al in de winkels staat. We komen terug met vragen, niet met een pitchdeck, en zodra we de eisen begrijpen krijg je binnen twee werkdagen een afgebakende offerte: wat erin zit, wat er expliciet buiten valt, wat het kost en hoe lang het duurt. Is Flutter het verkeerde gereedschap voor jouw product, dan is dat gesprek het moment waarop we het je vertellen.\"}]",[174,946,947,948,951,952,711,955,959,960,711,962,964],{},"Begin bij de getallen: ",[186,949,950],{"href":540},"wat een Flutter-app kost in 2026",", ",[186,953,954],{"href":892},"hoe lang het duurt",[186,956,958],{"href":957},"\u002Fblog\u002Fflutter-app-maintenance-cost","wat onderhoud na de lancering kost",". Of lees het werk: de casestudy's van ",[186,961,562],{"href":561},[186,963,578],{"href":577}," komen het dichtst bij meekijken terwijl we midden in een project zitten.",{"title":454,"searchDepth":455,"depth":455,"links":966},[967,972,975,976,977,978,979,980],{"id":548,"depth":455,"text":549,"children":968},[969,970,971],{"id":555,"depth":458,"text":556},{"id":571,"depth":458,"text":572},{"id":582,"depth":458,"text":583},{"id":634,"depth":455,"text":635,"children":973},[974],{"id":641,"depth":458,"text":642},{"id":688,"depth":455,"text":689},{"id":718,"depth":455,"text":719},{"id":761,"depth":455,"text":762},{"id":372,"depth":455,"text":373},{"id":913,"depth":455,"text":914},{"id":431,"depth":455,"text":432},"Eén codebase, beide winkels, en bouwkosten 30–40% onder twee native apps — van een team dat Flutter zeven keer naar productie bracht en zijn prijzen publiceert",{"heading":983,"text":984,"buttons":985},"Klaar om je Flutter-app te bouwen?","Vertel ons wat je bouwt en voor wie het is. Wij vertellen je wat ervoor nodig is, wat het kost en of Flutter de juiste keuze is — voordat je je ergens aan verbindt.",[986,989],{"to":987,"label":988,"leadingIcon":487,"color":488,"variant":489},"\u002Fcontact","Start je project",{"to":497,"label":498,"color":492,"variant":493},[991,993],{"to":987,"label":992,"leadingIcon":487,"color":492,"variant":493},"Gratis kennismaking",{"to":994,"label":995,"color":488,"variant":489},"#tarieven-voor-flutter-appontwikkeling","Bekijk de tarieven",{"url":997,"alt":409,"text":998},"\u002Fservices\u002Fflutter.webp","Eén keer bouwen, overal uitleveren",{},"Flutter-appontwikkeling: snelle, verzorgde apps voor iOS, Android en web vanuit één codebase — 30-40% goedkoper dan native. Gratis kennismaking.","Diensten voor Flutter-appontwikkeling","Eén codebase, iOS, Android en web, en 30-40% van de kosten van native eraf. Flutter-appontwikkeling van een bureau dat alleen dit doet.",null,{"title":409,"description":981},"services\u002Fflutter-app-development","2026-09-04","c8lVNW_7UpWchelvs6PNmU02rvz4mdWHjLwCN-gLVtI",[],[1010,1025,1046,1059,1073,1085,1099,1116,1129,1144,1158,1171,1186,1200,1216,1226,1239,1250,1260,1273,1285,1295,1310,1319,1332,1346,1352,1364,1377,1388,1403,1416,1429,1441,1454,1467,1480,1491,1502,1514,1525,1537,1547,1559,1572,1585,1597,1610,1621,1633,1647,1656,1668],{"slug":1011,"term":1012,"definition":1013,"category":1014,"aliases":1015,"links":1017,"related":1021,"readMore":-1,"target":1023,"hasArticle":1024},"aosp","AOSP","Het Android Open Source Project — Android zonder de Google-laag erbovenop, door iedereen vrij te forken. Kassaterminals, kiosken en autosystemen draaien op forks ervan, en werken op dat niveau legt delen van het OS bloot die een app-ontwikkelaar nooit ziet.","platform",[1016],"Android Open Source Project",[1018],{"kind":1019,"url":1020},"website","https:\u002F\u002Fsource.android.com\u002F",[1022],"host-card-emulation","\u002Fglossary#aosp",false,{"slug":1026,"term":1027,"definition":1028,"category":1029,"aliases":1030,"links":1035,"related":1041,"readMore":-1,"target":1045,"hasArticle":1024},"gdpr","AVG","De EU-verordening over persoonsgegevens van mensen in de EU: een rechtsgrond om ze te verzamelen, echte toestemming voor tracking, en het recht om ze in te zien en te laten wissen. Ze volgt je gebruikers, niet je servers, en geldt dus ongeacht waar het bedrijf staat ingeschreven.","practice",[1031,1032,1033,1034],"GDPR","General Data Protection Regulation","Algemene verordening gegevensbescherming","gegevensbescherming",[1036,1038],{"kind":1019,"url":1037},"https:\u002F\u002Fgdpr.eu\u002F",{"kind":1039,"url":1040},"wikipedia","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGeneral_Data_Protection_Regulation",[1042,1043,1044],"pci-dss","soc-2","hipaa","\u002Fglossary#gdpr",{"slug":1047,"term":1048,"definition":1049,"category":1014,"aliases":1050,"links":1051,"related":1055,"readMore":-1,"target":1058,"hasArticle":1024},"app-clips","App Clips","Een Apple-functie die een klein stuk van een iOS-app draait — onder de 15 MB — zonder het geheel te installeren. Te starten via een QR-code, een NFC-tag of een link, voor als de eerste handeling van een gebruiker niet eerst een gang naar de App Store zou moeten vergen.",[],[1052],{"kind":1053,"url":1054},"documentation","https:\u002F\u002Fdeveloper.apple.com\u002Fapp-clips\u002F",[1056,1057],"deep-linking","install-referrer","\u002Fglossary#app-clips",{"slug":1060,"term":1061,"definition":1062,"category":1014,"aliases":1063,"links":1064,"related":1069,"readMore":-1,"target":1072,"hasArticle":1024},"bigquery","BigQuery","Het analytische datawarehouse van Google Cloud. Je laat SQL los op miljarden rijen en het scant ze in seconden, op opslag die losstaat van de machines die de query uitvoeren — en juist dat houdt rapportage en verkenning weg bij de database die het live verkeer bedient.",[],[1065,1067],{"kind":1019,"url":1066},"https:\u002F\u002Fcloud.google.com\u002Fbigquery",{"kind":1039,"url":1068},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBigQuery",[1070,1071],"object-storage","elasticsearch","\u002Fglossary#bigquery",{"slug":342,"term":343,"definition":1074,"category":1029,"aliases":1075,"links":1080,"related":1083,"readMore":-1,"target":1084,"hasArticle":1024},"Automatisering die elke wijziging bouwt, test en uitlevert zonder dat iemand handmatig commando's uitvoert. Op mobiel is het wat van een release een druk op de knop maakt in plaats van een middag wachten tot iemand anders tijd heeft.",[1076,1077,1078,1079],"CI","continuous integration","continuous delivery","continue integratie",[1081],{"kind":1039,"url":1082},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCI\u002FCD",[],"\u002Fglossary#ci-cd",{"slug":1086,"term":1087,"definition":1088,"category":1089,"aliases":1090,"links":1092,"related":1095,"readMore":-1,"target":1098,"hasArticle":1024},"crud","CRUD","Create, read, update, delete — de vier bewerkingen achter zo goed als elk formulier en elk beheerscherm. Verzamelnaam voor de helft van een app die routinematig gegevensbeheer is, tegenover de delen die echte domeinlogica dragen.","architecture",[1091],"Create, Read, Update, Delete",[1093],{"kind":1039,"url":1094},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCreate,_read,_update_and_delete",[1096,1097],"rest","graphql","\u002Fglossary#crud",{"slug":1100,"term":1101,"definition":1102,"category":1089,"aliases":1103,"links":1109,"related":1112,"readMore":-1,"target":1115,"hasArticle":1024},"container-registry","Containerregistry","Een gehoste opslagplaats voor container-images, aangesproken op naam en tag — Docker Hub, GitHub Container Registry, of die van je eigen cloudprovider. Een build daarheen pushen verandert 'werkt op mijn machine' in een image die iedereen ongewijzigd kan pullen en draaien.",[1104,1105,1106,1107,1108],"container registry","image registry","Docker registry","GHCR","ghcr.io",[1110],{"kind":1053,"url":1111},"https:\u002F\u002Fdocs.github.com\u002Fen\u002Fpackages\u002Fworking-with-a-github-packages-registry\u002Fworking-with-the-container-registry",[1113,1114],"dev-container","multi-arch-image","\u002Fglossary#container-registry",{"slug":1056,"term":1117,"definition":1118,"category":1014,"aliases":1119,"links":1124,"related":1127,"readMore":1128,"target":1128,"hasArticle":506},"Deep linking","Een link die een specifiek scherm in een geïnstalleerde app opent in plaats van het beginscherm of een webpagina. Deferred deep linking overleeft een installatie, zodat een tik die via de appwinkel loopt alsnog op het juiste scherm landt.",[1120,1121,1122,1123],"deferred deep linking","universal links","Android App Links","diepe links",[1125],{"kind":1039,"url":1126},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMobile_deep_linking",[1047,1057],"\u002Fglossary\u002Fdeep-linking",{"slug":1113,"term":1130,"definition":1131,"category":1029,"aliases":1132,"links":1137,"related":1142,"readMore":-1,"target":1143,"hasArticle":1024},"Dev Container","Een ontwikkelomgeving die één keer beschreven staat in devcontainer.json — het OS, de tools en de runtimeversies die een project nodig heeft — en die bij iedere bijdrager identiek in een container opent, in plaats van een installatiehandleiding die iedereen anders leest.",[1133,1134,1135,1136],"devcontainer.json","Dev Containers","VS Code Dev Containers","ontwikkelcontainer",[1138,1140],{"kind":1019,"url":1139},"https:\u002F\u002Fcontainers.dev\u002F",{"kind":1053,"url":1141},"https:\u002F\u002Fcode.visualstudio.com\u002Fdocs\u002Fdevcontainers\u002Fcontainers",[1100],"\u002Fglossary#dev-container",{"slug":1145,"term":1146,"definition":1147,"category":1089,"aliases":1148,"links":1153,"related":1156,"readMore":-1,"target":1157,"hasArticle":1024},"floating-point","Drijvende komma","Het binaire IEEE 754-formaat achter double en float. Het kan 0,1 niet exact weergeven, dus 0.1 + 0.2 is 0.30000000000000004 — onzichtbaar in graphics en fataal bij geld, dat thuishoort in gehele kleinste eenheden (centen) of een decimaal type.",[1149,1150,1151,1152],"IEEE 754","double","floating point","zwevende komma",[1154],{"kind":1039,"url":1155},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIEEE_754",[],"\u002Fglossary#floating-point",{"slug":1071,"term":1159,"definition":1160,"category":1014,"aliases":1161,"links":1164,"related":1169,"readMore":-1,"target":1170,"hasArticle":1024},"Elasticsearch","Een zoek- en analysemachine die records indexeert zodat je ze interactief kunt filteren en doorzoeken in plaats van ze te scannen. Waar je naar grijpt als de vraag 'laat me deze specifieke sessies zien, op zes manieren ingeperkt' is en niet 'tel deze kolom op'.",[1162,1163],"Elastic","ELK",[1165,1167],{"kind":1019,"url":1166},"https:\u002F\u002Fwww.elastic.co\u002Felasticsearch",{"kind":1039,"url":1168},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FElasticsearch",[1060],"\u002Fglossary#elasticsearch",{"slug":1172,"term":1173,"definition":1174,"category":1089,"aliases":1175,"links":1179,"related":1182,"readMore":-1,"target":1185,"hasArticle":1024},"end-to-end-encryption","End-to-end-versleuteling","Versleuteling die op het verzendende apparaat wordt aangebracht en pas op het ontvangende weer wordt weggehaald, zodat de dienst die het bericht vervoert het niet kan lezen — niet na een vordering, niet na een datalek. Het beschermt de inhoud, nooit de metadata.",[1176,1177,1178],"E2EE","end-to-end encryption","end-to-end versleuteld",[1180],{"kind":1039,"url":1181},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FEnd-to-end_encryption",[1183,1184],"tls","jwt","\u002Fglossary#end-to-end-encryption",{"slug":1187,"term":1188,"definition":1189,"category":1089,"aliases":1190,"links":1194,"related":1195,"readMore":-1,"target":1199,"hasArticle":1024},"fan-out","Fan-out","Eén keer uit een bron lezen en elke update afleveren bij iedere client die erop geabonneerd is. De naïeve versie schrijft in een lus naar abonnees en loopt vast zodra één socket traag is; een echte buffert per client en laat vallen wie niet kan bijbenen.",[1191,1192,1193],"fanout","broadcast","uitzending",[],[1196,1197,1198],"websocket","pub-sub","server-sent-events","\u002Fglossary#fan-out",{"slug":1201,"term":1202,"definition":1203,"category":1029,"aliases":1204,"links":1208,"related":1211,"readMore":-1,"target":1215,"hasArticle":1024},"feature-flags","Feature flags","Schakelaars die functionaliteit aan- of uitzetten vanuit configuratie in plaats van vanuit een release. Ze laten één binary zich per merk, markt of gebruiker anders gedragen, en laten je een riskante functie uitzetten zonder een nieuwe build door de review te sturen.",[1205,1206,1207],"feature flag","feature toggle","functieschakelaar",[1209],{"kind":1039,"url":1210},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FFeature_toggle",[1212,1213,1214],"staged-rollout","white-label","multi-tenancy","\u002Fglossary#feature-flags",{"slug":1212,"term":1217,"definition":1218,"category":1029,"aliases":1219,"links":1223,"related":1224,"readMore":-1,"target":1225,"hasArticle":1024},"Gefaseerde uitrol","Een build eerst naar een klein percentage gebruikers uitbrengen en pas verbreden als het crashvrije percentage standhoudt. Een slechte build die je bij tien procent betrapt is een slechte middag; dezelfde build bij honderd procent is een slechte week.",[1220,1221,1222],"staged rollout","gefaseerde release","canary release",[],[1201,342],"\u002Fglossary#staged-rollout",{"slug":1227,"term":1228,"definition":1229,"category":1029,"aliases":1230,"links":1234,"related":1237,"readMore":-1,"target":1238,"hasArticle":1024},"golden-test","Golden test","Een test die een widget rendert en het resultaat pixel voor pixel vergelijkt met een opgeslagen referentiebeeld. In Flutter is het de goedkoopste manier om te zien of een herontwerp de empty state brak op 320pt, in donkere modus, bij 200% tekstgrootte.",[1231,1232,1233],"golden tests","screenshottest","snapshottest",[1235],{"kind":1053,"url":1236},"https:\u002F\u002Fapi.flutter.dev\u002Fflutter\u002Fflutter_test\u002FmatchesGoldenFile.html",[342],"\u002Fglossary#golden-test",{"slug":1097,"term":1240,"definition":1241,"category":1089,"aliases":1242,"links":1243,"related":1248,"readMore":-1,"target":1249,"hasArticle":1024},"GraphQL","Een querytaal voor API's waarin de client precies de velden benoemt die hij wil en één antwoord terugkrijgt dat daarop past. Het haalt de over-fetching weg waar REST-endpoints naar afglijden, en voegt er een eigen faalmodus aan toe: een onbegrensde query die het hele datamodel afloopt.",[],[1244,1246],{"kind":1019,"url":1245},"https:\u002F\u002Fgraphql.org\u002F",{"kind":1039,"url":1247},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGraphQL",[1096],"\u002Fglossary#graphql",{"slug":1044,"term":1251,"definition":1252,"category":1029,"aliases":1253,"links":1255,"related":1258,"readMore":-1,"target":1259,"hasArticle":1024},"HIPAA","De Amerikaanse wet over beschermde gezondheidsinformatie — hoe die opgeslagen, verstuurd, gelogd en gedeeld mag worden. Net als PCI-DSS is het een architectuurkeuze aan het begin, geen beleidsstuk dat je vlak voor de lancering toevoegt.",[1254],"Health Insurance Portability and Accountability Act",[1256],{"kind":1039,"url":1257},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHealth_Insurance_Portability_and_Accountability_Act",[1042,1026,1043],"\u002Fglossary#hipaa",{"slug":1261,"term":1262,"definition":1263,"category":1089,"aliases":1264,"links":1267,"related":1270,"readMore":-1,"target":1272,"hasArticle":1024},"headless-cms","Headless CMS","Een contentsysteem met een redactieomgeving en een API, maar zonder eigen front-end. Redacteuren publiceren op één plek, en de site of app rendert die content zelf — zodat de presentatielaag van jou is en niet van de CMS-leverancier.",[1265,1266],"headless contentmanagementsysteem","content-API",[1268],{"kind":1039,"url":1269},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHeadless_content_management_system",[1271,1096],"server-side-rendering","\u002Fglossary#headless-cms",{"slug":1022,"term":1274,"definition":1275,"category":1014,"aliases":1276,"links":1280,"related":1283,"readMore":-1,"target":1284,"hasArticle":1024},"Host Card Emulation","Een Android-telefoon zich in software laten gedragen als een contactloze kaart via NFC, zonder secure element in hardware. Zo betaalt een wallet-app bij een terminal: de telefoon spreekt hetzelfde contactloze EMV-protocol als de plastic kaart zou hebben gedaan.",[1277,1278,1279],"HCE","EMV Contactless","contactloos betalen",[1281],{"kind":1053,"url":1282},"https:\u002F\u002Fdeveloper.android.com\u002Fdevelop\u002Fconnectivity\u002Fnfc\u002Fhce",[1042,1011],"\u002Fglossary#host-card-emulation",{"slug":1286,"term":1287,"definition":1288,"category":1014,"aliases":1289,"links":1290,"related":1293,"readMore":-1,"target":1294,"hasArticle":1024},"impeller","Impeller","De renderengine die Flutter vandaag gebruikt, standaard op iOS sinds 2023 en op Android sinds 2024. Hij compileert zijn shaders vooraf in plaats van tijdens de eerste animatie, wat de shader-jank wegnam die Flutters zichtbaarste productieprobleem was.",[],[1291],{"kind":1053,"url":1292},"https:\u002F\u002Fdocs.flutter.dev\u002Fperf\u002Fimpeller",[662],"\u002Fglossary#impeller",{"slug":1296,"term":1297,"definition":1298,"category":1299,"aliases":1300,"links":1304,"related":1307,"readMore":-1,"target":1309,"hasArticle":1024},"in-app-purchase","In-app-aankoop","Digitale goederen of een abonnement verkopen via de Apple- of Google-billing die beide winkels verplicht stellen voor digitale content en waarover ze commissie rekenen. Het moeilijke is nooit de aankoop; het is het herstellen ervan op een nieuw toestel en de rechten kloppend houden.","business",[1301,1302,1303],"IAP","in-app purchase","in-app-abonnement",[1305],{"kind":1053,"url":1306},"https:\u002F\u002Fdeveloper.apple.com\u002Fin-app-purchase\u002F",[1308],"product-market-fit","\u002Fglossary#in-app-purchase",{"slug":1057,"term":1311,"definition":1312,"category":1014,"aliases":1313,"links":1314,"related":1317,"readMore":-1,"target":1318,"hasArticle":1024},"Install Referrer","Een Google Play-API die een net geïnstalleerde Android-app de campagneparameters overhandigt van de link die tot de installatie leidde. De Android-helft van deferred deep linking, en de betrouwbare manier om te weten waar een gebruiker vandaan kwam.",[],[1315],{"kind":1053,"url":1316},"https:\u002F\u002Fdeveloper.android.com\u002Fgoogle\u002Fplay\u002Finstallreferrer",[1056,1047],"\u002Fglossary#install-referrer",{"slug":1184,"term":1320,"definition":1321,"category":1322,"aliases":1323,"links":1325,"related":1330,"readMore":-1,"target":1331,"hasArticle":1024},"JWT","Een ondertekend token dat zijn eigen claims meedraagt, zodat een server kan zien bij wie een verzoek hoort zonder een sessie op te zoeken. Standaard voor mobiele authenticatie. De handtekening bewijst dat er niets is gewijzigd; ze verbergt niet wat erin staat.","protocol",[1324],"JSON Web Token",[1326,1328],{"kind":1019,"url":1327},"https:\u002F\u002Fjwt.io\u002F",{"kind":1039,"url":1329},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FJSON_Web_Token",[1042],"\u002Fglossary#jwt",{"slug":1333,"term":1334,"definition":1335,"category":1029,"aliases":1336,"links":1341,"related":1344,"readMore":-1,"target":1345,"hasArticle":1024},"kyc","KYC","Know Your Customer — de identiteitscontroles die een gereguleerd financieel product uitvoert voordat het iemand geld laat verplaatsen: documentscans, liveness, sanctie- en witwascontroles. Het bepaalt de onboarding sterker dan welke ontwerpkeuze ook.",[1337,1338,1339,1340],"Know Your Customer","AML","KYC\u002FAML","witwascontrole",[1342],{"kind":1039,"url":1343},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FKnow_your_customer",[1042,1026],"\u002Fglossary#kyc",{"slug":76,"term":74,"definition":1347,"category":1014,"aliases":1348,"links":1350,"related":1351,"readMore":749,"target":749,"hasArticle":1024},"Bedrijfslogica geschreven in Kotlin delen tussen Android, iOS en de server, terwijl elk platform zijn eigen native UI houdt. Het alternatief voor Flutter wanneer de interface native moet zijn maar de regels erachter niet.",[1349],"KMP",[],[],{"slug":1353,"term":1354,"definition":1355,"category":1299,"aliases":1356,"links":1359,"related":1362,"readMore":-1,"target":1363,"hasArticle":1024},"mvp","MVP","De kleinste versie van een product die je aan echte gebruikers kunt uitbrengen en die nog steeds de vraag beantwoordt waarvoor je het bouwde. Een besluit over scope, niet over kwaliteit — een MVP moet nog altijd werken.",[1357,1358],"minimum viable product","minimaal levensvatbaar product",[1360],{"kind":1039,"url":1361},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMinimum_viable_product",[1213],"\u002Fglossary#mvp",{"slug":1114,"term":1365,"definition":1366,"category":1089,"aliases":1367,"links":1372,"related":1375,"readMore":-1,"target":1376,"hasArticle":1024},"Multi-architectuur-image","Eén image-tag die per CPU-architectuur naar andere binaries verwijst — linux\u002Famd64 en linux\u002Farm64 zijn het gebruikelijke paar — zodat dezelfde docker pull ongewijzigd werkt op Intel- en AMD-servers en op Apple Silicon-laptops.",[1368,1369,1370,1371],"multi-arch build","multi-arch image","multi-platform image","linux\u002Famd64 + linux\u002Farm64",[1373],{"kind":1053,"url":1374},"https:\u002F\u002Fdocs.docker.com\u002Fbuild\u002Fbuilding\u002Fmulti-platform\u002F",[1100],"\u002Fglossary#multi-arch-image",{"slug":1214,"term":1378,"definition":1379,"category":1089,"aliases":1380,"links":1383,"related":1386,"readMore":-1,"target":1387,"hasArticle":1024},"Multi-tenancy","Eén deployment die veel klanten bedient, waarbij elke klant alleen zijn eigen data, configuratie en ingeschakelde functies ziet doordat de tenantcontext per verzoek wordt bepaald. Het is wat een vloot merkapps één product maakt in plaats van veel forks.",[1381,1382],"multi-tenant","tenant",[1384],{"kind":1039,"url":1385},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMultitenancy",[1213,1201],"\u002Fglossary#multi-tenancy",{"slug":1389,"term":1390,"definition":1391,"category":1322,"aliases":1392,"links":1396,"related":1401,"readMore":-1,"target":1402,"hasArticle":1024},"oauth","OAuth","De standaard achter Inloggen met Apple, Google en de rest: de gebruiker geeft je app toestemming bij een aanbieder die hij al vertrouwt, en je app krijgt een token in plaats van zijn wachtwoord. Niemand hoeft nieuwe inloggegevens te verzinnen en jij bewaart ze nergens.",[1393,1394,1395],"OAuth 2.0","social login","Inloggen met Apple",[1397,1399],{"kind":1019,"url":1398},"https:\u002F\u002Foauth.net\u002F2\u002F",{"kind":1039,"url":1400},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOAuth",[1184],"\u002Fglossary#oauth",{"slug":1070,"term":1404,"definition":1405,"category":1089,"aliases":1406,"links":1411,"related":1414,"readMore":-1,"target":1415,"hasArticle":1024},"Objectopslag","Opslag die een heel bestand onder een sleutel bewaart in plaats van in een mappenboom — Amazon S3 en de vele diensten die zijn API spreken. Goedkoop, praktisch onbeperkt, en de gebruikelijke plek voor ruwe events, back-ups en media: eenmaal geschreven, zelden gelezen, eeuwig bewaard.",[1407,1408,1409,1410],"S3","S3-compatibele opslag","object storage","blob storage",[1412],{"kind":1039,"url":1413},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FObject_storage",[1060],"\u002Fglossary#object-storage",{"slug":1042,"term":1417,"definition":1418,"category":1029,"aliases":1419,"links":1422,"related":1427,"readMore":-1,"target":1428,"hasArticle":1024},"PCI-DSS","De beveiligingsstandaard van de kaartindustrie die iedereen bindt die kaartgegevens opslaat, verwerkt of verstuurt. De meeste apps blijven er bewust buiten door de kaartinvoer over te laten aan een gecertificeerde betaaldienstverlener.",[1420,1421],"PCI DSS","Payment Card Industry Data Security Standard",[1423,1425],{"kind":1019,"url":1424},"https:\u002F\u002Fwww.pcisecuritystandards.org\u002F",{"kind":1039,"url":1426},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPayment_Card_Industry_Data_Security_Standard",[1184],"\u002Fglossary#pci-dss",{"slug":330,"term":1430,"definition":1431,"category":1014,"aliases":1432,"links":1436,"related":1439,"readMore":-1,"target":1440,"hasArticle":1024},"Platform channels","De brug waarmee een Flutter-app native iOS- en Android-code aanroept — Keychain en Keystore, biometrie, betaalschermen, elke SDK zonder Dart-pakket. Routinewerk maar echt werk, en de eerste plek waar een engineer die nooit buiten Dart kwam vastloopt.",[1433,1434,1435],"platform channel","method channel","platformkanaal",[1437],{"kind":1053,"url":1438},"https:\u002F\u002Fdocs.flutter.dev\u002Fplatform-integration\u002Fplatform-channels",[76],"\u002Fglossary#platform-channels",{"slug":1442,"term":1443,"definition":1444,"category":1322,"aliases":1445,"links":1449,"related":1452,"readMore":-1,"target":1453,"hasArticle":1024},"post-quantum-cryptography","Post-quantumcryptografie","Versleutelingsalgoritmen die veilig moeten blijven tegen een toekomstige quantumcomputer, inmiddels gestandaardiseerd door NIST. De migratie is nu al dringend, nog vóór die hardware bestaat, omdat verkeer dat vandaag wordt onderschept later alsnog te ontsleutelen valt.",[1446,1447,1448],"PQC","post-quantum cryptography","postkwantumcryptografie",[1450],{"kind":1039,"url":1451},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPost-quantum_cryptography",[1183,1172],"\u002Fglossary#post-quantum-cryptography",{"slug":1308,"term":1455,"definition":1456,"category":1299,"aliases":1457,"links":1461,"related":1464,"readMore":-1,"target":1466,"hasArticle":1024},"Product-market fit","Het punt waarop een product aantoonbaar mensen heeft gevonden die het willen — ze gebruiken het, komen terug en betalen. Daarvoor beantwoordt engineering een vraag; daarna bedient engineering de vraag.",[1458,1459,1460],"PMF","product\u002Fmarket fit","productmarktfit",[1462],{"kind":1039,"url":1463},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FProduct-market_fit",[1353,1465],"time-to-market","\u002Fglossary#product-market-fit",{"slug":1468,"term":1469,"definition":1470,"category":1029,"aliases":1471,"links":1474,"related":1477,"readMore":-1,"target":1479,"hasArticle":1024},"prompt-injection","Prompt injection","Een aanval waarbij tekst van een gebruiker door een taalmodel als instructie wordt gelezen in plaats van als data, en het model zo om zijn eigen regels heen wordt gestuurd. De LLM-variant van SQL-injectie, en hij duikt overal op waar gebruikersinvoer in een prompt wordt geplakt.",[1472,1473],"injectieaanval","injection attack",[1475],{"kind":1039,"url":1476},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrompt_injection",[1478],"rate-limiting","\u002Fglossary#prompt-injection",{"slug":1197,"term":1481,"definition":1482,"category":1089,"aliases":1483,"links":1486,"related":1489,"readMore":-1,"target":1490,"hasArticle":1024},"Pub\u002FSub","Een berichtenpatroon waarin een producent een gebeurtenis publiceert en willekeurig veel consumenten die elk voor zich lezen, met een broker ertussen. De producent wacht nooit op ze, en zo blijft een verzoekpad snel terwijl het tragere werk erachter gebeurt.",[1484,1485],"publish\u002Fsubscribe","Google Cloud Pub\u002FSub",[1487],{"kind":1039,"url":1488},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPublish%E2%80%93subscribe_pattern",[],"\u002Fglossary#pub-sub",{"slug":1096,"term":1492,"definition":1493,"category":1089,"aliases":1494,"links":1497,"related":1500,"readMore":-1,"target":1501,"hasArticle":1024},"REST","De gangbare stijl voor HTTP-API's: een URL benoemt een resource en het HTTP-werkwoord zegt wat ermee moet gebeuren. De standaardmanier waarop een app met een backend praat, en wat de meeste externe integraties verwachten aan te treffen.",[1495,1496],"REST API","Representational State Transfer",[1498],{"kind":1039,"url":1499},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FREST",[1196,1198],"\u002Fglossary#rest",{"slug":1478,"term":1503,"definition":1504,"category":1029,"aliases":1505,"links":1509,"related":1512,"readMore":-1,"target":1513,"hasArticle":1024},"Rate limiting","Een bovengrens op het aantal verzoeken dat één aanroeper binnen een bepaald venster mag doen. Het houdt tegen dat één enthousiaste gebruiker, een scraper of een bot in een middag een maand aan betaald API-budget opmaakt, en het moet aan jouw kant van de integratie staan.",[1506,1507,1508],"rate limit","throttling","verzoeklimiet",[1510],{"kind":1039,"url":1511},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRate_limiting",[1468],"\u002Fglossary#rate-limiting",{"slug":1043,"term":1515,"definition":1516,"category":1029,"aliases":1517,"links":1520,"related":1523,"readMore":-1,"target":1524,"hasArticle":1024},"SOC 2","Een rapport van een externe auditor over hoe een organisatie met klantgegevens omgaat — beveiliging, beschikbaarheid, vertrouwelijkheid — en niet een certificaat dat je koopt. Zakelijke kopers vragen erom, en het beperkt de architectuur lang voordat de audit dat doet.",[1518,1519],"SOC2","System and Organization Controls",[1521],{"kind":1039,"url":1522},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSystem_and_Organization_Controls",[1042,1026,1044],"\u002Fglossary#soc-2",{"slug":1526,"term":1527,"definition":1528,"category":1299,"aliases":1529,"links":1532,"related":1535,"readMore":-1,"target":1536,"hasArticle":1024},"saas","SaaS","Software die als doorlopend abonnement op een gehost product wordt verkocht in plaats van als eenmalige licentie die de klant zelf installeert en draait. De leverancier beheert de servers, levert doorlopend updates en factureert per gebruiker of per verbruik.",[1530,1531],"Software as a Service","software-as-a-service",[1533],{"kind":1039,"url":1534},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSoftware_as_a_service",[1214,1213],"\u002Fglossary#saas",{"slug":1198,"term":1538,"definition":1539,"category":1322,"aliases":1540,"links":1542,"related":1545,"readMore":-1,"target":1546,"hasArticle":1024},"Server-Sent Events","Een eenrichtingsstroom van server naar client over een gewone HTTP-verbinding. Eenvoudiger dan een WebSocket en het volstaat overal waar alleen de server iets te melden heeft — een voortgangsfeed, een AI-antwoord dat token voor token binnenkomt.",[1541],"SSE",[1543],{"kind":1039,"url":1544},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FServer-sent_events",[1196,1096],"\u002Fglossary#server-sent-events",{"slug":1271,"term":1548,"definition":1549,"category":1089,"aliases":1550,"links":1554,"related":1557,"readMore":-1,"target":1558,"hasArticle":1024},"Server-side rendering","Een pagina op de server als kant-en-klare HTML opbouwen, zodat het eerste antwoord de inhoud, koppen, metatags en gestructureerde data al meedraagt. Crawlers, linkvoorbeelden en trage apparaten lezen dat zonder JavaScript uit te voeren.",[1551,1552,1553],"SSR","server-rendered","renderen op de server",[1555],{"kind":1039,"url":1556},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FServer-side_scripting",[1261],"\u002Fglossary#server-side-rendering",{"slug":662,"term":1560,"definition":1561,"category":1014,"aliases":1562,"links":1565,"related":1570,"readMore":-1,"target":1571,"hasArticle":1024},"Skia","De opensource 2D-graphicsbibliotheek van Google die Chrome, Android en — tot Impeller — elk Flutter-frame tekent. Ze rendert net zo goed naar PDF als naar een scherm, en dat is wat print-naar-PDF in Chrome doet.",[1563,1564],"Skia Graphics Engine","skia-safe",[1566,1568],{"kind":1019,"url":1567},"https:\u002F\u002Fskia.org\u002F",{"kind":1039,"url":1569},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSkia_Graphics_Engine",[1286],"\u002Fglossary#skia",{"slug":1573,"term":1574,"definition":1575,"category":1089,"aliases":1576,"links":1580,"related":1583,"readMore":-1,"target":1584,"hasArticle":1024},"state-management","State management","Hoe een app bepaalt waar een waarde leeft, wie hem mag wijzigen en welke delen van het scherm opnieuw tekenen als dat gebeurt. In Flutter is de keuze tussen Riverpod, BLoC en Provider een van de eerste architectuurbesluiten en het lastigst te herzien.",[1577,1578,1579],"statemanagement","BLoC","Riverpod",[1581],{"kind":1053,"url":1582},"https:\u002F\u002Fdocs.flutter.dev\u002Fdata-and-backend\u002Fstate-mgmt\u002Foptions",[1227],"\u002Fglossary#state-management",{"slug":1183,"term":1586,"definition":1587,"category":1322,"aliases":1588,"links":1592,"related":1595,"readMore":-1,"target":1596,"hasArticle":1024},"TLS","De versleutelingslaag onder HTTPS. Ze bewijst dat de server is wie zijn certificaat zegt, spreekt een verse sleutel voor de sessie af en versleutelt alles daarna — zodat het netwerk ertussen alleen cijfertekst ziet die het niet stiekem kan wijzigen.",[1589,1590,1591],"SSL","HTTPS","Transport Layer Security",[1593],{"kind":1039,"url":1594},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTransport_Layer_Security",[1172,1184],"\u002Fglossary#tls",{"slug":1598,"term":870,"definition":1599,"category":1299,"aliases":1600,"links":1606,"related":1607,"readMore":-1,"target":1609,"hasArticle":1024},"staff-augmentation","Een inhuurmodel waarbij engineers van een externe partner bij je team komen en onder jouw aansturing werken — in jouw repository, jouw sprints, jouw proces — in plaats van een eigen project op te leveren. Je koopt capaciteit; de code en de context blijven bij jou.",[1601,1602,1603,1604,1605],"staff augmentation","team augmentation","dedicated developers","outstaffing","teamversterking",[],[1608,1465],"total-cost-of-ownership","\u002Fglossary#staff-augmentation",{"slug":1465,"term":1611,"definition":1612,"category":1299,"aliases":1613,"links":1616,"related":1619,"readMore":-1,"target":1620,"hasArticle":1024},"Time to market","Hoe lang het duurt om een product van besluit naar echte gebruikers te krijgen. De meeste discussies over stack en scope gaan eigenlijk over dit getal, want elke gewonnen week is een week omzet, feedback en concurrentiepositie.",[1614,1465,1615],"TTM","doorlooptijd tot de markt",[1617],{"kind":1039,"url":1618},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTime_to_market",[1353,1608],"\u002Fglossary#time-to-market",{"slug":1608,"term":1622,"definition":1623,"category":1299,"aliases":1624,"links":1628,"related":1631,"readMore":-1,"target":1632,"hasArticle":1024},"Total cost of ownership","Wat een product over zijn hele leven kost in plaats van alleen de bouw: onderhoud, upgrades, jaarlijkse OS- en winkelmigraties, en het tweede team dat je aanneemt om twee codebases gelijk te houden. Meestal groter dan de bouwofferte, en er vrijwel nooit in opgenomen.",[1625,1626,1627],"TCO","kosten van eigenaarschap","totale eigendomskosten",[1629],{"kind":1039,"url":1630},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTotal_cost_of_ownership",[1465],"\u002Fglossary#total-cost-of-ownership",{"slug":1634,"term":1635,"definition":1636,"category":1322,"aliases":1637,"links":1639,"related":1644,"readMore":-1,"target":1646,"hasArticle":1024},"webrtc","WebRTC","De standaard voor browsers en mobiel om audio, video en data rechtstreeks tussen twee apparaten te sturen, waarbij servers er alleen aan te pas komen om ze aan elkaar voor te stellen. Hierop is een videogesprek in een app gebouwd, tenzij er een gehuurde SDK onder zit.",[1638],"Web Real-Time Communication",[1640,1642],{"kind":1019,"url":1641},"https:\u002F\u002Fwebrtc.org\u002F",{"kind":1039,"url":1643},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWebRTC",[1645,1196],"xmpp","\u002Fglossary#webrtc",{"slug":1196,"term":1648,"definition":1649,"category":1322,"aliases":1650,"links":1651,"related":1654,"readMore":-1,"target":1655,"hasArticle":1024},"WebSocket","Een protocol dat één verbinding openhoudt tussen client en server, zodat beide kanten op elk moment kunnen sturen in plaats van dat de client keer op keer vraagt. Waar live koersen, chat en aanwezigheidsindicatoren op draaien.",[],[1652],{"kind":1039,"url":1653},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWebSocket",[1198,1096],"\u002Fglossary#websocket",{"slug":1213,"term":1657,"definition":1658,"category":1299,"aliases":1659,"links":1663,"related":1666,"readMore":1667,"target":1667,"hasArticle":506},"White-label","Eén product dat onder veel merken wordt uitgebracht. Een white-label platform voor mobiel bouwt elke klant een winkelklare app met een eigen naam, ontwerp en content vanuit één gedeelde codebase, in plaats van het project per klant te forken.",[1660,1661,1662],"white label","multi-tenant app","merkloos product",[1664],{"kind":1039,"url":1665},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWhite-label_product",[1353],"\u002Fglossary\u002Fwhite-label",{"slug":1645,"term":1669,"definition":1670,"category":1322,"aliases":1671,"links":1674,"related":1679,"readMore":-1,"target":1680,"hasArticle":1024},"XMPP","Een open, gefedereerd berichtenprotocol, en al lang het alternatief voor zelf een chatbackend schrijven of er een huren. Het dekt ook aanwezigheid, typindicatoren en bestandsoverdracht, en het is oud genoeg dat elk platform een volwassen clientbibliotheek heeft.",[1672,1673],"Jabber","Extensible Messaging and Presence Protocol",[1675,1677],{"kind":1019,"url":1676},"https:\u002F\u002Fxmpp.org\u002F",{"kind":1039,"url":1678},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FXMPP",[1634,1196],"\u002Fglossary#xmpp"]