freemius
- 4 skills
- 0 followers
- 11 hours ago last updated
- ▌ Freemius Core · freemius bundleIntegrate Freemius monetization into a JavaScript/TypeScript backend — entitlement table, server-side checkout creation, purchase processing, and webhook license-lifecycle sync. Use when adding subscriptions, licensing, paywalls, or "unlock premium feature" gating to a SaaS/App/Web app whose backend is JS/TS (Hono, Express, Next.js, Fastify, serverless Fetch handlers). Covers the Freemius JS SDK (`@freemius/sdk`), not the frontend Checkout SDK.
- ▌ Freemius Checkout · freemius bundleBuild the customer-facing Freemius Checkout UI in a React app — the Checkout Provider (overlay context), Subscribe (subscription pricing table), Topup (one-off / credit pricing table), Paywall, and custom checkout buttons. Use when adding a pricing page, an "upgrade"/"buy credits" button, an overlay checkout, or a paywall to a React frontend. Covers the React Starter Kit Checkout components and the frontend Checkout SDK (`@freemius/checkout`), plus the thin checkout-specific backend endpoints the front end depends on (the purchase-sync `POST /api/purchase`, `GET /api/checkout/pricing`, and the hosted-redirect handler); the underlying checkout-creation and entitlement-sync engine still belongs to `freemius-core`.
- ▌ Freemius Customer Portal · freemius bundleBuild the Freemius Customer Portal in a React app — a self-service surface where a signed-in user manages their subscription (upgrade / change plan), cancels (with a churn-reducing retention coupon), edits billing information, and views payments & downloads invoices. Use when adding an "Account", "Billing", "Manage subscription", or "Invoices" page. Covers the React Starter Kit Customer Portal component and the SDK's headless portal processor (`freemius.customerPortal`); server-side checkout/entitlement sync is `freemius-core`.
- ▌ Freemius Troubleshooting · freemius bundleDiagnose and fix common stumbles when integrating Freemius with the JS SDK (`@freemius/sdk`) + React Checkout SDK (`@freemius/checkout`) on a Hono + Vite + Prisma stack. Use when a Freemius integration misbehaves — checkout redirect or webhooks not firing, entitlement not syncing, a TypeScript error on an SDK type, a missing webhook event, Prisma/driver-adapter failures, or Next.js → Vite/Hono porting issues. Seeded from the Freemius Lovable FAQ plus real findings captured while building the reference app with these Skills.