Skip to content

CUK-COMMIT/cuk-commit

Repository files navigation

πŸ’– CUK Commit β€” From Campus to Forever

CUK Commit is a university-exclusive dating web app built for students of Central University of Karnataka (CUK). It focuses on real connections β€” relationships, friendships, and meaningful campus interactions β€” rather than mindless swiping.

🎯 Goal: help students connect inside campus in a safe, verified, and structured way.


✨ Key Features

πŸ” Authentication

  • Email + Password login/signup
  • Email verification
  • Forgot password / Reset password
  • Google Sign-In (OAuth) using Supabase

πŸ§‘β€πŸŽ“ Verified Campus Profiles

  • Student identity-based user accounts
  • Onboarding flow to complete profile
  • User profile completion checks before discovery access

🧾 Onboarding Flow

  • Profile Setup (name, gender, etc.)
  • Photo Upload (min 2 photos, max 6)
  • Interest selection
  • Bio setup

πŸ“Έ Photo Upload System

  • Slot-based upload (6 grid fixed)
  • Remove photo support
  • Upload progress indicator per tile
  • Powered by Supabase Storage

❀️ Matching / Discovery

  • Discover page for browsing matches
  • Profile-driven filtering readiness (future scope)

🧱 Tech Stack

Frontend

  • React + TypeScript
  • Vite (dev server & build)
  • Tailwind CSS for styling
  • Reusable UI components in src/components

Backend

  • Supabase
    • Supabase Auth
    • Supabase Database (profiles table, etc.)
    • Supabase Storage (user photos)

πŸ—‚οΈ Project Structure

This repo uses a conventional Vite + React structure. Relevant files/folders:

src/
β”œβ”€β”€ assets/
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ AboutSection.tsx
β”‚   β”œβ”€β”€ AppPreviewSection.tsx
β”‚   └── ui/  # reusable UI primitives
β”œβ”€β”€ hooks/
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ supabase.ts    # Supabase client + helpers
β”‚   └── utils.ts
β”œβ”€β”€ pages/
β”‚   β”œβ”€β”€ Index.tsx
β”‚   └── NotFound.tsx
β”œβ”€β”€ App.tsx
└── main.tsx

public/
index.html
package.json
vite.config.ts

πŸ”„ App Flow (Routing Logic)

  1. Splash / Landing β†’ Welcome

  2. Auth Gate

  • Not logged in: Welcome / Login / Signup
  • Logged in: If profile incomplete β†’ onboarding screens; else β†’ Discover

πŸ”— Deep Linking / Redirects

If you integrate mobile or external flows, configure redirect URLs in Supabase for OAuth and password reset callbacks. For web deployments, the app uses the single-page app routing provided by Vite/React.


πŸš€ Setup Instructions (Local)

Prerequisites: Node.js (16+ recommended) and npm or pnpm.

  1. Clone the repo
git clone https://github.com/CUK-COMMIT/cuk-commit.git
cd CUK_COMMIT
  1. Install dependencies
npm install
  1. Configure environment variables

Create a .env file (or use Vercel environment vars) with these keys:

VITE_SUPABASE_URL="your_supabase_url"
VITE_SUPABASE_ANON_KEY="your_supabase_anon_key"

Note: Vite exposes env vars prefixed with VITE_ to the client.

  1. Run the dev server
npm run dev
  1. Build for production
npm run build

πŸ”‘ Supabase Setup Checklist

Auth Providers

  • Enable Email Auth
  • Enable Google OAuth (if used)

Redirect URLs (example)

  • For web OAuth callbacks, add your deployed site URL (e.g. https://your-app.vercel.app) in Supabase settings.

Storage Bucket

  • Create a bucket such as user-photos and ensure rules allow authenticated uploads (or adjust security rules to your needs).

πŸ“Œ Security Notes

  • Do not commit any secrets. Use .env locally and platform env vars in production (Vercel, Netlify, etc.).
  • Supabase anon keys are safe to be client-visible but keep service_role keys secret and never expose them in the frontend.

πŸ›  Future Improvements (Planned)

  • Match algorithm improvements
  • Filters: department/year/interests
  • Chat system (with moderation/reporting)
  • Profile verification badge system
  • Admin dashboard for moderation

πŸ“„ License

This project is NOT open source.

All Rights Reserved.


πŸ‘₯ Team Members

Profile Name
Abhay Singh
Ayush Tandon
Abhay Dwivedi

About

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors