diff --git a/app/apply/org/page.tsx b/app/apply/org/page.tsx new file mode 100644 index 0000000..6bb0fd5 --- /dev/null +++ b/app/apply/org/page.tsx @@ -0,0 +1,20 @@ +import Link from "next/link"; +import PublicLayout from "@/components/layout/PublicLayout"; + +export default function OrgApplyPage() { + return ( + + + + Organization Application + + Coming soon. + + + Back to Apply + + + + ); +} + diff --git a/app/apply/page.tsx b/app/apply/page.tsx new file mode 100644 index 0000000..556108a --- /dev/null +++ b/app/apply/page.tsx @@ -0,0 +1,31 @@ +import Link from "next/link"; +import PublicLayout from "@/components/layout/PublicLayout"; + +export default function ApplyPage() { + return ( + + + Apply + + + Choose the application you want to start. + + + {/* links container */} + + + Startup Application + + + + Org Application + + + + Team Application + + + + + ); +} diff --git a/app/apply/startup/page.tsx b/app/apply/startup/page.tsx new file mode 100644 index 0000000..9d646fa --- /dev/null +++ b/app/apply/startup/page.tsx @@ -0,0 +1,110 @@ +"use client"; + +import { useState } from "react"; +import PublicLayout from "@/components/layout/PublicLayout"; + +type StartupFormState = { + name: string; + description: string; + fundingGoal: string; + contact: string; +}; + +export default function StartupApplyPage() { + const [form, setForm] = useState({ + name: "", + description: "", + fundingGoal: "", + contact: "", + }); + + function updateField(key: K, value: StartupFormState[K]) { + setForm((prev) => ({ ...prev, [key]: value })); + } + + function handleSubmit(e: React.FormEvent) { + e.preventDefault(); + console.log("Startup application form:", form); + } + + return ( + + + Startup Application + + UI only for now — submitting will log your inputs to the console. + + + + + + Startup Name + + updateField("name", e.target.value)} + className="w-full rounded-md border px-3 py-2" + placeholder="e.g., Startup Labs" + required + /> + + + + + Description + + updateField("description", e.target.value)} + className="w-full rounded-md border px-3 py-2" + placeholder="What does your startup do?" + rows={5} + required + /> + + + + + Funding Goal + + updateField("fundingGoal", e.target.value)} + className="w-full rounded-md border px-3 py-2" + placeholder="e.g., $50,000" + required + /> + + + + + Contact (email or phone) + + updateField("contact", e.target.value)} + className="w-full rounded-md border px-3 py-2" + placeholder="you@company.com" + required + /> + + + + Submit + + + + + ); +} + diff --git a/app/apply/team/page.tsx b/app/apply/team/page.tsx new file mode 100644 index 0000000..f0396cd --- /dev/null +++ b/app/apply/team/page.tsx @@ -0,0 +1,17 @@ +import Link from "next/link"; +import PublicLayout from "@/components/layout/PublicLayout"; + +export default function TeamApplyPage() { + return ( + + + Team Application + Coming soon. + + + Back to Apply + + + + ); +}
Coming soon.
+ Choose the application you want to start. +
+ UI only for now — submitting will log your inputs to the console. +