Empowering students and faculty with real-time academic insights, AI-driven study support, and collaborative tools.
Live Demo β’ Report Bug β’ Request Feature
- About the Project
- Key Features
- Architecture
- Tech Stack
- Getting Started
- Usage
- Project Structure
- Features & Roadmap
- Testing
- Deployment
- Contributing
- Security
- License
- Acknowledgments
KingstonConnect is a comprehensive college management web platform specifically designed for Kingston Engineering College (KEC). It serves as a unified hub for students, teachers, HODs, and principals, facilitating seamless communication, academic tracking, and administrative efficiency.
The platform addresses the complexities of modern engineering education by integrating real-time data from the Anna University (CoE) Portal, providing personalized AI-driven study assistance, and offering robust tools for attendance, assignments, and collaboration.
- π AU Portal Integration: Real-time fetching of exam results, internal marks, and CGPA directly from Anna University.
- π€ StudyGPT: An advanced, student-aware AI assistant that leverages your academic data to provide personalized support.
- π¬ Real-time Chat: Instant messaging and collaboration threads for students and staff powered by Firestore.
- π Academic Management: Interactive timetables, attendance tracking with predictors, and centralized assignment submission.
- π Notes Repository: A shared space for uploading, organizing, and accessing study materials.
- π’ Instant Notifications: Stay updated with college announcements and upcoming events via the integrated calendar.
- π Modern UI/UX: Fully responsive design with native Dark and Light mode support using Tailwind CSS 4.
KingstonConnect follows a modern serverless architecture optimized for scalability and real-time performance.
graph TD
User((User)) -->|React 19 Frontend| App[KingstonConnect Web App]
App -->|Auth/Firestore| Firebase[Firebase Backend]
App -->|API Requests| Vercel[Vercel Serverless Functions]
Vercel -->|Proxy| AUPortal[Anna University Portal]
App -->|Webhooks/API| StudyGPT[StudyGPT AI Service]
StudyGPT -->|Colab Proxy| LLM[LLM Engine]
Firebase -->|Real-time Sync| App
- Framework: React 19.2.0
- Build Tool: Vite 7.2.4
- State Management: Zustand 5.0.10
- Routing: React Router DOM 7.12.0
- Data Fetching: TanStack React Query 5.90.16
- Styling: Tailwind CSS 4.1.18 + Lucide React Icons
- BaaS: Firebase 12.7.0 (Auth, Firestore, Storage, Analytics)
- Proxy Server: Vercel Serverless Functions (@vercel/node 5.10.0)
- AI Integration: Custom Colab-hosted LLM via StudyGPT Service
- Database: Firestore (Real-time NoSQL)
- File Storage: Firebase Storage (for notes and attachments)
- Node.js: v20.x or higher
- npm: v10.x or higher
- Firebase Account: A project set up on the Firebase Console
-
Clone the repository:
git clone https://github.com/vincenzo-afk/KingstonConnect.git cd KingstonConnect -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile in the root directory and add your Firebase and API credentials:VITE_FIREBASE_API_KEY=your_api_key VITE_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com VITE_FIREBASE_PROJECT_ID=your_project_id VITE_FIREBASE_STORAGE_BUCKET=your_project.appspot.com VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id VITE_FIREBASE_APP_ID=your_app_id VITE_FIREBASE_MEASUREMENT_ID=your_measurement_id VITE_STUDYGPT_API_URL=your_colab_proxy_url
-
Start the development server:
npm run dev
Students can view their attendance, upcoming assignments, and recent AU exam results. The Attendance Predictor helps students stay above the required percentage.
Interact with StudyGPT by navigating to the "StudyGPT" section. The AI is aware of your current grades and subjects:
// Example query to StudyGPT
"How can I improve my CGPA based on my current internal marks in Data Structures?"Connect with classmates or faculty:
- Navigate to Chat.
- Select a thread or start a new one.
- Messages sync in real-time across all devices.
View Directory Tree
KingstonConnect/
βββ api/ # Vercel Serverless Functions (AU Portal Proxy)
βββ public/ # Static assets
βββ src/
β βββ assets/ # Styles and images
β βββ components/ # Reusable UI components
β βββ hooks/ # Custom React hooks (Firestore sync, etc.)
β βββ lib/ # Third-party library configurations (Firebase)
β βββ pages/ # Application views/routes
β βββ services/ # API and business logic (StudyGPT, AU Portal)
β βββ stores/ # Zustand state management
β βββ types/ # TypeScript interfaces
β βββ utils/ # Helper functions
βββ firestore.rules # Database security rules
βββ firebase.json # Firebase Hosting configuration
βββ vercel.json # Vercel deployment configuration
βββ vite.config.ts # Vite build configuration
- Firebase Integration: Real-time database and secure authentication.
- AU Portal Proxy: Seamless fetching of university data.
- StudyGPT v2: Personalized AI academic support.
- Role-based Access: Custom views for all user types.
- Dark/Light Mode: Full theme support.
- Mobile App: Native iOS/Android versions using React Native.
- Offline Mode: Support for basic features without internet access.
- Automated Grading: AI-assisted assignment evaluation for teachers.
Run the linting suite to ensure code quality:
npm run lintType checking:
npm run build # This runs tsc -b before buildingThe project is configured to deploy to Firebase Hosting:
npm run build
firebase deploy --only hostingPushing to the main branch triggers an automatic deployment on Vercel for the web app and serverless functions.
- Authentication: Powered by Firebase Auth with secure token handling.
- Firestore Rules: Granular security rules ensure users only access their own data and shared public content.
- Environment Variables: Sensitive API keys are never exposed in the source code.
Distributed under the MIT License. See LICENSE for more information.
- Kingston Engineering College for the inspiration and user base.
- Anna University for providing the academic data infrastructure.
- The React & Firebase Communities for the robust ecosystem.
Built with β€οΈ by vincenzo-afk