fix(ui): improve hero text contrast to crisp white with drop-shadows, remove false badges and non-working footer links
Some checks failed
Deploy RIT Freshers Hub to VPS / Deploy to Live VPS (push) Has been cancelled

This commit is contained in:
Shanmuga Krishnan S M
2026-08-04 13:54:38 +05:30
parent e8886203ed
commit c1fcc83840
2 changed files with 26 additions and 100 deletions

View File

@@ -1,25 +1,16 @@
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { GraduationCap, MapPin, Phone, Mail, Camera, Send, Globe, Play, ArrowRight } from 'lucide-react'; import { GraduationCap, MapPin, Phone, Mail, ArrowRight } from 'lucide-react';
const quickLinks = [ const quickLinks = [
{ label: 'Home', path: '/' }, { label: 'Home', path: '/' },
{ label: 'Notes & PYQs', path: '/notes' }, { label: 'Notes & PYQs', path: '/notes' },
{ label: 'Chatbot', path: '/ai-assistant' }, { label: 'RIT Chatbot', path: '/ai-assistant' },
{ label: 'Campus Map', path: '/campus' }, { label: '3D Campus Map', path: '/campus' },
{ label: 'Bus Routes', path: '/bus-routes' }, { label: 'Bus Routes', path: '/bus-routes' },
{ label: 'Faculty Directory', path: '/faculty' }, { label: 'Faculty Directory', path: '/faculty' },
{ label: 'Events', path: '/events' }, { label: 'Events', path: '/events' },
{ label: 'Community', path: '/community' }, { label: 'Community', path: '/community' },
{ label: 'Dev Collab', path: '/collab' }, { label: 'Dev Hub', path: '/collab' },
];
const resources = [
{ label: 'Student Handbook', path: '#' },
{ label: 'Academic Calendar', path: '#' },
{ label: 'ERP Portal', path: '#' },
{ label: 'Library Portal', path: '#' },
{ label: 'Exam Results', path: '#' },
{ label: 'Fee Payment', path: '#' },
]; ];
export default function Footer() { export default function Footer() {
@@ -49,7 +40,7 @@ export default function Footer() {
{/* Main Footer */} {/* Main Footer */}
<div className="container-custom py-14"> <div className="container-custom py-14">
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-10"> <div className="grid grid-cols-1 md:grid-cols-3 gap-10">
{/* Brand */} {/* Brand */}
<div> <div>
<div className="flex items-center gap-2.5 mb-4"> <div className="flex items-center gap-2.5 mb-4">
@@ -65,68 +56,34 @@ export default function Footer() {
</div> </div>
</div> </div>
<p className="text-slate-400 text-sm leading-relaxed mb-5" style={{ fontFamily: 'Inter, sans-serif' }}> <p className="text-slate-400 text-sm leading-relaxed mb-5" style={{ fontFamily: 'Inter, sans-serif' }}>
Your all-in-one guide to campus life at RIT. Notes, chatbot, events, faculty, and more made for freshers. Your all-in-one guide to campus life at RIT. Notes, chatbot, bus routes, 3D campus map, and developer hub built for students.
</p> </p>
<div className="flex items-center gap-3">
{[Camera, Send, Globe, Play].map((Icon, i) => (
<a
key={i}
href="#"
className="w-9 h-9 rounded-lg bg-slate-700 flex items-center justify-center text-slate-400 hover:bg-[#F97316] hover:text-white transition-all duration-200"
aria-label="Social link"
>
<Icon className="w-4 h-4" />
</a>
))}
</div>
</div> </div>
{/* Quick Links */} {/* Quick Links */}
<div> <div>
<h4 className="text-white font-semibold mb-4 text-sm uppercase tracking-wider" style={{ fontFamily: 'Poppins, sans-serif' }}> <h4 className="text-white font-semibold mb-4 text-sm uppercase tracking-wider" style={{ fontFamily: 'Poppins, sans-serif' }}>
Quick Links Quick Navigation
</h4> </h4>
<ul className="space-y-2.5"> <div className="grid grid-cols-2 gap-2">
{quickLinks.map((link) => ( {quickLinks.map((link) => (
<li key={link.path}> <Link
<Link key={link.path}
to={link.path} to={link.path}
className="text-slate-400 hover:text-[#F97316] text-sm transition-colors flex items-center gap-1.5 group" className="text-slate-400 hover:text-[#F97316] text-sm transition-colors flex items-center gap-1.5 group py-1"
style={{ fontFamily: 'Inter, sans-serif' }} style={{ fontFamily: 'Inter, sans-serif' }}
> >
<span className="w-1 h-1 rounded-full bg-[#F97316] opacity-0 group-hover:opacity-100 transition-opacity" /> <span className="w-1 h-1 rounded-full bg-[#F97316] opacity-0 group-hover:opacity-100 transition-opacity" />
{link.label} {link.label}
</Link> </Link>
</li>
))} ))}
</ul> </div>
</div>
{/* Resources */}
<div>
<h4 className="text-white font-semibold mb-4 text-sm uppercase tracking-wider" style={{ fontFamily: 'Poppins, sans-serif' }}>
Resources
</h4>
<ul className="space-y-2.5">
{resources.map((res) => (
<li key={res.label}>
<a
href={res.path}
className="text-slate-400 hover:text-[#F97316] text-sm transition-colors flex items-center gap-1.5 group"
style={{ fontFamily: 'Inter, sans-serif' }}
>
<span className="w-1 h-1 rounded-full bg-[#F97316] opacity-0 group-hover:opacity-100 transition-opacity" />
{res.label}
</a>
</li>
))}
</ul>
</div> </div>
{/* Contact */} {/* Contact */}
<div> <div>
<h4 className="text-white font-semibold mb-4 text-sm uppercase tracking-wider" style={{ fontFamily: 'Poppins, sans-serif' }}> <h4 className="text-white font-semibold mb-4 text-sm uppercase tracking-wider" style={{ fontFamily: 'Poppins, sans-serif' }}>
Contact Campus Location & Contact
</h4> </h4>
<ul className="space-y-3"> <ul className="space-y-3">
<li className="flex items-start gap-3 text-slate-400 text-sm" style={{ fontFamily: 'Inter, sans-serif' }}> <li className="flex items-start gap-3 text-slate-400 text-sm" style={{ fontFamily: 'Inter, sans-serif' }}>

View File

@@ -27,25 +27,13 @@ export default function Home() {
className="container-custom relative z-20 flex flex-col items-center text-center px-4" className="container-custom relative z-20 flex flex-col items-center text-center px-4"
style={{ opacity: heroOpacity, y: heroY }} style={{ opacity: heroOpacity, y: heroY }}
> >
{/* Badge */}
<motion.div
initial={{ opacity: 0, y: 15 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.5 }}
className="mb-4 inline-flex items-center gap-2 px-4 py-1.5 rounded-full bg-[#FFF7ED] border border-[#FED7AA] text-[#F97316] text-xs font-semibold shadow-2xs"
style={{ fontFamily: 'Poppins, sans-serif' }}
>
<Sparkles className="w-3.5 h-3.5" />
<span>OFFICIAL STUDENT PORTAL</span>
</motion.div>
{/* Heading */} {/* Heading */}
<motion.h1 <motion.h1
initial={{ opacity: 0, y: 15 }} initial={{ opacity: 0, y: 15 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.1 }} transition={{ duration: 0.6, delay: 0.1 }}
className="text-white text-3xl md:text-4xl font-light mb-1" className="text-white text-3xl md:text-5xl font-medium tracking-wide mb-2"
style={{ fontFamily: 'Playfair Display, serif', textShadow: '0 2px 10px rgba(0,0,0,0.5)' }} style={{ fontFamily: 'Playfair Display, serif', textShadow: '0 2px 12px rgba(0,0,0,0.9)' }}
> >
Welcome to Welcome to
</motion.h1> </motion.h1>
@@ -54,8 +42,8 @@ export default function Home() {
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7, delay: 0.2 }} transition={{ duration: 0.7, delay: 0.2 }}
className="text-5xl md:text-7xl font-black leading-tight mb-6 bg-gradient-to-r from-[#F97316] via-[#FB923C] to-[#F97316] bg-clip-text text-transparent" className="text-5xl md:text-7xl font-black leading-tight mb-6 text-white"
style={{ fontFamily: 'Playfair Display, serif', filter: 'drop-shadow(0 4px 12px rgba(249, 115, 22, 0.45))' }} style={{ fontFamily: 'Playfair Display, serif', textShadow: '0 4px 20px rgba(0,0,0,0.95), 0 0 30px rgba(249, 115, 22, 0.5)' }}
> >
RIT Freshers Hub RIT Freshers Hub
</motion.h2> </motion.h2>
@@ -64,7 +52,7 @@ export default function Home() {
initial={{ opacity: 0, y: 15 }} initial={{ opacity: 0, y: 15 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7, delay: 0.3 }} transition={{ duration: 0.7, delay: 0.3 }}
className="max-w-2xl text-slate-200 text-base md:text-lg leading-relaxed mb-8" className="max-w-2xl text-slate-100 text-base md:text-lg font-medium leading-relaxed mb-8 drop-shadow-md"
style={{ fontFamily: 'Inter, sans-serif' }} style={{ fontFamily: 'Inter, sans-serif' }}
> >
Your centralized gateway to campus life at Rajalakshmi Institute of Technology academic notes, AI assistant, bus routes, faculty directory, and campus navigation. Your centralized gateway to campus life at Rajalakshmi Institute of Technology academic notes, AI assistant, bus routes, faculty directory, and campus navigation.
@@ -75,7 +63,7 @@ export default function Home() {
initial={{ opacity: 0, y: 15 }} initial={{ opacity: 0, y: 15 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7, delay: 0.4 }} transition={{ duration: 0.7, delay: 0.4 }}
className="flex flex-wrap justify-center gap-4 mb-10" className="flex flex-wrap justify-center gap-4"
> >
<a href="#built-for-freshers"> <a href="#built-for-freshers">
<motion.button <motion.button
@@ -97,7 +85,7 @@ export default function Home() {
<motion.button <motion.button
whileHover={{ scale: 1.04, borderColor: '#F97316', backgroundColor: 'rgba(255,255,255,0.2)' }} whileHover={{ scale: 1.04, borderColor: '#F97316', backgroundColor: 'rgba(255,255,255,0.2)' }}
whileTap={{ scale: 0.96 }} whileTap={{ scale: 0.96 }}
className="flex items-center gap-2 px-8 py-3.5 rounded-xl font-semibold text-sm border-2 border-white/30 text-white bg-white/10 backdrop-blur-md transition-all cursor-pointer shadow-2xs" className="flex items-center gap-2 px-8 py-3.5 rounded-xl font-semibold text-sm border-2 border-white/40 text-white bg-black/30 backdrop-blur-md transition-all cursor-pointer shadow-2xs"
style={{ fontFamily: 'Poppins, sans-serif' }} style={{ fontFamily: 'Poppins, sans-serif' }}
> >
<Bot className="w-4 h-4 text-[#F97316]" /> <Bot className="w-4 h-4 text-[#F97316]" />
@@ -105,25 +93,6 @@ export default function Home() {
</motion.button> </motion.button>
</Link> </Link>
</motion.div> </motion.div>
{/* Trust Badges */}
<motion.div
initial={{ opacity: 0 }}
animate={{ opacity: 1 }}
transition={{ duration: 0.8, delay: 0.5 }}
className="flex flex-wrap justify-center gap-6 text-slate-300 border-t border-white/20 pt-6 max-w-lg w-full"
>
{[
{ icon: CheckCircle, text: 'Official Portal' },
{ icon: Zap, text: 'Instant AI Support' },
{ icon: Shield, text: 'Student Verified' },
].map((badge, i) => (
<div key={i} className="flex items-center gap-1.5 text-xs font-medium" style={{ fontFamily: 'Inter, sans-serif' }}>
<badge.icon className="w-4 h-4 text-[#F97316]" />
<span>{badge.text}</span>
</div>
))}
</motion.div>
</motion.div> </motion.div>
</section> </section>
</LazyVideoHero> </LazyVideoHero>