Free
Explorer
Free
No payment needed
Everything you need to explore Academy, follow public lessons, and see a preview of what the paid tiers include.
import React from 'react' import { usePage, Link } from '@inertiajs/react' import SeoHead from '../../../components/seo/SeoHead' import AccessBadge from '../../../components/academy/billing/AccessBadge' import PlanCard from '../../../components/academy/billing/PlanCard' import { trackUpgradeClick, useAcademyPageAnalytics } from '../../../lib/academyAnalytics' function getCsrfToken() { return document.querySelector('meta[name="csrf-token"]')?.getAttribute('content') || '' } function heroText(currentTier, isSubscribed) { if (isSubscribed && currentTier === 'pro') { return { heading: 'You have full Academy access.', body: 'All lessons, prompts, and Academy content are unlocked on your Pro plan. To upgrade, downgrade, or cancel, use the subscription manager below.', } } if (isSubscribed && currentTier === 'creator') { return { heading: "You're on the Creator plan.", body: 'Creator content is fully unlocked. Upgrade to Pro anytime to access the advanced lesson track and everything new that launches at the Pro tier.', } } if (currentTier === 'admin') { return { heading: 'Academy plans.', body: 'Your admin account already has full Academy access. Browse the plans below.', } } if (isSubscribed) { return { heading: 'Manage your Academy subscription.', body: 'Your plan is active. Review your options below or use the subscription manager to make changes.', } } return { heading: 'Unlock everything in Academy.', body: "Start free and upgrade when you're ready. Creator unlocks premium lessons and the full prompt library. Pro adds the advanced lesson track and is the highest Academy tier.", } } function SidePanel({ currentTier, isSubscribed, activePlanLabel, activePlanPrice, manageHref }) { if (isSubscribed) { return (
Your subscription
Active plan
{activePlanLabel || 'Academy plan'}
Billed monthly
{activePlanPrice || '—'}
Why upgrade?
{title}
{body}
Skinbase Academy
{currentTier !== 'free' ?{hero.body}
{errors?.plan ?{errors.plan}
: null} {flash?.error ?{flash.error}
: null} {flash?.success ?{flash.success}
: null} {Array.isArray(missingRemote) && missingRemote.length > 0 ? (Purchases temporarily disabled:
The following plans could not be verified in Stripe: {missingRemote.join(', ')}
Free
Free
No payment needed
Everything you need to explore Academy, follow public lessons, and see a preview of what the paid tiers include.