diff --git a/src/app/components/FeatureChooser.tsx b/src/app/components/FeatureChooser.tsx index 8811483..9d1ebb3 100644 --- a/src/app/components/FeatureChooser.tsx +++ b/src/app/components/FeatureChooser.tsx @@ -1,69 +1,37 @@ -import { FileText, Image, Video, Link as LinkIcon, History, ArrowRight, Users } from "lucide-react"; +import { FileText, Image, Video, Link as LinkIcon, History, ArrowRight, Users, Sparkles } from "lucide-react"; import { motion } from "motion/react"; import { useNavigate } from "react-router"; const features = [ - { - title: "Text Analysis", - description: "Analyze articles and statements for misinformation patterns.", - path: "/dashboard/text-analysis", - icon: FileText, - accent: "from-cyan-500 to-blue-600", - }, - { - title: "Image Detection", - description: "Detect manipulated or synthetic image content.", - path: "/dashboard/image-detection", - icon: Image, - accent: "from-emerald-500 to-teal-600", - }, - { - title: "Video Detection", - description: "Run face-based deepfake checks on sampled video frames.", - path: "/dashboard/video-detection", - icon: Video, - accent: "from-orange-500 to-amber-600", - }, - { - title: "URL Checker", - description: "Evaluate source credibility and suspicious URL signals.", - path: "/dashboard/url-checker", - icon: LinkIcon, - accent: "from-violet-500 to-fuchsia-600", - }, - { - title: "History", - description: "Review previous analyses and confidence trends.", - path: "/dashboard/history", - icon: History, - accent: "from-rose-500 to-pink-600", - }, - { - title: "VeritasConnect", - description: "Share suspicious content so the community can react and comment.", - path: "/dashboard/veritas-connect", - icon: Users, - accent: "from-sky-500 to-cyan-600", - }, + { title: "Text Analysis", description: "Analyze articles and statements for misinformation patterns.", path: "/dashboard/text-analysis", icon: FileText, iconShell: "bg-sky-50 text-sky-600 ring-sky-100 dark:bg-sky-500/10 dark:text-sky-300 dark:ring-sky-500/20", hover: "hover:border-sky-200 hover:shadow-sky-100/80 dark:hover:border-sky-500/30 dark:hover:shadow-sky-950/30" }, + { title: "Image Detection", description: "Detect manipulated or synthetic image content.", path: "/dashboard/image-detection", icon: Image, iconShell: "bg-emerald-50 text-emerald-600 ring-emerald-100 dark:bg-emerald-500/10 dark:text-emerald-300 dark:ring-emerald-500/20", hover: "hover:border-emerald-200 hover:shadow-emerald-100/80 dark:hover:border-emerald-500/30 dark:hover:shadow-emerald-950/30" }, + { title: "Video Detection", description: "Run face-based deepfake checks on sampled video frames.", path: "/dashboard/video-detection", icon: Video, iconShell: "bg-amber-50 text-amber-600 ring-amber-100 dark:bg-amber-500/10 dark:text-amber-300 dark:ring-amber-500/20", hover: "hover:border-amber-200 hover:shadow-amber-100/80 dark:hover:border-amber-500/30 dark:hover:shadow-amber-950/30" }, + { title: "URL Checker", description: "Evaluate source credibility and suspicious URL signals.", path: "/dashboard/url-checker", icon: LinkIcon, iconShell: "bg-violet-50 text-violet-600 ring-violet-100 dark:bg-violet-500/10 dark:text-violet-300 dark:ring-violet-500/20", hover: "hover:border-violet-200 hover:shadow-violet-100/80 dark:hover:border-violet-500/30 dark:hover:shadow-violet-950/30" }, + { title: "History", description: "Review previous analyses and confidence trends.", path: "/dashboard/history", icon: History, iconShell: "bg-rose-50 text-rose-600 ring-rose-100 dark:bg-rose-500/10 dark:text-rose-300 dark:ring-rose-500/20", hover: "hover:border-rose-200 hover:shadow-rose-100/80 dark:hover:border-rose-500/30 dark:hover:shadow-rose-950/30" }, + { title: "VeritasConnect", description: "Share suspicious content so the community can react and comment.", path: "/dashboard/veritas-connect", icon: Users, iconShell: "bg-cyan-50 text-cyan-600 ring-cyan-100 dark:bg-cyan-500/10 dark:text-cyan-300 dark:ring-cyan-500/20", hover: "hover:border-cyan-200 hover:shadow-cyan-100/80 dark:hover:border-cyan-500/30 dark:hover:shadow-cyan-950/30" }, ]; export default function FeatureChooser() { const navigate = useNavigate(); return ( -
- -
-

Choose Analysis Type

-

- Select one module to start. You will be navigated directly to the selected analysis workspace. -

-
+
+
+
+
+
+
+
+ + +
+
+ + VERIFICATION WORKSPACE +
+

Choose your analysis.

+

Six focused tools for checking text, media, links, and the signals behind them.

+
{features.map((feature, index) => { @@ -73,22 +41,32 @@ export default function FeatureChooser() { key={feature.path} initial={{ opacity: 0, y: 18 }} animate={{ opacity: 1, y: 0 }} - transition={{ delay: index * 0.05, duration: 0.3 }} + transition={{ delay: index * 0.06, duration: 0.35, ease: "easeOut" }} onClick={() => navigate(feature.path)} - className="group rounded-2xl border border-gray-700/60 bg-gradient-to-br from-gray-900/70 to-gray-800/30 p-6 text-left shadow-xl transition-all hover:-translate-y-1 hover:border-cyan-500/40 hover:shadow-cyan-500/10" + className={`group relative min-h-52 overflow-hidden rounded-[1.35rem] border border-slate-200/90 bg-white/95 p-6 text-left shadow-[0_10px_35px_rgba(30,55,90,0.055)] backdrop-blur-xl transition-all duration-300 hover:-translate-y-1.5 hover:bg-white hover:shadow-[0_24px_55px_rgba(30,55,90,0.11)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sky-400/60 dark:border-slate-800/80 dark:bg-slate-900/70 dark:shadow-[0_18px_60px_rgba(0,0,0,0.22)] dark:hover:bg-slate-900/90 ${feature.hover}`} > -
-
- +
+
+ +
+
+
- + + + +
+ +
+

{feature.title}

+

{feature.description}

-

{feature.title}

-

{feature.description}

); })}
+ +

Select a workspace to begin a verification session.

);