"Neon Streets. Digital Souls."
Cupid is a futuristic, collaborative campus dashboard designed to gamify and streamline the student experience at SRM AP. It combines real-time location tracking, social connectivity, event management, and immersive theming into a single, high-performance web application.
Experience the campus through four distinct personalities. The entire UI—colors, icons, fonts, patterns, and language—shifts instantly.
- Cyberpunk: High-contrast neon, tech icons, and digital grid patterns.
- Solar Flare: Warm, soft, light mode with organic shapes.
- Vaporwave: Retro-futuristic, 95-style aesthetics with glitch effects.
- Obsidian Gold: Ultra-luxury, matte black, and gold pinstripes.
- Real-time Visualization: See live occupancy of hotspots (Library, Admin Block, Sports Complex).
- Interactive Bento Map: A stylized, block-based map for quick navigation.
- Full Tactical View: A detailed blueprint mode with heatmap overlays and empty classroom finders.
- Live Squad Status: See where your friends are hanging out in real-time.
- Check-in System: "Teleport" to locations to let others know you're there.
- Global Chat: Connect with the entire campus or discuss specific topics in channels.
- Discover major and minor events happening across campus.
- Real-time "Live Feed" of campus activities.
- Frontend: React 18, Vite
- Styling: TailwindCSS, CSS Variables (Theming)
- Animation: Framer Motion (Complex layout transitions, micro-interactions)
- Icons: Lucide React (Dynamic icon switching)
- Backend / Database: Supabase (Auth, Realtime, PostgreSQL)
- Node.js (v18+)
- npm or yarn
-
Clone the repository:
git clone https://github.com/YUVRAJ-SINGH-3178/Cupid-.git cd Cupid- -
Install dependencies:
npm install
-
Environment Setup: Create a
.envfile in the root directory and add your Supabase credentials:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
(See
SUPABASE_SETUP.mdfor database schema instructions) -
Run the development server:
npm run dev
Cupid/
├── src/
│ ├── components/ # UI Components (Dashboard, Map, Auth, etc.)
│ ├── utils/
│ │ ├── database.js # Supabase API Wrapper
│ │ └── constants.js # Static Data & Config
│ ├── App.jsx # Main Application Logic & Routing
│ ├── ThemeContext.jsx # Theming Engine State
│ └── index.css # Global Styles & Theme Variables
├── public/ # Static Assets
├── SUPABASE_SETUP.md # Backend Schema Documentation
├── ARCHITECTURE.md # Detailed System Design
└── README.md # You are here
We welcome contributions! Please fork the repository and submit a Pull Request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Cupid is designed around three principles:
- Signal Over Noise: Keep the most important campus signals visible at a glance.
- Social, Not Spammy: Encourage connection without overwhelming the user.
- Playful Utility: Blend delightful interactions with practical campus workflows.
Follow these exact steps to run Cupid locally for judging:
Ensure you have Node.js 18+ (v20+ recommended) and npm installed.
# 1. Clone the nexus
git clone https://github.com/YUVRAJ-SINGH-3178/Cupid-.git
cd Cupid-
# 2. Install dependencies
npm install
# 3. Environment Config
# Create a .env file in the root and add:
VITE_SUPABASE_URL=your_project_url
VITE_SUPABASE_ANON_KEY=your_anon_key
# 4. Launch Development Server
npm run devTo verify the final bundle and performance:
npm run build
npm run previewCupid is built to be resilient and secure.
- ✅ Postgres RLS: Every user's data is isolated and protected.
- ✅ Edge Runtime: Optimized for global, low-latency performance.
- ✅ Vibration API: Subtle haptic feedback for mobile-ready chats.
Our team combined expertise in design, engineering, and data to craft the ultimate campus experience.
| Member | Role | GitHub |
|---|---|---|
| Yuvraj Singh | Team Leader & Full-Stack Developer | @YUVRAJ-SINGH-3178 |
| Aayush Bansal | UI/UX Designer | @Aayush-Bansal07 |
| Akshat | Database Architect | @Akshatgitty |
| Adarsh | Backend | @Adarsh-Pandey28 |
