Naar inhoud gaan
supastack
Blader door de docs

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/mobile/notifications.md (or send Accept: text/markdown).

Meldingen en push

De inbox in de app, kanaalvoorkeuren en de Expo-pushpipeline.

De inbox en kanaalvoorkeuren

Het meldingentabblad toont werkruimtemeldingen uit GET /api/notifications en markeert ze als gelezen met een PATCH op de meldings-id. Instellingen → Meldingen bewerkt de gedeelde kanaalvoorkeuren — emailBilling, emailInvites, inAppProduct — via GET en PATCH op de voorkeursweergave van dezelfde route, exact het contract dat de webapp gebruikt. Het aantal ongelezen meldingen verschijnt op het startscherm.

Een apparaat registreren voor push

Bij het aanmelden — en opnieuw bij elke werkruimtewissel — vraagt de app meldingstoestemming, bepaalt de EAS-project-id uit de appconfiguratie, verkrijgt een Expo-pushtoken en post die naar POST /api/mobile/push-tokens. Android registreert op het standaardkanaal met hoge prioriteit.

Registratie meldt registered, permission_denied of unavailable en gooit nooit — aanmelden wordt nooit door push geblokkeerd. Expo Go en simulators kunnen de registratie niet voltooien, dus echte dekking vereist een ontwikkelingsbuild. De token wordt in SecureStore bewaard (supastack.push.token) zodat uitloggen hem kan afmelden voordat de sessiecookie wordt vernietigd.

Serverlevering en ontvangstbewijzen

GET toont de tokens van het lid, POST upsert een token onder de actieve werkruimte en DELETE trekt in — tonen en intrekken blijven gebruikersgebonden zodat een account zonder werkruimte alsnog kan opruimen. Elke gebruiker bewaart maximaal twintig apparaattokens; nog één registreren snoeit de oudste weg.

Elke werkruimtemelding in de app wordt ook best-effort gepusht: de server verzendt naar de Expo push-API in batches van honderd, legt ok-tickets vast en snoeit DeviceNotRegistered-tokens direct weg. De optionele, alleen-server EXPO_ACCESS_TOKEN voegt een Bearer-header aan die calls toe en wordt nooit gelogd. Een platformplanning vereffent ontvangstbewijzen elke dertig minuten en veegt verouderde tickets weg — die heeft dezelfde schedulertick-driver nodig als de andere platformplanningen.

# Optional server-only token for authenticated Expo push sends:
# apps/web/.env.local
EXPO_ACCESS_TOKEN=

Tikken op meldingen opent approutes

Afzenders voegen een webpad toe als data.href. De app valideert dat — alleen absolute slashpaden, begrensde lengte, geen traversal — en mapt bekende paden op native routes, bijvoorbeeld /billing naar /settings/billing en /dashboard naar /home. Een tik die aankomt terwijl de gebruiker is uitgelogd wordt gebufferd en afgevoerd zodra het aanmelden is voltooid.

Verificatie en probleemoplossing

Test op een ontwikkelingsbuild: verleen en weiger toestemming, schakel push om onder Instellingen → Meldingen — het scherm meldt dit apparaat als enabled, disabled of denied — en tik een melding koud en warm aan. Als uitschakelen een fout toont, is de server-side afmelding mislukt en blijft het apparaat geregistreerd tot die lukt.

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: Single Stack voor $249 — jouw keuze uit de Next.js- (web), Expo- (iOS & Android) of Tauri-repo (macOS & Windows desktop) —, Dual Stack voor $398 met twee repo's naar keuze, of de Full Bundle voor $399 met alle drie de repo's en het volledige monorepo, 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