Update footer, about page, contact address, and add payment page flow

Changes:
- Footer: Added "A product by Gyannetra Pvt Ltd" prefix
- Footer: Removed Student Dashboard & Admin Panel links
- About page: Added "A product by Gyannetra Pvt Ltd" prefix
- Contact page: Bengaluru -> Pune, Maharashtra
- Signup flow: Replaced success message with payment page showing
  student name, plan, total price, and disabled Pay Now button
- Landing page: Get Pro / Get AI Coach buttons now pass plan param
- Docker compose: Changed port from 3001 to 3882
This commit is contained in:
2026-07-31 07:41:25 +00:00
parent 51ae1f2fd9
commit 5a59add3bd
6 changed files with 61 additions and 26 deletions

View File

@@ -7,4 +7,4 @@ services:
dockerfile: Dockerfile
container_name: pragativeer_landing
ports:
- "3001:3000"
- "3882:3000"

View File

@@ -13,7 +13,7 @@ export default function AboutPage() {
<main className="flex-1 flex flex-col items-center justify-center p-8 text-center animate-in fade-in duration-700">
<h1 className="text-5xl font-bold tracking-tighter mb-6">About PragatiVeer</h1>
<p className="text-xl text-muted-foreground max-w-2xl leading-relaxed mb-8">
We are a team of educators and engineers dedicated to re-engineering NEET/JEE preparation through the power of Artificial Intelligence.
A product by Gyannetra Pvt Ltd , We are a team of educators and engineers dedicated to re-engineering NEET/JEE preparation through the power of Artificial Intelligence.
</p>
<Link href="/signup">
<Button size="lg" className="rounded-full font-bold px-8 shadow-xl">Join the Revolution</Button>

View File

@@ -37,7 +37,7 @@ export default function ContactPage() {
<Mail size={16} className="text-primary" /> support@pragativeer.com
</div>
<div className="flex items-center gap-3 text-sm text-muted-foreground font-medium">
<MapPin size={16} className="text-primary" /> Tech Hub, Bengaluru, India
<MapPin size={16} className="text-primary" /> Pune, Maharashtra
</div>
</div>
</CardContent>

View File

@@ -450,7 +450,7 @@ export default function MarketingPage() {
<li className="flex items-center gap-4"><CheckCircle2 size={24} className="text-yellow-500" /> Detailed Performance Analytics</li>
<li className="flex items-center gap-4"><CheckCircle2 size={24} className="text-yellow-500" /> Parent Dashboard Access</li>
</ul>
<Link href="/signup">
<Link href="/signup?plan=pro">
<Button size="lg" className="w-full rounded-2xl h-12 bg-yellow-500 text-black font-bold text-lg hover:bg-yellow-400">Get Pro</Button>
</Link>
</Card>
@@ -474,7 +474,7 @@ export default function MarketingPage() {
<li className="flex items-center gap-4"><CheckCircle2 size={24} className="text-[#00F0FF]" /> 24/7 Streaming AI Tutor Chat</li>
<li className="flex items-center gap-4"><CheckCircle2 size={24} className="text-[#00F0FF]" /> Predictive Rank & College Predictor</li>
</ul>
<Link href="/signup">
<Link href="/signup?plan=aicoach">
<Button size="lg" className="w-full rounded-2xl h-12 font-bold text-lg bg-[#00F0FF] text-black hover:bg-[#00F0FF]/90 transition-all">Get AI Coach</Button>
</Link>
</Card>
@@ -562,7 +562,7 @@ export default function MarketingPage() {
/>
</div>
<p className="text-sm text-muted-foreground font-medium leading-relaxed">
Re-engineering NEET & JEE preparation with adaptive AI models. Learn faster, rank higher.
A product by Gyannetra Pvt Ltd, Re-engineering NEET & JEE preparation with adaptive AI models. Learn faster, rank higher.
</p>
<div className="flex items-center gap-4 pt-2">
{/*
@@ -584,8 +584,6 @@ export default function MarketingPage() {
<ul className="space-y-3 text-sm font-medium text-muted-foreground">
<li><Link href="#features" className="hover:text-primary transition-colors">Features</Link></li>
<li><Link href="#pricing" className="hover:text-primary transition-colors">Pricing</Link></li>
<li><Link href="/dashboard" className="hover:text-primary transition-colors">Student Dashboard</Link></li>
<li><Link href="/admin" className="hover:text-[#00F0FF] transition-colors">Admin Panel</Link></li>
</ul>
</div>

View File

@@ -2,13 +2,25 @@
import { Button } from "@/components/ui/button"
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"
import { ArrowLeft, Eye, EyeOff, CheckCircle2 } from "lucide-react"
import { ArrowLeft, Eye, EyeOff, CheckCircle2, IndianRupee } from "lucide-react"
import Link from "next/link"
import { useState } from "react"
import { useRouter } from "next/navigation"
import { useState, Suspense } from "react"
import { useRouter, useSearchParams } from "next/navigation"
import { Logo } from "@/components/Logo"
export default function SignupPage() {
const PLAN_PRICES: Record<string, string> = {
pro: "₹3,499",
aicoach: "₹11,999",
}
const PLAN_NAMES: Record<string, string> = {
pro: "Pro",
aicoach: "AI Coach",
}
function SignupForm() {
const searchParams = useSearchParams()
const plan = searchParams.get("plan") || ""
const [step, setStep] = useState(1)
const [showPassword, setShowPassword] = useState(false)
const [showOTP, setShowOTP] = useState(false)
@@ -54,18 +66,41 @@ export default function SignupPage() {
</div>
{isSubmitted ? (
<Card className="border-border bg-secondary/10 backdrop-blur-xl shadow-[0_0_50px_-20px_var(--color-primary)] rounded-[2rem] overflow-hidden text-center py-8">
<CardContent className="space-y-6 pt-4 flex flex-col items-center">
<CheckCircle2 size={64} className="text-primary mb-4" />
<h2 className="text-3xl font-black tracking-tight text-foreground">Thanks for registering, {firstName}!</h2>
<p className="text-muted-foreground text-sm font-medium px-4 leading-relaxed">
We are currently integrating our payment gateway and will be live soon.
</p>
<Link href="/login" className="w-full mt-4">
<Button className="w-full rounded-xl h-12 font-bold text-base bg-primary text-primary-foreground hover:bg-primary/90 transition-all shadow-[0_0_20px_-5px_var(--color-primary)]">
Go to Login
<Card className="border-border bg-secondary/10 backdrop-blur-xl shadow-[0_0_50px_-20px_var(--color-primary)] rounded-[2rem] overflow-hidden">
<CardHeader className="text-center pb-2 pt-8">
<div className="mx-auto w-16 h-16 bg-primary/10 rounded-full flex items-center justify-center mb-4">
<IndianRupee size={32} className="text-primary" />
</div>
<CardTitle className="text-2xl font-bold tracking-tight">Complete Payment</CardTitle>
<CardDescription className="text-muted-foreground">
Review your order details below
</CardDescription>
</CardHeader>
<CardContent className="space-y-6 px-8 pb-8">
<div className="bg-secondary/50 rounded-2xl p-6 space-y-4">
<div className="flex justify-between items-center pb-4 border-b border-border/50">
<span className="text-muted-foreground font-medium">Student Name</span>
<span className="font-bold text-lg text-foreground">{firstName} {lastName}</span>
</div>
<div className="flex justify-between items-center pb-4 border-b border-border/50">
<span className="text-muted-foreground font-medium">Plan</span>
<span className="font-bold text-lg" style={{color: plan === "aicoach" ? "#00F0FF" : "#EAB308"}}>{PLAN_NAMES[plan] || "Pro"}</span>
</div>
<div className="flex justify-between items-center">
<span className="text-muted-foreground font-medium">Total Amount</span>
<span className="font-bold text-2xl text-foreground">{PLAN_PRICES[plan] || "₹3,499"}<span className="text-sm text-muted-foreground font-normal ml-1">/year</span></span>
</div>
</div>
<p className="text-xs text-muted-foreground text-center">* All prices are inclusive of GST.</p>
<Button
className="w-full rounded-xl h-14 font-bold text-lg bg-primary text-primary-foreground hover:bg-primary/90 transition-all shadow-[0_0_20px_-5px_var(--color-primary)] opacity-60 cursor-not-allowed"
disabled
>
Pay Now
</Button>
</Link>
<p className="text-xs text-muted-foreground text-center">
Payment gateway integration coming soon. We will notify you once it is live.
</p>
</CardContent>
</Card>
) : (
@@ -213,3 +248,7 @@ export default function SignupPage() {
</div>
)
}
export default function SignupPage() {
return <Suspense fallback={<div className="min-h-screen bg-background flex items-center justify-center"><p className="text-muted-foreground">Loading...</p></div>}><SignupForm /></Suspense>
}

View File

@@ -53,7 +53,7 @@ export function PublicLayout({ children }: { children: React.ReactNode }) {
/>
</div>
<p className="text-sm text-muted-foreground font-medium leading-relaxed">
Re-engineering NEET & JEE preparation with adaptive AI models. Learn faster, rank higher.
A product by Gyannetra Pvt Ltd, Re-engineering NEET & JEE preparation with adaptive AI models. Learn faster, rank higher.
</p>
</div>
@@ -62,8 +62,6 @@ export function PublicLayout({ children }: { children: React.ReactNode }) {
<ul className="space-y-3 text-sm font-medium text-muted-foreground">
<li><Link href="/#features" className="hover:text-primary transition-colors">Features</Link></li>
<li><Link href="/#pricing" className="hover:text-primary transition-colors">Pricing</Link></li>
<li><Link href="/dashboard" className="hover:text-primary transition-colors">Student Dashboard</Link></li>
<li><Link href="/admin" className="hover:text-[#00F0FF] transition-colors">Admin Panel</Link></li>
</ul>
</div>