Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 87 additions & 0 deletions app/(routes)/Contact/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
import React from "react";
import { Button } from "@/components/ui/button";
import Header from "@/app/_components/Header";

function Contacts() {
return (
<>
{/* Header */}
<div className="flex flex-col items-center">
<Header />
</div>

{/* Contact Page */}
<section className="relative min-h-screen bg-black px-6 pt-16 pb-24">

{/* Background Glow */}
<div className="absolute inset-0 -z-10 bg-gradient-to-br from-purple-500/10 via-pink-500/10 to-blue-500/10 blur-3xl" />

<div className="max-w-5xl mx-auto">

{/* Page Title */}
<div className="text-center mb-16">
<h1 className="font-game text-5xl md:text-6xl text-white font-bold">
Contact <span className="text-yellow-400">Us</span>
</h1>
<p className="mt-4 text-gray-400 text-lg max-w-xl mx-auto">
Have a question, feedback, or idea? We’d love to hear from you.
</p>
</div>

{/* Contact Card */}
<div className="grid md:grid-cols-2 gap-10 rounded-3xl border border-white/10 bg-white/5 backdrop-blur-xl p-10 shadow-2xl">

{/* Left Info */}
<div className="space-y-6">
<h2 className="font-game text-3xl text-white">
Let’s Talk 👋
</h2>

<p className="text-gray-300">
Reach out for course support, collaboration, or general queries.
Our team usually replies within 24 hours.
</p>

<div className="space-y-3 text-gray-300">
<p>📧 support@yourplatform.com</p>
<p>🌍 Available worldwide</p>
<p>⏰ 24/7 Community Support</p>
</div>
</div>

{/* Right Form */}
<form className="space-y-6">
<input
type="text"
placeholder="Your Name"
className="w-full rounded-xl bg-zinc-900 border border-zinc-700 px-4 py-3 text-white font-game focus:outline-none focus:ring-2 focus:ring-yellow-400"
/>

<input
type="email"
placeholder="Your Email"
className="w-full rounded-xl bg-zinc-900 border border-zinc-700 px-4 py-3 text-white font-game focus:outline-none focus:ring-2 focus:ring-yellow-400"
/>

<textarea
rows={5}
placeholder="Your Message"
className="w-full rounded-xl bg-zinc-900 border border-zinc-700 px-4 py-3 text-white font-game focus:outline-none focus:ring-2 focus:ring-yellow-400"
/>

<Button
variant="pixel"
className="w-full py-6 text-xl font-game"
>
Send Message 🚀
</Button>
</form>

</div>
</div>
</section>
</>
);
}

export default Contacts;
18 changes: 18 additions & 0 deletions app/(routes)/Projects/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import React from 'react'
import CourseList from '../courses/_components/CourseList'
import Header from '@/app/_components/Header'

function Project() {
return (
<div>
{/* Header */}
<div className="flex flex-col items-center">
<Header />
</div>

<CourseList/>
</div>
)
}

export default Project
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import {
TooltipTrigger,
} from "@/components/ui/tooltip"
import Link from "next/link";
import { useAuth } from '@clerk/nextjs'



Expand All @@ -25,6 +26,9 @@ type Props = {

function CourseChapters({loading,courseDetail}:Props) {

const {has} = useAuth();
const hasUnlimitedAccess = has&&has({ plan: 'unlimited' })

const EnableExercise = (
chapterIndex: number,
exerciseIndex: number,
Expand Down
6 changes: 5 additions & 1 deletion app/(routes)/dashboard/_components/UpgradeToPro.tsx
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
"use client"
import React from 'react'
import Image from "next/image";
import { Button } from '@/components/ui/button';
import Link from "next/link";
import { useAuth } from '@clerk/nextjs';


function UpgradeToPro() {
return (
const {has} = useAuth();
const hasUnlimitedAccess = has&&has({ plan: 'unlimited' })
return !hasUnlimitedAccess &&(
<div className='flex items-center flex-col p-5 border-4 rounded-4xl mt-8'>
<Image src={'/logo.png'} alt='logo' width={70} height={70}/>
<h2 className='font-game text-3xl'>Upgrade To Pro</h2>
Expand Down
1 change: 0 additions & 1 deletion app/(routes)/dashboard/_components/WelcomeBanner.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,4 @@ function WelcomeBanner() {
</div>
)
}

export default WelcomeBanner
48 changes: 48 additions & 0 deletions app/(routes)/pricing/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
import { PricingTable } from "@clerk/nextjs";
import React from "react";
import Header from "@/app/_components/Header";

function Pricing() {
return (
<div className="relative min-h-screen overflow-hidden">

{/* Header */}
<div className="flex flex-col items-center">
<Header />
</div>

{/* Pricing Section */}
<div className="relative py-24 px-4">

{/* Gradient background glow */}
<div className="absolute inset-0 -z-10 bg-gradient-to-br from-purple-500/20 via-pink-500/20 to-blue-500/20 blur-3xl" />

<div className="mx-auto max-w-5xl">

{/* Title */}
<div className="text-center mb-14">
<h2 className="font-game text-5xl font-bold tracking-tight bg-gradient-to-r from-purple-400 to-pink-500 bg-clip-text text-transparent">
Simple Pricing
</h2>

<p className="mt-4 text-lg text-gray-300 max-w-2xl mx-auto">
Join for unlimited access to all features, premium tools, and future updates.
</p>
</div>

{/* Pricing Card */}
<div className="rounded-3xl border border-white/10 bg-white/5 backdrop-blur-xl p-6 shadow-2xl transition-all hover:shadow-purple-500/20">
<PricingTable />
</div>

{/* Footer Note */}
<p className="mt-8 text-center text-sm text-gray-400">
Cancel anytime · Secure payments · Instant access
</p>
</div>
</div>
</div>
);
}

export default Pricing;
24 changes: 24 additions & 0 deletions app/_components/Exploremoresection.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import React from 'react'
import CourseList from '../(routes)/courses/_components/CourseList'

function Exploremoresection() {
return (
<section className="relative bg-black pt-10 pb-24 px-6">

{/* Soft background glow */}
<div className="absolute inset-0 -z-10 bg-gradient-to-br from-purple-500/10 via-pink-500/10 to-blue-500/10 blur-3xl" />

<div className="max-w-7xl mx-auto">

{/* Section Heading */}
<h2 className="font-game mb-10 text-3xl md:text-4xl text-center text-white">
Explore Our <span className="text-yellow-400">Courses</span>
</h2>

<CourseList />
</div>
</section>
)
}

export default Exploremoresection
Loading