Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
parkpow
GitHub Repository: parkpow/deep-license-plate-recognition
Path: blob/master/gate-controller/app/page.tsx
1085 views
1
"use client";
2
3
import { ModeToggle } from "@/components/mode-toggle";
4
import RelayManager from "@/components/RelayManager";
5
import { Globe, Shield } from "lucide-react";
6
7
export default function Home() {
8
return (
9
<main className="h-screen flex flex-col items-center justify-center p-2 bg-gradient-to-br from-background via-background to-muted/20 overflow-hidden">
10
<div className="w-full max-w-5xl h-full max-h-[90vh] bg-card/95 backdrop-blur-sm shadow-2xl border border-border/50 flex flex-col overflow-hidden relative">
11
<header className="relative bg-gradient-to-r from-primary/10 via-primary/5 to-background px-8 py-3 border-b border-border/50 flex-shrink-0">
12
<div className="absolute top-2 right-4 z-20">
13
<ModeToggle />
14
</div>
15
16
<div className="flex items-center justify-start gap-4">
17
<div className="w-12 h-12 bg-primary/10 rounded-xl flex items-center justify-center ring-2 ring-primary/20">
18
<Shield className="w-7 h-7 text-primary" />
19
</div>
20
<div className="text-left">
21
<h1 className="text-2xl font-bold tracking-tight bg-gradient-to-r from-foreground to-foreground/70 bg-clip-text text-transparent">
22
GateController
23
</h1>
24
{/* <p className="text-muted-foreground text-xs font-medium">
25
Advanced Relay Control System
26
</p> */}
27
</div>
28
</div>
29
</header>
30
31
<section className="flex-grow min-h-0 p-6 overflow-y-auto">
32
<RelayManager />
33
</section>
34
35
<footer className="px-8 py-2 bg-muted/30 border-t border-border/50 flex-shrink-0">
36
<div className="flex items-center justify-between">
37
<p className="text-xs text-muted-foreground">
38
© 2025 Plate Recognizer, a subsidiary of ParkPow, Inc. All rights
39
reserved.
40
</p>
41
<a
42
href="https://platerecognizer.com"
43
target="_blank"
44
rel="noopener noreferrer"
45
className="inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-primary transition-colors duration-200 group"
46
>
47
<Globe className="w-4 h-4 group-hover:rotate-12 transition-transform duration-200" />
48
<span className="font-medium">Powered by Platerecognizer</span>
49
</a>
50
</div>
51
</footer>
52
</div>
53
54
<div className="fixed inset-0 -z-10 overflow-hidden pointer-events-none">
55
<div className="absolute top-1/4 -left-48 w-96 h-96 bg-primary/5 rounded-full blur-3xl" />
56
<div className="absolute bottom-1/4 -right-48 w-96 h-96 bg-primary/5 rounded-full blur-3xl" />
57
</div>
58
</main>
59
);
60
}
61
62