Skip to content

Mikky-mlh/Unisync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

58 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

UniSync Logo

🀝 UniSync - The Student Ecosystem

One campus. Endless connections.

MIT License Python 3.8+ Streamlit Google Gemini Live Demo

A unified platform that bridges the gaps in campus life by connecting students for peer collaboration, skill exchange, and resource sharing

Features β€’ Quick Start β€’ Architecture β€’ License


🎯 Overview

UniSync is an AI-powered campus ecosystem that solves three major student disconnects: finding study buddies, skill exchange, and resource sharing. Built with Streamlit and powered by Google Gemini AI.

Note: IIT Delhi is used as a sample campus context for demonstration purposes. UniSync can be adapted for any university.


🎯 The Problem

Students face three major disconnects on campus:

  1. Finding study buddies - Hard to find peers with similar courses/interests
  2. Skill exchange - Wasted potential when students can't find teachers/learners
  3. Resource sharing - Scattered accommodation/furniture/textbook marketplaces

πŸ’‘ Our Solution

UniSync combines four powerful features:

  • πŸŽ“ Campus Tribe: Tinder-style peer matching with advanced filters
  • πŸ”„ Skill Swap: Student-led teaching marketplace
  • 🏒 Dorm Deals: Campus marketplace for resources
  • πŸ€– AI Assistant: Gemini-powered smart recommendations

1. πŸŽ“ Campus Tribe - Smart Peer Matching

  • Tinder-style swiping through student profiles
  • Filter by major, year, skills, interests
  • X-Factor showcasing (unique talents)
  • Persistent connections with contact info

2. πŸ”„ Skill Swap - Student-Led Teaching

  • Browse available teachers by category (Tech/Creative/Academic)
  • Find learners seeking specific skills
  • Direct email connections for skill exchange
  • Showcase your X-Factor teaching abilities

3. 🏒 Dorm Deals - Campus Marketplace

  • Post and browse accommodation, furniture, textbooks, electronics
  • Advanced filtering (type, price, location, free items)
  • Sorting options for easy discovery
  • Quick links to campus resources

4. πŸ€– AI Campus Assistant

  • Powered by Google Gemini
  • Natural language queries ("Find someone to study calculus with")
  • Smart matching based on skills, interests, accommodation needs
  • Personalized recommendations with contact details

πŸ› οΈ Tech Stack

Component Technology Purpose
Frontend Streamlit with custom CSS Glassmorphism UI design
AI Engine Google Gemini Flash 1.5 Smart matching & recommendations
Security SHA-256 hashing Password encryption
Storage CSV files Lightweight data persistence
Deployment Streamlit Cloud Live hosting
Language Python 3.8+ Core application logic


✨ Features

  • πŸ” Secure Authentication: SHA-256 password hashing, reset functionality
  • πŸ‘₯ Smart Peer Matching: Swipe interface with advanced filtering
  • ⭐ Rating System: 5-star reviews and trust scores
  • πŸŽ“ Skill Marketplace: Dual teaching/learning platform
  • πŸͺ Campus Marketplace: Multi-category resource sharing
  • πŸ€– AI Recommendations: Context-aware matching with Gemini
  • 🎨 Modern UI: Glassmorphism design with smooth animations


πŸš€ Quick Start

Prerequisites

  • Python 3.8 or higher
  • Google Gemini API keys (Get one here)

Installation

# Clone the repository
git clone https://github.com/yourusername/unisync.git
cd unisync

# Install dependencies
pip install -r requirements.txt
πŸ” API Key Configuration (Click to expand)

Important: Never commit your API keys to version control!

  1. Create a secrets configuration file for Streamlit and add your Gemini API keys:
GEMINI_API_KEY = "your-api-key"
  1. Store this file securely and ensure it's excluded from version control

Optional: Add up to 10 keys for automatic rotation on quota limits

# Run the application
streamlit run 1_Home.py

The app will open at http://localhost:8501

First-Time Setup

  1. Create account or login from sidebar
  2. Complete your profile with skills and interests
  3. Start swiping in Campus Tribe to find peers
  4. Browse Skill Swap and Dorm Deals
  5. Use AI Assistant for smart recommendations


πŸ—οΈ Architecture

System Architecture

System Architecture

