Spaces:
Running
Running
Commit ·
8929a5e
1
Parent(s): 5d2a237
UI Enhancements: Cleaned up AppPage by removing navbar and notice banner, added footer and floating home button
Browse files- frontend/src/pages/AppPage.jsx +32 -29
frontend/src/pages/AppPage.jsx
CHANGED
|
@@ -101,6 +101,7 @@ const STAGES = [
|
|
| 101 |
];
|
| 102 |
|
| 103 |
export default function AppPage() {
|
|
|
|
| 104 |
const [srcMode, setSrcMode] = useState('upload');
|
| 105 |
const [srcFile, setSrcFile] = useState(null);
|
| 106 |
const [srcB64, setSrcB64] = useState(null);
|
|
@@ -274,37 +275,18 @@ export default function AppPage() {
|
|
| 274 |
return (
|
| 275 |
<div className="min-h-screen bg-bg font-sans text-navy">
|
| 276 |
|
| 277 |
-
{/*
|
| 278 |
-
<
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
|
| 284 |
-
|
| 285 |
-
|
| 286 |
-
</div>
|
| 287 |
-
</Link>
|
| 288 |
-
<div className="flex items-center gap-2 sm:gap-3 min-w-0">
|
| 289 |
-
<button onClick={() => navigate('/')}
|
| 290 |
-
className="flex items-center gap-1.5 text-xs text-navy border border-border bg-white rounded-md px-2.5 sm:px-3 py-1.5 hover:bg-bg3 transition-colors whitespace-nowrap shrink-0 font-medium shadow-sm">
|
| 291 |
-
<svg className="w-3.5 h-3.5 shrink-0" fill="none" stroke="currentColor" strokeWidth={2} viewBox="0 0 24 24">
|
| 292 |
-
<path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>
|
| 293 |
-
<polyline points="9 22 9 12 15 12 15 22"/>
|
| 294 |
-
</svg>
|
| 295 |
-
Home
|
| 296 |
-
</button>
|
| 297 |
-
</div>
|
| 298 |
-
</div>
|
| 299 |
-
</header>
|
| 300 |
|
| 301 |
-
<main className="max-w-5xl mx-auto px-4 sm:px-6 py-
|
| 302 |
|
| 303 |
-
{/* NOTICE */}
|
| 304 |
-
<div className="flex items-start sm:items-center gap-2 bg-yellow-50 border border-yellow-200 rounded-lg px-3 sm:px-4 py-2.5 text-yellow-800 text-xs font-medium leading-relaxed">
|
| 305 |
-
<span className="shrink-0 mt-0.5 sm:mt-0 text-yellow-600">⚠</span>
|
| 306 |
-
<span>Use responsibly. Only process images you own or have explicit consent to use.</span>
|
| 307 |
-
</div>
|
| 308 |
|
| 309 |
{/* INPUT PANELS */}
|
| 310 |
<div className="grid grid-cols-1 md:grid-cols-[1fr_32px_1fr] items-start gap-4 md:gap-0">
|
|
@@ -527,6 +509,27 @@ export default function AppPage() {
|
|
| 527 |
</main>
|
| 528 |
|
| 529 |
<Toast msg={toast} onClose={() => setToast('')} />
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 530 |
</div>
|
| 531 |
);
|
| 532 |
}
|
|
|
|
| 101 |
];
|
| 102 |
|
| 103 |
export default function AppPage() {
|
| 104 |
+
const navigate = useNavigate();
|
| 105 |
const [srcMode, setSrcMode] = useState('upload');
|
| 106 |
const [srcFile, setSrcFile] = useState(null);
|
| 107 |
const [srcB64, setSrcB64] = useState(null);
|
|
|
|
| 275 |
return (
|
| 276 |
<div className="min-h-screen bg-bg font-sans text-navy">
|
| 277 |
|
| 278 |
+
{/* Floating Home Button (No Navbar) */}
|
| 279 |
+
<button onClick={() => navigate('/')}
|
| 280 |
+
className="absolute top-4 left-4 sm:top-6 sm:left-6 z-50 flex items-center gap-2 text-xs sm:text-sm text-navy border border-border/60 bg-white/90 backdrop-blur-md rounded-lg px-3 sm:px-4 py-1.5 sm:py-2 hover:border-teal/50 hover:bg-white transition-all duration-200 whitespace-nowrap font-bold shadow-sm hover:shadow">
|
| 281 |
+
<svg className="w-4 h-4 shrink-0 text-teal" fill="none" stroke="currentColor" strokeWidth={2.5} viewBox="0 0 24 24">
|
| 282 |
+
<path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>
|
| 283 |
+
<polyline points="9 22 9 12 15 12 15 22"/>
|
| 284 |
+
</svg>
|
| 285 |
+
Home
|
| 286 |
+
</button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 287 |
|
| 288 |
+
<main className="max-w-5xl mx-auto px-4 sm:px-6 py-12 sm:py-16 flex flex-col gap-5 sm:gap-7">
|
| 289 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 290 |
|
| 291 |
{/* INPUT PANELS */}
|
| 292 |
<div className="grid grid-cols-1 md:grid-cols-[1fr_32px_1fr] items-start gap-4 md:gap-0">
|
|
|
|
| 509 |
</main>
|
| 510 |
|
| 511 |
<Toast msg={toast} onClose={() => setToast('')} />
|
| 512 |
+
|
| 513 |
+
{/* Footer Strip */}
|
| 514 |
+
<footer className="mt-auto bg-bg3 border-t border-border py-2 px-4">
|
| 515 |
+
<div className="max-w-6xl mx-auto flex flex-col sm:flex-row items-center justify-between gap-3 text-xs sm:text-sm text-slate">
|
| 516 |
+
<div className="flex flex-col sm:flex-row items-center gap-2 sm:gap-4 text-center sm:text-left w-full sm:w-auto">
|
| 517 |
+
<img src="/logos/ict_logo_black.png" alt="ICT Department" className="h-6 sm:h-8 w-auto opacity-70" />
|
| 518 |
+
<div className="w-12 h-px sm:w-px sm:h-8 bg-border" />
|
| 519 |
+
<div className="flex flex-col leading-tight">
|
| 520 |
+
<strong className="text-navy">DeepFace Studio</strong>
|
| 521 |
+
<span>Dept. of ICT, Marwadi University</span>
|
| 522 |
+
</div>
|
| 523 |
+
</div>
|
| 524 |
+
<div className="flex items-center gap-2 sm:gap-3 flex-wrap justify-center font-medium">
|
| 525 |
+
<span>Educational use only</span>
|
| 526 |
+
<span className="text-border2">·</span>
|
| 527 |
+
<span>Local processing</span>
|
| 528 |
+
<span className="text-border2">·</span>
|
| 529 |
+
<span>© Aditya Raj 2026</span>
|
| 530 |
+
</div>
|
| 531 |
+
</div>
|
| 532 |
+
</footer>
|
| 533 |
</div>
|
| 534 |
);
|
| 535 |
}
|