Naar inhoud gaan
supastack
Blader door de docs
WebNext.js

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /nl/docs/web/updating-the-kit.md (or send Accept: text/markdown).

Werk uw kopie bij wanneer de kit verbetert

Breng verbeteringen uit de bronrepository over naar uw kopie — leg uw uitgangspunt vast, haal de nieuwe revisie op, merge die op een branch en verifieer vóór het deployen.

1. Leg uw uitgangspunt vast

Behandel een update als een klein project, niet als een plakactie: u vergelijkt de kitrevisie die u heeft met de nieuwere, draagt de wijzigingen over en test op een branch voordat u deployt. Dit werkt of uw project nu een fork is van een kitrepository — een kopie die GitHub met de bron verbonden houdt — of code die u in uw eigen app heeft gekopieerd.

Schrijf allereerst een notitie in uw project met drie dingen: de kitcommit waar u mee begon — de SHA, de korte code van Git die één exacte versie identificeert — de repository die u heeft ontvangen (supastack-web, supastack-mobile, supastack-desktop of de All Platforms-monorepo), en de wijzigingen die u zelf al heeft gemaakt.

De kitrepositories en de monorepo hebben verschillende geschiedenissen, dus merge nooit een branch van de ene in een fork van de andere. Als u nooit een begin-SHA heeft vastgelegd, vind dan in een fork de dichtstbijzijnde gedeelde versie met git merge-base, of identificeer bij een selectieve overname de laatste bestanden en tests die u heeft gekopieerd — en bekijk een bredere diff wanneer de exacte basislijn onzeker is.

2. Haal de nieuwe revisie op en merge die

Voer de onderstaande opdrachten uit in een terminal in uw projectmap, met uw werk opgeslagen en gecommit — een schone working tree, zodat er niets halfafs in de merge terechtkomt. Woorden tussen punthaken zijn invulsjablonen: zet uw eigen waarden in de plaats van het hele <thing>. Het getoonde GitHub-adres is een placeholder; gebruik het adres van de repository die u heeft geforkt.

Wat de regels doen: git remote add leert uw kopie een tweede adres met de naam kit-upstream — de kitrepository — en git fetch downloadt de nieuwste staat zonder uw bestanden aan te raken. git switch -c maakt een aparte upgradebranch aan zodat uw hoofdbranch onaangeroerd blijft terwijl u controleert. git log toont de commits die u gaat overnemen en git diff --stat vat samen welke bestanden zijn gewijzigd; lees de volledige diff voor de modules die u gebruikt, niet alleen de committitels. git merge brengt de nieuwe code in de upgradebranch.

Als Git meldt dat de kit-upstream-remote al bestaat, sla dan de regel remote add over en ga verder met git fetch. <previous-kit-sha> is de begin-SHA die u in stap 1 heeft vastgelegd.

# Upstream is the platform repository you forked — substitute its real URL
# (supastack-web shown; use supastack-mobile or supastack-desktop as fits).
git remote add kit-upstream https://github.com/<org>/supastack-web.git
git fetch kit-upstream
git switch -c upgrade/kit-update
git log --oneline <previous-kit-sha>..kit-upstream/main
git diff --stat <previous-kit-sha>..kit-upstream/main
git merge kit-upstream/main

3. Los conflicten op zonder uw werk te verliezen

Een conflict betekent dat beide kanten dezelfde regels hebben gewijzigd: de kit is verdergegaan en u heeft dezelfde plek aangepast. Git pauzeert de merge en markeert het bestand — het vraagt u te kiezen, het rapporteert geen schade.

Open elk gemarkeerd bestand in uw editor en beslis regel voor regel: behoud de eigen tekst, namen en instellingen van uw product en neem de fixes en structurele wijzigingen van de kit over. Los een conflict nooit op door een bestand dat u heeft aangepast te vervangen door de hele nieuwe versie van de kit — dat wist uw werk. Los op binnen de upgradebranch en voer de tests voor elk opgelost gebied uit voordat u doorgaat.

Als de merge misgaat, brengt git merge --abort de branch terug naar de staat van vóór de merge. Niets in deze stroom verandert uw hoofdbranch of uw deployment totdat u de upgradebranch zelf merget.

4. Werk data bij en deploy in de juiste volgorde

Nieuwe kitrevisies kunnen de database wijzigen. Lees de nieuwe bestanden in packages/db/drizzle/ — de migratiemap — en maak een back-up van productiedata voordat u migraties toepast; test ze eerst tegen een wegwerpkopie. Deploy compatibele schemawijzigingen vóór de code die ze nodig heeft: als een migratie data verwijdert of hervormt, kan het terugdraaien van alleen appcode het oude schema niet herstellen.

Vergelijk het nieuwe .env.example met uw eigen instellingen en voeg nieuw vereiste waarden toe in uw hostingdashboard. .env-bestanden bevatten geheimen en worden nooit naar Git gecommit — u maakt ze met de hand opnieuw op elke machine en deployment, en ze blijven uit NEXT_PUBLIC_- en EXPO_PUBLIC_-waarden.

Voer vóór het deployen de eigen verificatiecontroles van de kit uit. In de All Platforms-monorepo voert corepack pnpm check:local lint, typecheck, de unittests en een formaatcontrole uit zonder betaalde referenties; corepack pnpm verify:local voegt de productiebuild en de browsertestsuites toe. Voer in een fork van één oppervlak de eigen test- en buildopdrachten van die repository uit. Doe daarna een staging-smoketest: meld u aan, probeer een tweede workspace en doorloop de belangrijkste gebruikersreis van uw product.

Wanneer alles slaagt, noteer dan de geaccepteerde doel-SHA en de conflicten die u heeft opgelost — die notitie is de beginbasislijn voor de volgende update.

corepack pnpm check:local
# fuller gate: adds the production build and browser suites
corepack pnpm verify:local

5. Als u stukken heeft gekopieerd in plaats van geforkt

Een selectieve overname — kitmodules in een bestaande app kopiëren — deelt geen Git-geschiedenis met de kit, dus git merge kan niet helpen. Vergelijk in plaats daarvan de oude bron-SHA met de doel-bron-SHA en port alleen de wijzigingen die uw overgenomen deel raken.

Beoordeel de publieke types van de module, het persistentieschema en de migraties, de serveraanroeper, de configuratie, de tests en de docs als één geheel — een wijziging in een package kan elders een bijpassende route- of omgevingswijziging vereisen, en het kopiëren van een enkele helper kan de rest op een verouderd contract achterlaten. Houd een korte aanpassingsnotitie bij — welke kitbestanden u heeft genomen, welke u heeft overgeslagen, wat u heeft gewijzigd — zodat de volgende update uw keuzes kan herhalen.

Als een update iets in uw draaiende kopie breekt, doorloop dan de probleemoplossingsgids voordat u uw eigen wijzigingen ongedaan maakt.

Veelgestelde vragen

14 vragen

Wat is supastack?

supastack is een modulair fundament voor het bouwen van SaaS-producten met AI. Het brengt gemeenschappelijke infrastructuur samen zodat jij je kunt richten op productspecifieke functies.

Ondersteunt het web en mobiel?

Ja. supastack bevat Next.js- en Expo-apps als startpunten voor web- en mobiele ervaringen.

Welke authenticatie is inbegrepen?

Better Auth dekt e-mail/wachtwoord, OTP en sociale login. Persoonlijke workspaces worden bij het account geprovisioneerd zodat productrecords vanaf dag één afgebakend blijven.

Hoe ondersteunt het AI?

supastack bevat configureerbare multi-provider AI, usage-tracking, budgetten en versleutelde bring-your-own-key-ondersteuning.

Hoe worden abonnementen afgehandeld?

Voor producten op de kit vormen Stripe-billing, abonnementen en entitlements het fundament voor betaalde toegang. Providersecrets blijven server-only.

Waar leeft mijn productspecifieke code?

Productspecifieke functies blijven in een aparte codebase terwijl het product de fundamentmodules van supastack configureert en integreert.

Hoe werkt de prijs van supastack?

De kit is een eenmalige aankoop met lifetime updates: One Framework voor $249 (tijdelijke lanceringsprijs — $100 korting op de normale prijs van $349) of All Frameworks (Next.js, iOS, Android) voor $499 (tijdelijke lanceringsprijs — $100 korting op de normale prijs van $599), plus $75 per extra developer seat. Geen kit-abonnement. Checkout op deze site levert je licentiesleutel per e-mail, met repositorytoegang via een GitHub-uitnodiging.

Hoe bakens workspaces mijn data af?

Records van gebruikers worden afgebakend per workspaceId. Identiteit, entitlements, AI-gebruik, billing-events en auditentries blijven binnen de grens van de persoonlijke workspace.

Hoe werken achtergrondjobs?

Trigger.dev is de expliciete jobruntime. Het JobRunner-contract belooft alleen enqueue, status en cancel — workflowsemantiek blijft Trigger.dev-specifiek en expliciet.

Hoe verschilt e-mail van outreach?

Transactionele e-mail dekt productworkflows zoals voltooiingsnotices. Koude outreach en campagnes zijn productzaken buiten de e-mailmodule van deze kit.

Hoe werken mobiele aankopen?

Mobiel bevat native aankopen en herstel via RevenueCat, met toegang die je server verifieert. Configureer de winkelaccounts en rond apparaattests af vóór publicatie. Webfacturatie blijft afzonderlijk.

Waar leven de AI-providerkeys?

Bring-your-own-key-credentials zijn versleuteld en blijven server-only. Keys worden uit logs gefilterd; gebruik en budgetten blijven zichtbaar op workspaceniveau.

Welke betaalmethoden accepteert de checkout?

De door Stripe gehoste checkout accepteert kaarten en kan ook Alipay en WeChat Pay aanbieden zodra die wallets op het Stripe-account zijn geactiveerd — handig voor kopers in China. Wallet-autorisaties worden asynchroon bevestigd, dus de licentiepagina wordt bijgewerkt zodra de betaling is afgerond.

Kan ik een terugbetaling krijgen?

Zodra je toegang hebt gekregen tot de repository, is supastack voor altijd van jou en kan er dus geen terugbetaling plaatsvinden. Maar wees gerust: je krijgt de volledige broncode met levenslange updates om onbeperkt producten voor jezelf of je klanten te bouwen en te lanceren. Je mag de code alleen niet doorverkopen of de repository herdistribueren als starterkit of template.

NL
Thema