UniSync follows a modular architecture:

  • Frontend Layer: Streamlit pages (Home, Find Peers, Skill Swap, Dorm Deals)
  • Backend Logic: Python modules for data management and AI matching
  • Data Layer: CSV-based storage for users, listings, connections, ratings
  • External Services: Google Gemini API for AI-powered recommendations

Application Flow

Application Flow

  1. User authentication (login/signup)
  2. Access to three main features (Campus Tribe, Skill Swap, Dorm Deals)
  3. AI chatbot overlay for intelligent matchmaking
  4. Data persistence across sessions

πŸ“ Repository Structure

Unisync/
β”œβ”€β”€ 1_Home.py                 # Main application entry point
β”œβ”€β”€ pages/
β”‚   β”œβ”€β”€ 2_Find_Peers.py       # Peer matching interface
β”‚   β”œβ”€β”€ 3_Skill_Swap.py       # Skill exchange marketplace
β”‚   β”œβ”€β”€ 4_Dorm_Deals.py       # Campus marketplace
β”‚   β”œβ”€β”€ 5_Reviews.py          # User reviews and ratings
β”‚   └── 6_Guide.py            # User guide and documentation
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ ai_matcher.py         # AI matching logic with Gemini
β”‚   β”œβ”€β”€ data_manager.py       # Data access layer (CRUD operations)
β”‚   β”œβ”€β”€ ui_components.py      # Reusable UI components
β”‚   └── utils.py              # Helper functions
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ users.csv             # User profiles
β”‚   β”œβ”€β”€ listings.csv          # Marketplace listings
β”‚   β”œβ”€β”€ connections.csv       # User connections
β”‚   β”œβ”€β”€ passwords.csv         # Hashed passwords
β”‚   └── ratings.csv           # User ratings and reviews
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ logo.png              # UniSync logo
β”‚   β”œβ”€β”€ Flow.jpg              # Application flow diagram
β”‚   β”œβ”€β”€ sysarc.jpg            # System architecture diagram
β”‚   └── style-*.css           # Custom CSS for each module
β”œβ”€β”€ .streamlit/
β”‚   β”œβ”€β”€ config.toml           # Streamlit configuration
β”œβ”€β”€ requirements.txt          # Python dependencies
└── README.md                 # Project documentation

πŸ“– Usage

Campus Tribe: Swipe through profiles β†’ Filter by major/skills β†’ Connect with matches

Skill Swap: Browse skills β†’ Find teachers/learners β†’ Exchange knowledge

Dorm Deals: Post listings β†’ Filter by type/price β†’ Contact sellers

AI Assistant: Ask natural language queries β†’ Get personalized recommendations


πŸ”§ Configuration

Data Files Format

Users (users.csv):

id,name,email,year,major,skills,interests,x_factor,can_teach,wants_to_learn,accommodation_need
1,Alex Chen,alex@campus.edu,Junior,Computer Science,Python...

Listings (listings.csv):

id,user_id,type,title,description,location,price,status
1,2,furniture,Study Desk,Good condition,Dorm B,Free,available

πŸ› Troubleshooting

  • AI not responding: Check API keys in secrets.toml, verify internet connection
  • Login failed: Ensure password is correct, try password reset
  • No matches found: Adjust filters, add more skills to profile
  • Quota exceeded: Add more API keys for automatic rotation

πŸ“ License

MIT License - see LICENSE file


πŸ‘₯ Team

Code Clan Logo
Yuvraj
Yuvraj Sarathe

Full-stack development, AI integration, system architecture
Siddhika
Siddhika Dhanelia

Peer matching, skill swap, frontend design
Aaradhya
Aaradhya Tiwari

Dorm deals, filtering/sorting, data management

⭐ Star this repo if UniSync helped you connect with your campus community!

Made with ❀️ for the student community | UniSync © 2026

Connecting students, one swipe at a time. 🀝

About

UniSync: The Student Ecosystem. πŸŽ“ A unified Streamlit platform using Google Gemini AI to bridge campus gaps. Featuring Campus Tribe for peer-matching, Skill Swap for student-led specialized teaching (X-Factor), and Dorm Deals for local exchanges. Turn fragmented student life into a connected, high-efficiency network. πŸš€

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors