Archived — this repo preserves the source and project documentation. The site is no longer deployed and all data has been removed.
This repository contains all INFO-3112 group project code, documentation, and planning materials for LookingForLove. Our group will be developing an IT dating website over 8 weeks using Scrum.
| Name | Role |
|---|---|
| Mason L'Etoile | Developer |
| Joseph Jaikaran | Developer |
| Unish Pandey | Developer |
| Ahmed Elmardi O Ibrahim | Developer |
| Kyan Oberas | Developer |
Free Members
- Register and login via Supabase Auth
- Create and edit profile (skills, gender, contact information, partner preferences)
- Update email, password, signout, and delete account
Paid Members
- Access premium membership tier via subscription. Everything in free, plus:
- View match recommendations based on partner preferences
- Request and share contact info with matched users
- Rate the quality of matches when requesting contact information
Product Manager (DEMO)
- Dashboard with website statistics (Free and paid member counts, plus contact information exposure amount)
- Role-based dashboard for user oversight and management
| Week(s) | Deliverable | Weight |
|---|---|---|
| Week 6 | Project Kickoff | N/A |
| Week 7 | Project Planning | N/A |
| Week 8-9 | Sprint 1 - Sprint Plan | 5% |
| Week 8-9 | Sprint 1 - Retrospective | 5% |
| Week 10-11 | Sprint 2 - Sprint Plan | 5% |
| Week 10-11 | Sprint 2 - Retrospective | 5% |
| Week 12-13 | Sprint 3 - Sprint Plan | 5% |
| Week 12-13 | Sprint 3 - Retrospective | 5% |
| Week 14 | Final Product Demo | 35% |
├── .env.example # Environment Variables
├── CONTRIBUTING.md # Project Contribution Standards
├── README.md # Project README
├── LICENSE # Project MIT License
├── app/ # Next.js app router
├── components/ # Shared UI components
├── lib/ # Shared helpers
│ ├── context/ # React context provider
│ └── supabase/ # Shared supabase client/server helpers
│ └── migrations/ # Database Migrations
├── hooks/ # Reusable React hooks
└── tests/ # Unit testsThis repository uses Branch Protection Rules to ensure code quality. Direct pushes to main are disabled. Please see CONTRIBUTING.md for the Pull Request and Review workflow.
git clone https://github.com/masonlet/info-3112-project.git
cd info-3112-project
npm installCreate .env.local from .env.example and fill in ENV keys
In the Supabase SQL Editor, run the migrations in order:
lib/supabase/migrations/001-profiles.sqllib/supabase/migrations/002-contact-exposures.sqllib/supabase/migrations/003-match-feedback.sql
Each migration creates its table, enables row-level security, defines policies, and grants the necessary privileges. Re-running a migration against an existing database will fail; if you need to start fresh, drop all three tables first.
Ensure email auth: Authentication -> Providers -> Email.
npm run dev # http://localhost:3000
npm test # Vitest unit tests
npm run lint # ESLint check
npm run typecheck # TypeScript type check
npm run build # Production Next.js build
npm start # Serve production build at http://localhost:3000MIT License - see LICENSE for details.