diff --git a/src/app/admin/page.tsx b/src/app/admin/page.tsx
new file mode 100644
index 0000000..cf604f0
--- /dev/null
+++ b/src/app/admin/page.tsx
@@ -0,0 +1,53 @@
+"use client";
+
+import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
+import ReactLenis from "lenis/react";
+import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
+import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
+import { Users, BarChart3, Settings, AlertCircle } from "lucide-react";
+
+export default function AdminDashboardPage() {
+ return (
+
+
+
+
+
+
+
+
+
+
+
+ );
+}
diff --git a/src/app/login/page.tsx b/src/app/login/page.tsx
new file mode 100644
index 0000000..3d1d994
--- /dev/null
+++ b/src/app/login/page.tsx
@@ -0,0 +1,63 @@
+"use client";
+
+import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
+import { useState } from "react";
+import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
+
+export default function LoginPage() {
+ const [email, setEmail] = useState("");
+ const [password, setPassword] = useState("");
+
+ const handleSubmit = (e: React.FormEvent) => {
+ e.preventDefault();
+ console.log("Login attempted:", { email, password });
+ };
+
+ return (
+
+
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/app/page.tsx b/src/app/page.tsx
index fc40700..97a3adf 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -31,22 +31,11 @@ export default function LandingPage() {
@@ -55,107 +44,52 @@ export default function LandingPage() {
@@ -166,19 +100,13 @@ export default function LandingPage() {
title="Our Mission for Bosaso"
metrics={[
{
- label: "Incidents Resolved",
- value: "1200+",
- icon: CheckCircle,
+ label: "Incidents Resolved", value: "1200+", icon: CheckCircle,
},
{
- label: "Active Reports",
- value: "45",
- icon: AlertCircle,
+ label: "Active Reports", value: "45", icon: AlertCircle,
},
{
- label: "Community Participation",
- value: "98%",
- icon: Users,
+ label: "Community Participation", value: "98%", icon: Users,
},
]}
metricsAnimation="slide-up"
@@ -192,38 +120,14 @@ export default function LandingPage() {
useInvertedBackground={false}
features={[
{
- id: "f1",
- title: "Secure Mobile Reporting",
- author: "Police Dept",
- description: "Instant crime reporting from any smartphone with real-time location tagging.",
- tags: [
- "Security",
- "Mobile",
- ],
- imageSrc: "http://img.b2bpic.net/free-photo/general-headquarters-monitoring-room-with-mockup-screen-tablet_482257-90086.jpg?_wi=2",
- },
+ id: "f1", title: "Secure Mobile Reporting", author: "Police Dept", description: "Instant crime reporting from any smartphone with real-time location tagging.", tags: ["Security", "Mobile"],
+ imageSrc: "http://img.b2bpic.net/free-photo/general-headquarters-monitoring-room-with-mockup-screen-tablet_482257-90086.jpg?_wi=2"},
{
- id: "f2",
- title: "Real-time Tracking",
- author: "Police Dept",
- description: "Dispatch teams can track reported incidents via live GPS data updates.",
- tags: [
- "Tracking",
- "GPS",
- ],
- imageSrc: "http://img.b2bpic.net/free-photo/platoon-captain-handling-surveillance-safety-operations-with-crew_482257-91019.jpg?_wi=2",
- },
+ id: "f2", title: "Real-time Tracking", author: "Police Dept", description: "Dispatch teams can track reported incidents via live GPS data updates.", tags: ["Tracking", "GPS"],
+ imageSrc: "http://img.b2bpic.net/free-photo/platoon-captain-handling-surveillance-safety-operations-with-crew_482257-91019.jpg?_wi=2"},
{
- id: "f3",
- title: "Community Engagement",
- author: "Police Dept",
- description: "Interactive platform connecting local authorities with citizens for proactive safety.",
- tags: [
- "Safety",
- "Community",
- ],
- imageSrc: "http://img.b2bpic.net/free-photo/taxi-driver-getting-ready-customer_23-2149273220.jpg?_wi=2",
- },
+ id: "f3", title: "Community Engagement", author: "Police Dept", description: "Interactive platform connecting local authorities with citizens for proactive safety.", tags: ["Safety", "Community"],
+ imageSrc: "http://img.b2bpic.net/free-photo/taxi-driver-getting-ready-customer_23-2149273220.jpg?_wi=2"},
]}
title="Core Capabilities"
description="State-of-the-art tools designed for rapid reporting and effective police response."
@@ -237,21 +141,9 @@ export default function LandingPage() {
gridVariant="bento-grid"
useInvertedBackground={false}
metrics={[
- {
- id: "m1",
- value: "15 min",
- description: "Avg Response Time",
- },
- {
- id: "m2",
- value: "24/7",
- description: "Operational Status",
- },
- {
- id: "m3",
- value: "95%",
- description: "Incident Completion",
- },
+ { id: "m1", value: "15 min", description: "Avg Response Time" },
+ { id: "m2", value: "24/7", description: "Operational Status" },
+ { id: "m3", value: "95%", description: "Incident Completion" },
]}
title="Data-Driven Safety"
description="Metrics that track our performance and demonstrate our commitment to transparency."
@@ -265,45 +157,20 @@ export default function LandingPage() {
useInvertedBackground={false}
testimonials={[
{
- id: "t1",
- name: "Sarah Johnson",
- handle: "@sarahj",
- testimonial: "Fast and helpful.",
- rating: 5,
- imageSrc: "http://img.b2bpic.net/free-photo/smiling-mechanic-standing-with-arms-crossed_1170-2381.jpg?_wi=2",
- },
+ id: "t1", name: "Sarah Johnson", handle: "@sarahj", testimonial: "Fast and helpful.", rating: 5,
+ imageSrc: "http://img.b2bpic.net/free-photo/smiling-mechanic-standing-with-arms-crossed_1170-2381.jpg?_wi=2"},
{
- id: "t2",
- name: "Michael Chen",
- handle: "@mchen",
- testimonial: "Excellent service.",
- rating: 5,
- imageSrc: "http://img.b2bpic.net/free-photo/nature-lover-working-greenhouse_23-2149037251.jpg",
- },
+ id: "t2", name: "Michael Chen", handle: "@mchen", testimonial: "Excellent service.", rating: 5,
+ imageSrc: "http://img.b2bpic.net/free-photo/nature-lover-working-greenhouse_23-2149037251.jpg"},
{
- id: "t3",
- name: "Emily Rodriguez",
- handle: "@erod",
- testimonial: "Professional reporting.",
- rating: 5,
- imageSrc: "http://img.b2bpic.net/free-photo/beautiful-woman-smiling_23-2148729653.jpg",
- },
+ id: "t3", name: "Emily Rodriguez", handle: "@erod", testimonial: "Professional reporting.", rating: 5,
+ imageSrc: "http://img.b2bpic.net/free-photo/beautiful-woman-smiling_23-2148729653.jpg"},
{
- id: "t4",
- name: "David Kim",
- handle: "@dkim",
- testimonial: "Very effective tool.",
- rating: 5,
- imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-woman-library_23-2148680199.jpg",
- },
+ id: "t4", name: "David Kim", handle: "@dkim", testimonial: "Very effective tool.", rating: 5,
+ imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-woman-library_23-2148680199.jpg"},
{
- id: "t5",
- name: "Alice Wong",
- handle: "@awong",
- testimonial: "Safety is improved.",
- rating: 5,
- imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-people-working-together_23-2149196105.jpg",
- },
+ id: "t5", name: "Alice Wong", handle: "@awong", testimonial: "Safety is improved.", rating: 5,
+ imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-people-working-together_23-2149196105.jpg"},
]}
showRating={true}
title="Community Voices"
@@ -316,21 +183,9 @@ export default function LandingPage() {
textboxLayout="split"
useInvertedBackground={false}
faqs={[
- {
- id: "q1",
- title: "Is my data anonymous?",
- content: "Yes, you can choose to remain anonymous when submitting reports.",
- },
- {
- id: "q2",
- title: "How do I track reports?",
- content: "Use your generated report ID on the tracking page.",
- },
- {
- id: "q3",
- title: "Is it available 24/7?",
- content: "Yes, the system is fully operational around the clock.",
- },
+ { id: "q1", title: "Is my data anonymous?", content: "Yes, you can choose to remain anonymous when submitting reports." },
+ { id: "q2", title: "How do I track reports?", content: "Use your generated report ID on the tracking page." },
+ { id: "q3", title: "Is it available 24/7?", content: "Yes, the system is fully operational around the clock." },
]}
title="Common Inquiries"
description="Answers to frequently asked questions about our system."
@@ -341,16 +196,9 @@ export default function LandingPage() {
@@ -358,33 +206,16 @@ export default function LandingPage() {
{
+ e.preventDefault();
+ console.log("Registration attempted:", { email, password, role });
+ };
+
+ return (
+
+
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/app/submit-report/page.tsx b/src/app/submit-report/page.tsx
new file mode 100644
index 0000000..0f4b2a1
--- /dev/null
+++ b/src/app/submit-report/page.tsx
@@ -0,0 +1,56 @@
+"use client";
+
+import { useState } from "react";
+import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
+import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
+import ContactCenter from '@/components/sections/contact/ContactCenter';
+
+export default function SubmitReportPage() {
+ const [status, setStatus] = useState("");
+
+ const handleSubmit = async (email: string) => {
+ // Simulation of backend save
+ console.log("Saving report with email:", email);
+ setStatus("Report submitted successfully!");
+ };
+
+ return (
+
+
+
+
+
+
+ );
+}
\ No newline at end of file