A comprehensive Enterprise Resource Planning system for college management built with React, TypeScript, and Supabase.
- 📚 Student Management - Complete student records and profiles
- 🎓 Admissions - Application tracking and approval workflow
- 💰 Fee Management - Payment tracking and receipt generation
- 🏠 Hostel Management - Room allocation and occupancy tracking
- 📝 Exam Management - Results and performance analytics
- 👥 Multi-Role Support - Admin, Clerk, Faculty, Student, Hostel Manager
- 🔐 Secure Authentication - Role-based access control
- Frontend: React 18, TypeScript, Vite
- UI: Tailwind CSS, Lucide Icons
- Backend: Supabase (PostgreSQL, Auth, Storage)
- Charts: Recharts
- PDF: jsPDF
- Routing: React Router v6
npm installFollow the detailed setup guide in SUPABASE_SETUP.md
Quick steps:
- Create a Supabase project at https://supabase.com
- Run the SQL schema from
supabase-schema.sql - Update
.env.localwith your credentials:
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key-herenpm run devnpm run buildThe production-ready files will be in the dist/ directory.
- Install Vercel CLI:
npm i -g vercel - Run:
vercel - Follow the prompts
- Add environment variables in Vercel dashboard:
VITE_SUPABASE_URLVITE_SUPABASE_ANON_KEY
- Build:
npm run build - Deploy
dist/folder to Netlify - Add environment variables in Netlify dashboard
The project includes vercel.json for automatic Vercel configuration.
Open http://localhost:5174 in your browser.
college_erp_main/
├── src/
│ ├── components/ # Reusable UI components
│ ├── contexts/ # React context providers
│ ├── data/ # Mock data for development
│ ├── lib/ # Supabase client and types
│ ├── pages/ # Page components
│ ├── services/ # API service layers
│ ├── types/ # TypeScript type definitions
│ └── App.tsx # Main app component
├── supabase-schema.sql # Database schema
└── .env.local # Environment variables
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLint
- Admin - Full system access
- Clerk - Student and admission management
- Faculty - Academic and exam management
- Student - View own records and results
- Hostel Manager - Hostel allocation and management
The app works in two modes:
- With Supabase - Full backend functionality with real database
- Mock Data Mode - Local storage with mock data (no Supabase needed)
The app automatically detects if Supabase is configured and falls back to mock data if not.
For issues and questions, check the documentation or create an issue.
Hemant Kumar Dhangar
Mayank Singh
Mrityunjay Singh