diff --git a/app/app/billing/page.tsx b/app/app/billing/page.tsx new file mode 100644 index 0000000..a410601 --- /dev/null +++ b/app/app/billing/page.tsx @@ -0,0 +1,151 @@ +"use client"; + +import { Check } from "lucide-react"; + +export default function BillingPage() { + const plans = [ + { + name: "Free", + price: "$0", + description: "Perfect for getting started", + features: [ + "10 messages/month", + "Access to featured characters", + "Basic support", + ], + current: true, + }, + { + name: "Pro", + price: "$9.99", + period: "/month", + description: "For serious enthusiasts", + features: [ + "Unlimited messages", + "Priority character creation", + "Custom characters", + "Ad-free experience", + "Priority support", + ], + current: false, + }, + { + name: "Premium", + price: "$29.99", + period: "/month", + description: "Maximum experience", + features: [ + "Everything in Pro", + "Advanced AI models", + "Character voice customization", + "Private character storage", + "White-label options", + "24/7 VIP support", + ], + current: false, + }, + ]; + + return ( +
+ {/* Header */} +
+

Billing & Plans

+

Manage your subscription

+
+ + {/* Current Plan */} +
+

CURRENT PLAN

+

Free Plan

+

You're currently on the free plan

+
+ + {/* Plans Grid */} +
+ {plans.map((plan, index) => ( +
+ {/* Badge */} + {plan.current && ( +
+ Current Plan +
+ )} + + {/* Plan Name */} +

{plan.name}

+

{plan.description}

+ + {/* Price */} +
+ {plan.price} + {plan.period && {plan.period}} +
+ + {/* CTA */} + + + {/* Features */} +
    + {plan.features.map((feature, idx) => ( +
  • + + {feature} +
  • + ))} +
+
+ ))} +
+ + {/* Billing History */} +
+

Billing History

+
+ + + + + + + + + + + {[ + { date: "Dec 1, 2024", desc: "Free Plan", amount: "$0.00", status: "Active" }, + ].map((row, idx) => ( + + + + + + + ))} + +
DateDescriptionAmountStatus
{row.date}{row.desc}{row.amount} + + {row.status} + +
+
+
+
+ ); +} diff --git a/app/app/create/page.tsx b/app/app/create/page.tsx new file mode 100644 index 0000000..e441160 --- /dev/null +++ b/app/app/create/page.tsx @@ -0,0 +1,207 @@ +"use client"; + +import { Upload, Wand2, Save, X } from "lucide-react"; +import { useState } from "react"; + +export default function CreatePage() { + const [characterData, setCharacterData] = useState({ + name: "", + avatar: "", + description: "", + personality: "", + category: "Fantasy", + }); + + const [step, setStep] = useState(1); + + const handleChange = (e: React.ChangeEvent) => { + const { name, value } = e.target; + setCharacterData((prev) => ({ ...prev, [name]: value })); + }; + + const handleNext = () => { + if (step < 4) setStep(step + 1); + }; + + const handlePrev = () => { + if (step > 1) setStep(step - 1); + }; + + return ( +
+ {/* Header */} +
+

Create Character

+

Build your own AI character in 4 simple steps

+
+ + {/* Progress */} +
+ {[1, 2, 3, 4].map((num) => ( +
+ ))} +
+ + {/* Form */} +
+ {/* Step 1: Basic Info */} + {step === 1 && ( +
+
+ + +
+ +
+ + +
+ +

+ Give your character a unique name and choose a category that best fits their personality. +

+
+ )} + + {/* Step 2: Avatar */} + {step === 2 && ( +
+
+ + + {/* Preview */} +
+ +
+ + {/* Upload Options */} +
+ + + +
+
+
+ )} + + {/* Step 3: Description */} + {step === 3 && ( +
+
+ +