diff --git a/public/clubs/center_ai.png b/public/clubs/center_ai.png new file mode 100644 index 0000000..32fa1d3 Binary files /dev/null and b/public/clubs/center_ai.png differ diff --git a/public/clubs/center_apple_tech.png b/public/clubs/center_apple_tech.png new file mode 100644 index 0000000..42e12a7 Binary files /dev/null and b/public/clubs/center_apple_tech.png differ diff --git a/public/clubs/center_ar_vr.png b/public/clubs/center_ar_vr.png new file mode 100644 index 0000000..e5bb663 Binary files /dev/null and b/public/clubs/center_ar_vr.png differ diff --git a/public/clubs/center_cloud_computing.png b/public/clubs/center_cloud_computing.png new file mode 100644 index 0000000..70d65f9 Binary files /dev/null and b/public/clubs/center_cloud_computing.png differ diff --git a/public/clubs/center_cybersecurity.png b/public/clubs/center_cybersecurity.png new file mode 100644 index 0000000..44f6071 Binary files /dev/null and b/public/clubs/center_cybersecurity.png differ diff --git a/public/clubs/center_data_science.png b/public/clubs/center_data_science.png new file mode 100644 index 0000000..035cc79 Binary files /dev/null and b/public/clubs/center_data_science.png differ diff --git a/public/clubs/center_ev_energy.png b/public/clubs/center_ev_energy.png new file mode 100644 index 0000000..15e3257 Binary files /dev/null and b/public/clubs/center_ev_energy.png differ diff --git a/public/clubs/center_image_processing.png b/public/clubs/center_image_processing.png new file mode 100644 index 0000000..498345f Binary files /dev/null and b/public/clubs/center_image_processing.png differ diff --git a/public/clubs/center_iot.png b/public/clubs/center_iot.png new file mode 100644 index 0000000..5ebde06 Binary files /dev/null and b/public/clubs/center_iot.png differ diff --git a/public/clubs/center_radar_healthcare.png b/public/clubs/center_radar_healthcare.png new file mode 100644 index 0000000..060a388 Binary files /dev/null and b/public/clubs/center_radar_healthcare.png differ diff --git a/public/clubs/center_semiconductor.png b/public/clubs/center_semiconductor.png new file mode 100644 index 0000000..a1b02af Binary files /dev/null and b/public/clubs/center_semiconductor.png differ diff --git a/public/clubs/center_smart_manufacturing.png b/public/clubs/center_smart_manufacturing.png new file mode 100644 index 0000000..d62e3df Binary files /dev/null and b/public/clubs/center_smart_manufacturing.png differ diff --git a/public/clubs/center_space.png b/public/clubs/center_space.png new file mode 100644 index 0000000..d923eef Binary files /dev/null and b/public/clubs/center_space.png differ diff --git a/public/clubs/center_zf_transportation.png b/public/clubs/center_zf_transportation.png new file mode 100644 index 0000000..defdfac Binary files /dev/null and b/public/clubs/center_zf_transportation.png differ diff --git a/public/clubs/grover_center_quantum.png b/public/clubs/grover_center_quantum.png new file mode 100644 index 0000000..fa5a0f8 Binary files /dev/null and b/public/clubs/grover_center_quantum.png differ diff --git a/src/components/Footer/Footer.tsx b/src/components/Footer/Footer.tsx index 0919750..745b9a0 100644 --- a/src/components/Footer/Footer.tsx +++ b/src/components/Footer/Footer.tsx @@ -16,7 +16,7 @@ const exploreLinks = [ const campusLinks = [ { label: 'Campus Map', path: '/campus', icon: Map }, { label: 'Bus Routes', path: '/bus-routes', icon: Bus }, - { label: 'Student Clubs', path: '/events', icon: Users }, + { label: 'Clubs & Centers', path: '/events', icon: Users }, { label: 'Freshers Q&A', path: '/community', icon: MessageCircle }, { label: 'Dev Collab Hub', path: '/collab', icon: Code2 }, ]; diff --git a/src/constants/index.ts b/src/constants/index.ts index aac7e56..bb2835f 100644 --- a/src/constants/index.ts +++ b/src/constants/index.ts @@ -9,7 +9,7 @@ export const NAV_LINKS = [ { label: 'Campus Map', path: '/campus' }, { label: 'Bus Routes', path: '/bus-routes' }, { label: 'Faculty Directory', path: '/faculty' }, - { label: 'Clubs', path: '/events' }, + { label: 'Clubs & Centers', path: '/events' }, { label: 'Community', path: '/community' }, { label: 'Dev Collab', path: '/collab' }, { label: 'LeetCode', path: '/leetcode' }, @@ -19,7 +19,7 @@ export const NAV_LINKS = [ export const STATS: Stat[] = [ { value: 20, suffix: '+', label: 'Sports', icon: 'Trophy' }, { value: 100, suffix: '+', label: 'Faculty', icon: 'Users' }, - { value: 18, suffix: '', label: 'Clubs', icon: 'Star' }, + { value: 33, suffix: '+', label: 'Clubs & Centers', icon: 'Star' }, { value: 24, suffix: '/7', label: 'Chatbot', icon: 'Bot' }, { value: 5000, suffix: '+', label: 'Students', icon: 'GraduationCap' }, ]; @@ -83,8 +83,8 @@ export const FEATURES: Feature[] = [ { id: 'events', icon: 'Users', - title: 'Student Clubs', - description: 'Discover official RIT student clubs, technology domains, leadership, and contacts.', + title: 'Clubs & Centers', + description: 'Discover official RIT student clubs, centers of excellence, technology domains, leadership, and contacts.', path: '/events', color: '#EF4444', bgColor: '#FEF2F2', @@ -3354,7 +3354,7 @@ export const CLUBS_DATA: Club[] = [ vicePresidentName: 'Thirumalai (III VLSI)', coordinatorName: 'Ms. Fouzia Sulthana (AIDS)', year: 'III Year, ECE', - contactEmail: 'podx@ritchennai.edu.in', + contactEmail: '', contactPhone: '+91 9962840247', icon: 'Mic', logoUrl: '/clubs/podx.png', @@ -3439,6 +3439,277 @@ export const CLUBS_DATA: Club[] = [ instagram: 'https://www.instagram.com/helios.rit/', }, }, + { + id: 'center_data_science', + name: 'CENTER FOR DATA SCIENCE', + description: 'Extracting actionable insights from complex datasets using advanced statistical methods & ML algorithms.', + details: 'The Center for Data Science focuses on extracting actionable insights from complex datasets using advanced statistical methods and machine learning algorithms. It empowers students and researchers to drive innovation across various industries by transforming raw data into strategic decision-making tools.', + category: 'Center of Excellence', + type: 'Center', + members: 350, + presidentName: 'Data Analytics Research Team', + coordinatorName: 'Dr. Arthi. A (AIDS & AIML)', + contactEmail: 'arthi.a@ritchennai.edu.in', + contactPhone: '+91 44 2342 2890', + icon: 'Calculator', + logoUrl: '/clubs/center_data_science.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_smart_manufacturing', + name: 'CENTRE FOR SMART MANUFACTURING', + description: 'Integrating Industry 4.0 technologies like robotics and digital twins to optimize production.', + details: 'The Centre for Smart Manufacturing integrates Industry 4.0 technologies, such as robotics and digital twins, to optimize production processes and enhance operational efficiency. It serves as a hub for developing automated, sustainable, and highly responsive manufacturing systems for the future.', + category: 'Center of Excellence', + type: 'Center', + members: 280, + presidentName: 'Smart Manufacturing Team', + coordinatorName: 'Dr. Siva Shanmugam (Mech)', + contactEmail: 'sivashanmugam.n@ritchennai.edu.in', + contactPhone: '+91 44 2342 2891', + icon: 'Printer', + logoUrl: '/clubs/center_smart_manufacturing.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_ai', + name: 'CENTRE FOR AI', + description: 'Advancing research in neural networks, NLP, and cognitive computing to create intelligent systems.', + details: 'The Centre for AI is dedicated to advancing research in neural networks, natural language processing, and cognitive computing to create intelligent systems that mimic human decision-making. It fosters the development of ethical, scalable, and transformative artificial intelligence solutions to solve complex real-world challenges.', + category: 'Center of Excellence', + type: 'Center', + members: 450, + presidentName: 'AI Research Lead', + coordinatorName: 'Ms. M. Dhivya (AIDS & AIML)', + contactEmail: 'divya.mu@ritchennai.edu.in', + contactPhone: '+91 44 2342 2892', + icon: 'Bot', + logoUrl: '/clubs/center_ai.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + linkedin: 'https://www.linkedin.com/school/rajalakshmi-institute-of-technology/', + }, + }, + { + id: 'center_iot', + name: 'CENTRE FOR IOT', + description: 'Connecting the physical and digital worlds using sensor networks, smart devices & edge computing.', + details: 'The Centre for IoT connects the physical and digital worlds by developing interconnected sensor networks and smart devices that communicate seamlessly. It drives innovation in smart cities, home automation, and industrial monitoring through real-time data collection and edge computing.', + category: 'Center of Excellence', + type: 'Center', + members: 320, + presidentName: 'IoT Research Lead', + coordinatorName: 'Dr. Malini (ECE)', + contactEmail: 'malini.ec219@ritchennai.edu.in', + contactPhone: '+91 44 2342 2893', + icon: 'Wifi', + logoUrl: '/clubs/center_iot.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_apple_tech', + name: 'CENTER FOR APPLE TECHNOLOGIES', + description: 'Mastering the iOS ecosystem, Swift programming, and macOS application development.', + details: 'The Center for Apple serves as an innovation hub for mastering the iOS ecosystem, Swift programming, and macOS application development. It provides specialized training and resources to help developers create intuitive, high-performance software tailored for Apple\'s premium hardware and user base.', + category: 'Center of Excellence', + type: 'Center', + members: 380, + presidentName: 'iOS Lead Developer', + coordinatorName: 'Dr. Indumathi N (CSE)', + contactEmail: 'indumathi.n@ritchennai.edu.in', + contactPhone: '+91 44 2342 2894', + icon: 'Smartphone', + logoUrl: '/clubs/center_apple_tech.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_ar_vr', + name: 'CENTRE FOR AR/VR (METAVERSE TRAINING CENTER)', + description: 'Immersive augmented & virtual reality digital experiences for gaming, education & training.', + details: 'The Centre for AR/VR explores the frontiers of augmented and virtual reality to create immersive digital experiences for gaming, education, and professional training. It combines advanced 3D modeling, spatial computing, and haptic feedback technologies to bridge the gap between physical and virtual environments.', + category: 'Center of Excellence', + type: 'Center', + members: 310, + presidentName: 'Metaverse Tech Lead', + coordinatorName: 'Ms. Asha Deepika (CSBS)', + contactEmail: 'asha.cs281@ritchennai.edu.in', + contactPhone: '+91 44 2342 2895', + icon: 'Sparkles', + logoUrl: '/clubs/center_ar_vr.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_cybersecurity', + name: 'CENTRE FOR CYBERSECURITY', + description: 'Defending digital infrastructure against evolving cyber threats through cryptography & ethical hacking.', + details: 'The Centre for Cybersecurity is focused on defending digital infrastructure against evolving cyber threats through cutting-edge research in cryptography, network defense, and ethical hacking. It prepares the next generation of security professionals to protect sensitive data and ensure the resilience of critical information systems.', + category: 'Center of Excellence', + type: 'Center', + members: 400, + presidentName: 'Cybersecurity Research Lead', + coordinatorName: 'Ms. Tamilarasi (CSBS)', + contactEmail: 'tamilarasi.cs270@ritchennai.edu.in', + contactPhone: '+91 44 2342 2896', + icon: 'Atom', + logoUrl: '/clubs/center_cybersecurity.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_radar_healthcare', + name: 'CENTRE FOR RADAR (HEALTHCARE WITH AI)', + description: 'Leveraging AI to revolutionize medical diagnostics, patient care, and clinical record analysis.', + details: 'The Centre for RADAR leverages artificial intelligence to revolutionize medical diagnostics, patient care, and the analysis of complex health records for improved clinical outcomes. It focuses on developing predictive models and smart clinical tools that assist medical professionals in early disease detection and the creation of personalized treatment plans.', + category: 'Center of Excellence', + type: 'Center', + members: 290, + presidentName: 'Healthcare AI Research Lead', + coordinatorName: 'Dr. Praveena (ECE)', + contactEmail: 'praveena.s@ritchennai.edu.in', + contactPhone: '+91 44 2342 2897', + icon: 'Heart', + logoUrl: '/clubs/center_radar_healthcare.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_semiconductor', + name: 'CENTRE FOR SEMICONDUCTOR DESIGN', + description: 'Architecture, fabrication, and testing of advanced microchips and integrated circuits.', + details: 'The Centre for Semiconductor Design focuses on the architecture, fabrication, and testing of advanced microchips and integrated circuits powering modern electronics. It bridges the gap between theoretical physics and practical engineering to develop energy-efficient, high-performance silicon solutions for the global tech industry.', + category: 'Center of Excellence', + type: 'Center', + members: 340, + presidentName: 'Semiconductor Design Lead', + coordinatorName: 'Dr. Rajmohan (VLSI)', + contactEmail: 'rajmohan.m@ritchennai.edu.in', + contactPhone: '+91 44 2342 2898', + icon: 'Cpu', + logoUrl: '/clubs/center_semiconductor.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_zf_transportation', + name: 'CENTRE FOR ZF (ADVANCED ANALYTICS)', + description: 'Advanced analytics & predictive modeling to optimize transportation networks & supply chain logistics.', + details: 'The Centre for ZF applies advanced analytics and predictive modeling to optimize complex transportation networks and global supply chain logistics. It develops smart mobility solutions that reduce transit times, lower operational costs, and enhance fleet management efficiency for the automotive and logistics sectors.', + category: 'Center of Excellence', + type: 'Center', + members: 260, + presidentName: 'Mobility Analytics Team', + coordinatorName: 'Ms. Kowsalya Devi (AIDS & AIML)', + contactEmail: 'kowsalyadevi.cs242@ritchennai.edu.in', + contactPhone: '+91 44 2342 2899', + icon: 'Rocket', + logoUrl: '/clubs/center_zf_transportation.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_image_processing', + name: 'CENTRE FOR IMAGE PROCESSING', + description: 'Algorithms & computational techniques to analyze, enhance, and interpret complex visual data.', + details: 'The Centre for Image Processing specializes in developing advanced algorithms and computational techniques to analyze, enhance, and interpret complex visual data. It supports breakthroughs in medical imaging, remote sensing, and computer vision by transforming raw visual inputs into high-fidelity, actionable insights.', + category: 'Center of Excellence', + type: 'Center', + members: 275, + presidentName: 'Vision Systems Lead', + coordinatorName: 'Mr. Aravindh. S (CSE)', + contactEmail: 'aravindh.s@ritchennai.edu.in', + contactPhone: '+91 44 2342 2900', + icon: 'Camera', + logoUrl: '/clubs/center_image_processing.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_ev_energy', + name: 'CENTER FOR EV & ENERGY', + description: 'Researching advanced battery technologies, electric powertrains, and renewable energy integration.', + details: 'The Center for EV & Energy drives sustainable innovation by researching advanced battery technologies, electric powertrains, and renewable energy integration. It aims to accelerate the global transition to zero-emission transportation while developing smarter, more resilient power grids for the future.', + category: 'Center of Excellence', + type: 'Center', + members: 330, + presidentName: 'EV Research Lead', + coordinatorName: 'Ms. Priyadarshini (Mech)', + contactEmail: 'priyadharasini.s@ritchennai.edu.in', + contactPhone: '+91 44 2342 2901', + icon: 'Zap', + logoUrl: '/clubs/center_ev_energy.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_cloud_computing', + name: 'CENTER FOR CLOUD COMPUTING', + description: 'Distributed computing, virtualization, and scalable cloud-native architectures.', + details: 'The Center for Cloud Computing provides comprehensive research and training in distributed computing, virtualization, and scalable cloud architectures. It equips professionals with the skills to design secure, cost-effective, and highly available cloud-native applications for modern enterprise environments.', + category: 'Center of Excellence', + type: 'Center', + members: 360, + presidentName: 'Cloud Solutions Lead', + coordinatorName: 'Mr. Suresh (AIDS & AIML)', + contactEmail: 'suresh.j@ritchennai.edu.in', + contactPhone: '+91 44 2342 2902', + icon: 'Globe', + logoUrl: '/clubs/center_cloud_computing.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'center_space', + name: 'CENTER FOR SPACE', + description: 'Aerospace engineering, satellite communication, space robotics, and orbital mechanics.', + details: 'The Center for Space focuses on aerospace engineering, satellite communication, and space exploration technologies to push the boundaries of human discovery. It fosters interdisciplinary research in orbital mechanics, space robotics, and Earth observation to support both commercial spaceflight and scientific missions.', + category: 'Center of Excellence', + type: 'Center', + members: 220, + presidentName: 'Space Tech Lead', + coordinatorName: 'Dr. Chandra. L (CCE)', + contactEmail: 'chandra.i@ritchennai.edu.in', + contactPhone: '+91 44 2342 2903', + icon: 'Rocket', + logoUrl: '/clubs/center_space.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, + { + id: 'grover_center_quantum', + name: 'GROVER CENTER (QUANTUM COMPUTING)', + description: 'Education & research in quantum algorithms, quantum hardware, cryptography, and quantum simulation.', + details: 'The Grover Center (Quantum Computing) advances education and research in quantum algorithms, quantum hardware, and quantum software for solving complex computational problems. It focuses on applications such as quantum search, cryptography, optimization, and simulation to prepare learners and researchers for the future of computing.', + category: 'Center of Excellence', + type: 'Center', + members: 210, + presidentName: 'Quantum Computing Lead', + coordinatorName: 'Dr. Mariselvam, Dr. Veeralingam & Dr. M. D. Nizar (ECE)', + contactEmail: 'vieeralingaam.g@ritchennai.edu.in, mohamednizar.s@ritchennai.edu.in', + contactPhone: '+91 44 2342 2904', + icon: 'Atom', + logoUrl: '/clubs/grover_center_quantum.png', + socialLinks: { + website: 'https://www.ritchennai.edu.in/', + }, + }, ]; // ─── Community Q&A ─────────────────────────────────────────────────────────── diff --git a/src/pages/Events/Events.tsx b/src/pages/Events/Events.tsx index e6fabe4..c8aab1f 100644 --- a/src/pages/Events/Events.tsx +++ b/src/pages/Events/Events.tsx @@ -1,10 +1,11 @@ -import { useState } from 'react'; +import { useState, useMemo } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import { Users, Tag, X, Mail, Phone, UserCheck, GraduationCap, Info, Atom, Wifi, Printer, Zap, Languages, Calculator, HeartHandshake, Rocket, Camera, Sparkles, Mic, Target, ArrowRight, RotateCcw, - MessageCircle, ExternalLink, CheckCircle2, Compass, Globe, BookOpen, Heart + MessageCircle, ExternalLink, CheckCircle2, Compass, Globe, BookOpen, Heart, + Building2, Search, Cpu, Smartphone, Bot, SlidersHorizontal, Layers, Activity, Brain } from 'lucide-react'; import SectionTitle from '@/components/SectionTitle/SectionTitle'; import { StaggerContainer, StaggerItem } from '@/components/AnimatedContainer/AnimatedContainer'; @@ -17,6 +18,7 @@ const CLUB_CATEGORY_COLORS: Record = { Cultural: '#EC4899', Social: '#10B981', Creative: '#F59E0B', + 'Center of Excellence': '#8B5CF6', }; const CLUB_ICON_MAP: Record> = { @@ -34,9 +36,14 @@ const CLUB_ICON_MAP: Record> BookOpen, Globe, Users, + Cpu, + Smartphone, + Bot, + Brain, + Activity, }; -// ─── Inline Brand SVG Icons for Feature 5 ────────────────────────────────────── +// ─── Inline Brand SVG Icons ────────────────────────────────────────────────────── const InstagramIcon = ({ className = 'w-4 h-4' }: { className?: string }) => ( @@ -60,62 +67,79 @@ const YoutubeIcon = ({ className = 'w-4 h-4' }: { className?: string }) => ( ); -// ─── Quiz Questions Data for Feature 1 (3-Question Matcher) ───────────────────── -const QUIZ_QUESTIONS = [ +// ─── Quiz Questions Data (Supporting Clubs, Centers, and Hybrid Matching) ─────── +const QUIZ_QUESTIONS_ALL = [ { - id: 'interest', - title: '1. What topics or domains are you most interested in?', + id: 'domain', + title: '1. What technology or activity domain excites you the most?', options: [ - { label: '⚙️ AI Quests, Chip Design, RobochipX & STEM', clubIds: ['steam', 'wistem', 'techspark'] }, - { label: '🎙️ Radio, Podcasting, Storytelling & RJing', clubIds: ['podx', 'mediastic'] }, - { label: '🤝 Community Service, Village Development & NSS Drives', clubIds: ['nss', 'unnat_bharat', 'rotaract'] }, - { label: '🩸 Blood Donation, Health Camps & Humanitarian Relief', clubIds: ['yrc', 'nss', 'rotaract'] }, - { label: '🎭 Dance, Music, Band & Cultural Arts', clubIds: ['artist_league', 'podx'] }, - { label: '🧮 Fast Calculation, PiDoku, Logic & Mathematics', clubIds: ['infinitus', 'steam'] }, - { label: '✍️ Tamil Literature, Debates & Cultural Heritage', clubIds: ['vaarithi', 'fusion'] }, - { label: '🏛️ Telugu Culture, Festival Celebrations & Heritage', clubIds: ['telugu', 'fusion'] }, - { label: '🌸 Japanese Culture, Anime, Manga & Foreign Languages', clubIds: ['nippon', 'fusion'] }, - { label: '📷 Photo/Video Production & Social Media Content', clubIds: ['mediastic', 'helios', 'podx'] }, - { label: '✨ Women Empowerment, Leadership & Career Vision', clubIds: ['wec', 'wistem'] }, - { label: '🚀 Youth Leadership, Yi Networking & National Summits', clubIds: ['yuva', 'rotaract'] }, + { label: '🤖 AI, Machine Learning, Neural Networks & Data Science', clubIds: ['center_ai', 'center_data_science', 'wistem'] }, + { label: '⚡ Semiconductor VLSI, Microchip Architecture & Hardware', clubIds: ['center_semiconductor', 'steam'] }, + { label: '📱 Apple iOS, SwiftUI & Mobile Ecosystem', clubIds: ['center_apple_tech', 'techspark'] }, + { label: '🕶️ AR/VR, Metaverse, Spatial Computing & 3D Interactive Media', clubIds: ['center_ar_vr', 'mediastic'] }, + { label: '🔒 Cybersecurity, Ethical Hacking & Cryptography', clubIds: ['center_cybersecurity', 'techspark'] }, + { label: '🏥 Healthcare AI, RADAR Medical Diagnostics & Patient Care', clubIds: ['center_radar_healthcare', 'yrc'] }, + { label: '📡 IoT, Smart Automation & Embedded Sensors', clubIds: ['center_iot', 'steam'] }, + { label: '🚗 Electric Vehicles, Battery Systems & Autonomous Tech', clubIds: ['center_ev_energy', 'center_zf_transportation'] }, + { label: '☁️ Cloud Architecture, DevOps & Distributed Systems', clubIds: ['center_cloud_computing', 'techspark'] }, + { label: '🚀 Aerospace, Satellite Tech & Space Robotics', clubIds: ['center_space', 'steam'] }, + { label: '⚛️ Quantum Computing, Quantum Search & Grover Algorithms', clubIds: ['grover_center_quantum', 'infinitus'] }, + { label: '🎙️ Radio, Podcasting, Live Media & Content Creation', clubIds: ['podx', 'mediastic', 'helios'] }, + { label: '🤝 Community Service, Village Adoption & NSS Drives', clubIds: ['nss', 'unnat_bharat', 'rotaract'] }, + { label: '🎭 Cultural Arts, Dance, Music, Band & Drama', clubIds: ['artist_league', 'vaarithi', 'fusion'] }, ], }, { - id: 'skills', - title: '2. What skills do you currently have or want to develop?', + id: 'skill', + title: '2. What practical skill do you want to master at RIT?', options: [ - { label: '💻 Web3, AI Tools, Circuit Design & Coding Hackathons', clubIds: ['wistem', 'steam', 'techspark'] }, - { label: '🎙️ Public Speaking, Interviewing & Voice Recording', clubIds: ['podx', 'mediastic'] }, - { label: '🤝 Social Work, Environmental Protection & Leadership', clubIds: ['nss', 'unnat_bharat', 'rotaract'] }, - { label: '🩸 Health Awareness, Blood Drive Logistics & Disaster Relief', clubIds: ['yrc', 'nss'] }, - { label: '🕺 Stage Performance, Singing, Dance & Rap', clubIds: ['artist_league'] }, - { label: '📐 Analytical Thinking, Logic Puzzles & Aptitude', clubIds: ['infinitus'] }, - { label: '📝 Essay Writing, Tamil/Telugu/English Oratory & Literature', clubIds: ['vaarithi', 'telugu', 'fusion'] }, - { label: '🎥 Camera Operations, Video Editing & Digital Media', clubIds: ['mediastic', 'helios'] }, - { label: '🌟 Women Leadership, Self Defense & Mentorship', clubIds: ['wec', 'wistem'] }, - { label: '👑 Youth Representation, Project Management & Event Planning', clubIds: ['yuva', 'rotaract'] }, + { label: '📊 Predictive Analytics, Python ML Pipelines & Data Modeling', clubIds: ['center_data_science', 'center_ai', 'center_zf_transportation'] }, + { label: '💻 Microchip IC Layout, Verilog/VHDL & FPGA Prototyping', clubIds: ['center_semiconductor', 'steam'] }, + { label: '🍎 Native iOS SwiftUI Coding & macOS Enterprise Apps', clubIds: ['center_apple_tech', 'techspark'] }, + { label: '🥽 Unity 3D, Spatial Audio & Metaverse Experience Design', clubIds: ['center_ar_vr', 'mediastic'] }, + { label: '🛡️ Network Security Audit, Cyber Threat Defense & Ethical Hacking', clubIds: ['center_cybersecurity'] }, + { label: '🩺 Medical Signal Processing & AI Diagnosis Tools', clubIds: ['center_radar_healthcare', 'center_image_processing'] }, + { label: '🔌 Smart Sensors, ESP32/Arduino, Edge Computing & CAN Bus', clubIds: ['center_iot', 'center_ev_energy'] }, + { label: '🎙️ Voice Recording, Public Speaking & Event Management', clubIds: ['podx', 'yuva', 'artist_league'] }, + { label: '🌱 Sustainable Rural Development & Eco-System Restoration', clubIds: ['unnat_bharat', 'nss', 'rotaract'] }, ], }, { id: 'goal', - title: '3. What is your main goal for joining a club at RIT?', + title: '3. What is your primary career aspiration during college?', options: [ - { label: '🤖 Build hackathon projects, chip designs & STEM innovations', clubIds: ['steam', 'wistem', 'techspark'] }, - { label: '🌟 Share inspiring stories & host campus podcasts', clubIds: ['podx', 'mediastic'] }, - { label: '👥 Drive social change & serve rural communities', clubIds: ['nss', 'unnat_bharat'] }, - { label: '🩸 Organize blood donation drives & health protection campaigns', clubIds: ['yrc', 'rotaract'] }, - { label: '🏆 Perform live at cultural fests & stage shows', clubIds: ['artist_league', 'vaarithi'] }, - { label: '📖 Master new languages & explore world/regional cultures', clubIds: ['nippon', 'telugu', 'vaarithi', 'fusion'] }, - { label: '💪 Empower women in STEM & corporate leadership', clubIds: ['wec', 'wistem'] }, - { label: '💼 Connect with Young Indians (Yi), CII & Industry Leaders', clubIds: ['yuva', 'rotaract'] }, + { label: '🔬 Lead innovative research in a specialized Future Tech Center (CoE)', clubIds: ['center_ai', 'center_semiconductor', 'grover_center_quantum', 'center_apple_tech', 'center_space'] }, + { label: '🏆 Win technical hackathons & build product prototypes', clubIds: ['steam', 'wistem', 'techspark', 'center_data_science'] }, + { label: '🌟 Build a strong personal brand, public speaking & media portfolio', clubIds: ['podx', 'mediastic', 'helios'] }, + { label: '🤝 Drive impactful social initiatives & community leadership', clubIds: ['nss', 'rotaract', 'yuva', 'wec'] }, + { label: '💼 Connect with industry leaders, CII, and top startup networks', clubIds: ['yuva', 'wec', 'center_cloud_computing'] }, ], }, ]; export default function Events() { const [selectedClub, setSelectedClub] = useState(null); + const [searchQuery, setSearchQuery] = useState(''); + const [selectedCategory, setSelectedCategory] = useState('All'); + const [selectedType, setSelectedType] = useState<'All' | 'Club' | 'Center'>('All'); - // ─── Interactive Like / Favorite System State ───────────────────────────── + // Compute counts dynamically + const { totalCount, centersCount, clubsCount } = useMemo(() => { + let centers = 0; + let clubs = 0; + CLUBS_DATA.forEach((item) => { + const isCenter = + item.type === 'Center' || + item.category === 'Center of Excellence' || + item.id.startsWith('center_') || + item.id.includes('grover_center'); + if (isCenter) centers++; + else clubs++; + }); + return { totalCount: CLUBS_DATA.length, centersCount: centers, clubsCount: clubs }; + }, []); + + // ─── Interactive Like System ───────────────────────────────────────────── const [likedClubs, setLikedClubs] = useState>(() => { try { localStorage.removeItem('rit_freshers_liked_clubs'); @@ -152,8 +176,9 @@ export default function Events() { } catch {} }; - // ─── Club Matcher Quiz State (Feature 1) ───────────────────────────────── + // ─── Quiz Matcher State ────────────────────────────────────────────────── const [isQuizOpen, setIsQuizOpen] = useState(false); + const [matcherTarget, setMatcherTarget] = useState<'All' | 'Club' | 'Center'>('All'); const [quizStep, setQuizStep] = useState(0); const [selectedAnswers, setSelectedAnswers] = useState([]); const [quizResults, setQuizResults] = useState<{ club: Club; score: number }[] | null>(null); @@ -163,7 +188,7 @@ export default function Events() { updated[quizStep] = optionIdx; setSelectedAnswers(updated); - if (quizStep < QUIZ_QUESTIONS.length - 1) { + if (quizStep < QUIZ_QUESTIONS_ALL.length - 1) { setQuizStep(quizStep + 1); } else { calculateQuizResults(updated); @@ -175,16 +200,31 @@ export default function Events() { CLUBS_DATA.forEach((c) => (scoreMap[c.id] = 0)); answers.forEach((ansIdx, qIdx) => { - const option = QUIZ_QUESTIONS[qIdx].options[ansIdx]; - option.clubIds.forEach((clubId, idx) => { - scoreMap[clubId] = (scoreMap[clubId] || 0) + (3 - idx); - }); + const option = QUIZ_QUESTIONS_ALL[qIdx].options[ansIdx]; + if (option && option.clubIds) { + option.clubIds.forEach((clubId, idx) => { + scoreMap[clubId] = (scoreMap[clubId] || 0) + (5 - idx); + }); + } }); - const ranked = CLUBS_DATA.map((club) => ({ - club, - score: scoreMap[club.id] || 0, - })).sort((a, b) => b.score - a.score); + const pool = CLUBS_DATA.filter((c) => { + const isCenter = + c.type === 'Center' || + c.category === 'Center of Excellence' || + c.id.startsWith('center_') || + c.id.includes('grover_center'); + if (matcherTarget === 'Club') return !isCenter; + if (matcherTarget === 'Center') return isCenter; + return true; + }); + + const ranked = pool + .map((club) => ({ + club, + score: scoreMap[club.id] || 0, + })) + .sort((a, b) => b.score - a.score); setQuizResults(ranked.slice(0, 3)); }; @@ -195,27 +235,85 @@ export default function Events() { setQuizResults(null); }; + // ─── Filter Selection Handlers ─────────────────────────────────────────── + const handleTypeSelect = (type: 'All' | 'Club' | 'Center') => { + setSelectedType(type); + setSelectedCategory('All'); + }; + + const handleCategorySelect = (cat: string) => { + setSelectedCategory(cat); + if (cat === 'Center of Excellence') { + setSelectedType('Center'); + } else if (cat !== 'All') { + setSelectedType('Club'); + } else { + setSelectedType('All'); + } + }; + + // ─── Robust Filter Logic ────────────────────────────────────────────────── + const filteredData = useMemo(() => { + return CLUBS_DATA.filter((item) => { + const isCenter = + item.type === 'Center' || + item.category === 'Center of Excellence' || + item.id.startsWith('center_') || + item.id.includes('grover_center'); + + // 1. Type Filter check + if (selectedType === 'Club' && isCenter) return false; + if (selectedType === 'Center' && !isCenter) return false; + + // 2. Category Filter check + if (selectedCategory !== 'All') { + if (selectedCategory === 'Center of Excellence' && !isCenter) return false; + if (selectedCategory !== 'Center of Excellence' && item.category !== selectedCategory) return false; + } + + // 3. Search Query check + const q = searchQuery.toLowerCase().trim(); + if (q) { + const matchesSearch = + item.name.toLowerCase().includes(q) || + item.description.toLowerCase().includes(q) || + (item.details && item.details.toLowerCase().includes(q)) || + (item.presidentName && item.presidentName.toLowerCase().includes(q)) || + (item.coordinatorName && item.coordinatorName.toLowerCase().includes(q)); + if (!matchesSearch) return false; + } + + return true; + }); + }, [searchQuery, selectedCategory, selectedType]); + + const categoriesList = ['All', 'Center of Excellence', 'Technical', 'Social', 'Creative']; + return (
{/* Header */}
-

- Student{' '} - - Clubs +
+ + RIT Official Directory +
+

+ Student Clubs &{' '} + + Centers of Excellence

-

- Explore official RIT student clubs & societies, leadership details, and community links. +

+ Explore official RIT student clubs, societies, and 15 Future Tech Centers of Excellence (CoEs), including faculty coordinators, research domains, and contact channels.

-
+
- {/* ─── Feature 1: "Find My Ideal Club" Banner ────────────────────────── */} - + {/* ─── Interactive Matcher Banner ─────────────────────────────────── */} +
- Interactive Club Matcher + AI-Powered Matcher Quiz
-

- Not sure which club to join? +

+ Find Your Ideal Club or Future Tech Center!

-

- Take our 3-step AI-powered Club Matcher quiz to get instant recommendations tailored to your interests, skills, and goals! +

+ Take our 3-step Matcher quiz to discover which of the 18 Student Clubs or 15 Future Tech Centers best match your skills, technology interests, and career goals!

- { resetQuiz(); setIsQuizOpen(true); }} - className="relative z-10 px-6 py-3.5 rounded-2xl text-white font-semibold text-sm flex items-center gap-2.5 shadow-lg shrink-0 cursor-pointer" - style={{ background: 'linear-gradient(135deg, #F97316, #FB923C)', fontFamily: 'Poppins, sans-serif' }} - > - - Find My Ideal Club - - +
+ { setMatcherTarget('Center'); resetQuiz(); setIsQuizOpen(true); }} + className="w-full sm:w-auto px-5 py-3 rounded-2xl bg-purple-600 hover:bg-purple-700 text-white font-semibold text-xs flex items-center justify-center gap-2 shadow-md cursor-pointer border border-purple-400/40" + style={{ fontFamily: 'Poppins, sans-serif' }} + > + + Match Centers (CoEs) + + { setMatcherTarget('All'); resetQuiz(); setIsQuizOpen(true); }} + className="w-full sm:w-auto px-5 py-3 rounded-2xl text-white font-semibold text-xs flex items-center justify-center gap-2 shadow-md cursor-pointer" + style={{ background: 'linear-gradient(135deg, #F97316, #FB923C)', fontFamily: 'Poppins, sans-serif' }} + > + + Match All Directory + + +
- {/* Clubs Directory Section */} - - - {(() => { - const fullGridCount = Math.floor(CLUBS_DATA.length / 3) * 3; - const mainGridClubs = CLUBS_DATA.slice(0, fullGridCount); - const remainingClubs = CLUBS_DATA.slice(fullGridCount); + {/* ─── Search & Category Filters Bar ───────────────────────────────── */} +
+ - const renderClubCard = (club: Club) => { - const IconComponent = (club.icon && CLUB_ICON_MAP[club.icon]) || Atom; - const categoryColor = CLUB_CATEGORY_COLORS[club.category] || '#F97316'; - const isLiked = likedClubs.has(club.id); - const likesCount = likesMap[club.id] || 0; - - return ( - setSelectedClub(club)} - className="bg-white rounded-2xl border border-[#E5E7EB] p-5 cursor-pointer hover:border-[#F97316] transition-all flex flex-col justify-between h-full group" - style={{ boxShadow: '0 2px 15px -3px rgba(0,0,0,0.07)' }} - > -
- {/* Top Row: Tech Icon / Club Logo & Interactive Heart Like Button */} -
- {club.logoUrl ? ( -
- {club.name} -
- ) : ( -
- -
- )} - - {/* Like Button */} -
- { - e.stopPropagation(); - toggleLike(club.id); - }} - className={`flex items-center gap-1 px-2.5 py-1 rounded-full text-xs font-semibold transition-all cursor-pointer border ${ - isLiked - ? 'bg-rose-50 border-rose-200 text-rose-600 shadow-2xs' - : 'bg-slate-50 border-slate-200 text-slate-500 hover:border-rose-300 hover:text-rose-500' - }`} - > - - {likesCount} - -
-
- - {/* Club Title & Description */} -

- {club.name} -

-

{club.description}

-
- - {/* Bottom Row: Category Tag & View Details Button */} -
- - - {club.category} - - - View Details - -
-
- ); - }; - - return ( - - {/* 3-Column Grid for Full Rows */} -
- {mainGridClubs.map((club) => ( - - {renderClubCard(club)} - - ))} -
- - {/* Centered Flex Row for Remaining Clubs (WiSTEM & STEAM) */} - {remainingClubs.length > 0 && ( -
- {remainingClubs.map((club) => ( - - {renderClubCard(club)} - - ))} -
+ {/* Search & Type Toggle Controls */} +
+ {/* Search Input */} +
+ + setSearchQuery(e.target.value)} + className="w-full pl-10 pr-4 py-2.5 rounded-xl border border-slate-200 text-xs font-medium text-slate-800 focus:outline-none focus:border-[#F97316] transition-colors" + style={{ fontFamily: 'Inter, sans-serif' }} + /> + {searchQuery && ( + )} - - ); - })()} +
+ + {/* Type Pills Toggle (All / Clubs / Centers) */} +
+ {[ + { label: `All (${totalCount})`, value: 'All' }, + { label: `Clubs (${clubsCount})`, value: 'Club' }, + { label: `Centers of Excellence (${centersCount})`, value: 'Center' }, + ].map((t) => ( + + ))} +
+
+ + {/* Category Filter Tabs */} +
+ + Filter: + + {categoriesList.map((cat) => ( + + ))} +
+
+ + {/* ─── Directory Grid ──────────────────────────────────────────────── */} + {filteredData.length === 0 ? ( +
+ +

No matching items found

+

Try adjusting your search terms or filter selections.

+ +
+ ) : ( + +
+ {filteredData.map((club) => { + const IconComponent = (club.icon && CLUB_ICON_MAP[club.icon]) || Atom; + const isCenter = + club.type === 'Center' || + club.category === 'Center of Excellence' || + club.id.startsWith('center_') || + club.id.includes('grover_center'); + const categoryColor = CLUB_CATEGORY_COLORS[club.category] || (isCenter ? '#8B5CF6' : '#F97316'); + const isLiked = likedClubs.has(club.id); + const likesCount = likesMap[club.id] || 0; + + return ( + + setSelectedClub(club)} + className="bg-white rounded-2xl border border-[#E5E7EB] p-5 cursor-pointer hover:border-[#F97316] transition-all flex flex-col justify-between h-full group relative overflow-hidden" + style={{ boxShadow: '0 2px 15px -3px rgba(0,0,0,0.07)' }} + > +
+ {/* Top Row: Icon/Logo + Badge + Heart Like Button */} +
+ {club.logoUrl ? ( +
+ {club.name} +
+ ) : ( +
+ +
+ )} + +
+ {/* Type Badge */} + {isCenter ? ( + + CENTER OF EXCELLENCE + + ) : ( + + CLUB + + )} + + {/* Like Button */} + { + e.stopPropagation(); + toggleLike(club.id); + }} + className={`flex items-center gap-1 px-2.5 py-1 rounded-full text-xs font-semibold transition-all cursor-pointer border ${ + isLiked + ? 'bg-rose-50 border-rose-200 text-rose-600 shadow-2xs' + : 'bg-slate-50 border-slate-200 text-slate-500 hover:border-rose-300 hover:text-rose-500' + }`} + > + + {likesCount} + +
+
+ + {/* Title & Description */} +

+ {club.name} +

+

+ {club.description} +

+
+ + {/* Bottom Row: Category/Coordinator Tag & View Details Button */} +
+ + {isCenter ? : } + {isCenter && club.coordinatorName ? club.coordinatorName : club.category} + + + View Details + +
+
+
+ ); + })} +
+
+ )}
- {/* ─── Club Matcher Quiz Modal (Feature 1) ─────────────────────────────── */} + {/* ─── Matcher Quiz Modal ────────────────────────────────────────────── */} {isQuizOpen && (
@@ -384,37 +571,43 @@ export default function Events() { {!quizResults ? (
+ {/* Quiz Target Selector Header */} +
+
+ + + {matcherTarget === 'Center' ? 'Future Tech Center Matcher' : matcherTarget === 'Club' ? 'Student Club Matcher' : 'Interactive Directory Matcher'} + +
+
+ {/* Quiz Progress */}
- Question {quizStep + 1} of {QUIZ_QUESTIONS.length} - Step {quizStep + 1} / {QUIZ_QUESTIONS.length} + Question {quizStep + 1} of {QUIZ_QUESTIONS_ALL.length} + Step {quizStep + 1} / {QUIZ_QUESTIONS_ALL.length}
{/* Question Header */} -
- - Club Matcher Quiz -

- {QUIZ_QUESTIONS[quizStep].title} + {QUIZ_QUESTIONS_ALL[quizStep].title}

{/* Options List */} -
- {QUIZ_QUESTIONS[quizStep].options.map((opt, idx) => ( +
+ {QUIZ_QUESTIONS_ALL[quizStep].options.map((opt, idx) => ( ))}
@@ -436,17 +629,22 @@ export default function Events() {

- Your Ideal Club Matches! + Your Recommended Matches!

-

Based on your interests & goals, here are your top recommended RIT clubs:

+

Based on your selections, here are your top recommended RIT entities:

{/* Top 3 Matches */}
{quizResults.map((item, i) => { const IconComponent = (item.club.icon && CLUB_ICON_MAP[item.club.icon]) || Atom; - const catColor = CLUB_CATEGORY_COLORS[item.club.category] || '#F97316'; - const matchPercent = i === 0 ? '98%' : i === 1 ? '91%' : '84%'; + const isCenter = + item.club.type === 'Center' || + item.club.category === 'Center of Excellence' || + item.club.id.startsWith('center_') || + item.club.id.includes('grover_center'); + const catColor = CLUB_CATEGORY_COLORS[item.club.category] || (isCenter ? '#8B5CF6' : '#F97316'); + const matchPercent = i === 0 ? '98%' : i === 1 ? '92%' : '85%'; return (
-
+
{item.club.logoUrl ? (
{item.club.name} @@ -465,21 +663,23 @@ export default function Events() { ) : (
)} -
+
- {item.club.name} - {i === 0 && Top Match 🏆} + {item.club.name} + {i === 0 && Top Match 🏆}
- {item.club.category} Club + + {isCenter ? (item.club.coordinatorName ? `CoE Lead: ${item.club.coordinatorName}` : 'Center of Excellence') : `${item.club.category} Club`} +
- - {matchPercent} Match + + {matchPercent}
); @@ -498,7 +698,7 @@ export default function Events() { onClick={() => setIsQuizOpen(false)} className="flex-1 py-3 rounded-xl text-white font-semibold text-xs bg-[#F97316] hover:bg-[#EA580C] transition-all cursor-pointer" > - Explore All Clubs + Explore Directory
@@ -508,7 +708,7 @@ export default function Events() { )} - {/* ─── Club Details Modal (Featuring Feature 5: Social Link Hub) ───────── */} + {/* ─── Detailed View Modal ───────────────────────────────────────────── */} {selectedClub && (
@@ -530,7 +730,12 @@ export default function Events() { {/* Modal Header */} {(() => { const IconComponent = (selectedClub.icon && CLUB_ICON_MAP[selectedClub.icon]) || Atom; - const categoryColor = CLUB_CATEGORY_COLORS[selectedClub.category] || '#F97316'; + const isCenter = + selectedClub.type === 'Center' || + selectedClub.category === 'Center of Excellence' || + selectedClub.id.startsWith('center_') || + selectedClub.id.includes('grover_center'); + const categoryColor = CLUB_CATEGORY_COLORS[selectedClub.category] || (isCenter ? '#8B5CF6' : '#F97316'); const isLiked = likedClubs.has(selectedClub.id); const likesCount = likesMap[selectedClub.id] || 0; @@ -544,25 +749,32 @@ export default function Events() { ) : (
)}
- - {selectedClub.category} - -

+
+ + {selectedClub.category} + + {isCenter && ( + + CENTER OF EXCELLENCE + + )} +
+

{selectedClub.name}

- {/* Interactive Like Button in Modal */} + {/* Interactive Like Button */} - {isLiked ? 'Liked' : 'Like Club'} ({likesCount}) + {isLiked ? 'Liked' : 'Like'} ({likesCount})
); })()} - {/* Club Detailed Description */} + {/* Detailed Description */}
- About the Club + About {selectedClub.type === 'Center' || selectedClub.category === 'Center of Excellence' ? 'the Center of Excellence' : 'the Club'}

{selectedClub.details || selectedClub.description}

- {/* Leadership & Contact Information - Icon Based Color Cards */} + {/* Leadership & Contact Cards */}
- {/* President Card - Indigo Theme */} -
-
- + {/* Faculty Coordinator Card */} + {selectedClub.coordinatorName && ( +
+
+ +
+
+ + {selectedClub.type === 'Center' || selectedClub.category === 'Center of Excellence' ? 'Faculty Co-ordinator' : 'Faculty Coordinator'} + + {selectedClub.coordinatorName} +
-
- President / Student Lead - {selectedClub.presidentName || 'Student President'} -
-
+ )} - {/* Vice President Card - Violet Theme */} + {/* President / Student Lead Card */} + {selectedClub.presidentName && ( +
+
+ +
+
+ + {selectedClub.type === 'Center' || selectedClub.category === 'Center of Excellence' ? 'Research / Student Lead' : 'President / Student Lead'} + + {selectedClub.presidentName} +
+
+ )} + + {/* Vice President Card */} {selectedClub.vicePresidentName && (
@@ -617,56 +848,40 @@ export default function Events() {
)} - {/* Coordinator Card - Amber Theme */} - {selectedClub.coordinatorName && ( -
-
- + {/* Contact Email */} + {selectedClub.contactEmail && ( +
+
+
-
- Faculty Coordinator - {selectedClub.coordinatorName} +
)} - -{selectedClub.contactEmail && ( -
-
- -
- -
-)} - - {/* Phone Card - Sky Theme */} -
-
- -
-
- Contact Phone - {selectedClub.contactPhone || '+91 98765 43210'} -
-
- {/* ─── Feature 5: Social & Community Link Hub (Dummy Links) ─────── */} -
-
-
- - Community & Social Links + {/* Social & Community Links */} + {Boolean( + selectedClub.socialLinks?.instagram || + selectedClub.socialLinks?.linkedin || + selectedClub.socialLinks?.whatsapp || + selectedClub.socialLinks?.youtube + ) && ( +
+
+
+ + Social & Community Links +
+ ✓ Verified RIT Entity
- ✓ Verified RIT Handle -
-
+
+ {selectedClub.socialLinks?.instagram && ( )} - {selectedClub.socialLinks?.website && ( - - - Linktree Hub - - )} - {selectedClub.socialLinks?.linkedin && (
+ )} {/* Close Button */}
diff --git a/src/pages/Home/Home.tsx b/src/pages/Home/Home.tsx index db5c17c..75d5888 100644 --- a/src/pages/Home/Home.tsx +++ b/src/pages/Home/Home.tsx @@ -121,7 +121,7 @@ export default function Home() { {[ { value: '20+', label: 'SPORTS', icon: Trophy }, { value: '100+', label: 'FACULTY', icon: GraduationCap }, - { value: '18', label: 'CLUBS', icon: Award }, + { value: '33+', label: 'CLUBS & CENTERS', icon: Award }, { value: '24/7', label: 'ASSISTANT', icon: Cpu }, { value: '5000+', label: 'STUDENTS', icon: Users }, ].map((stat, i) => ( diff --git a/src/types/index.ts b/src/types/index.ts index 508e6ea..04a610c 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -102,7 +102,7 @@ export interface Event { isUpcoming: boolean; } -// ─── Clubs ─────────────────────────────────────────────────────────────────── +// ─── Clubs & Centers ────────────────────────────────────────────────────────── export interface ClubSocialLinks { instagram?: string; linkedin?: string; @@ -118,6 +118,7 @@ export interface Club { description: string; details?: string; category: string; + type?: 'Club' | 'Center'; members: number; presidentName?: string; vicePresidentName?: string;