A comprehensive, modernized JavaFX and React-based college management system with role-based access control, automated database migrations, and a beautiful UI powered by React and AtlantaFX.
This project is built as a complete hybrid platform, offering both a standalone JavaFX Desktop Application AND a modern React Web Application interconnected via a custom Java HTTP API.
- React Frontend: Modern web app with fluid navigation, intuitive cards, and clean dashboards.
- JavaFX Glassmorphism: A stunning dark-themed UI on the desktop with glass-effect cards and transparent tables.
- Native Routing: Smooth single-page application experience with role-based component rendering.
- Native Migrations: Custom
MigrationRunnerautomatically updates the database schema on startup using pure Java. - RESTful API: Lightweight, native Java HTTP server (
com.sun.net.httpserver) providing stateless API endpoints. - Performance Optimized: N+1 query resolutions alongside lazy loading across both Desktop and Web layers.
- Admin: Complete system oversight, user management, institute settings, and employee workflows.
- Faculty: Academic management, workload tracking, attendance logs, and result publications.
- Student: Personalized hub for academics, clubs, events, fees, and secure leave requests.
The web and desktop applications have achieved 1:1 feature parity. Available modules include:
- Institute Management (Role management, RBAC, Settings)
- Employee Management (Non-teaching staff, Salary)
- Student & Faculty Management (CRUD, Deep search)
- Course & Department Records
- Attendance (Single + bulk marking, Analytics)
- Timetable & Faculty Workload (Pie charts, Credit distribution)
- Leave Approvals (Multi-tier staff/student leave workflow)
- Hostel Management (Hostels, Rooms, Allocations)
- Gate Pass Management (Request, Approve, Tracking)
- Visitor Tracking (Entry logging, ID proofs, Check-in/out)
- Room Availability (Real-time checking, Schedules)
- Library (Book management, Issues, Fine tracking)
- Fees & Ledger (Pending fees, Payment gateways)
- Student Activities Hub (Central dashboard for Campus Life)
- Clubs & Societies (Browse, Memberships, Executive roles)
- Events & Workshops (Ticketing, Registration, Banners)
- Grades & Transcripts (Transcripts, GPA Calculation)
- Assignments (Course submissions, Due dates, Grading)
- Resource Management (Upload/download lectures, Notes)
- Scholarships (Browse programs, Track application status)
- Crowdfunding Campaigns (Deploy initiatives, Donations)
- Placement & Careers (Company catalogs, Track interview statuses)
- Academic Calendar
- Global Announcements & Notifications
- Profile & Password Management (Security controls)
- Advanced Reports & Analytics
- Java JDK 17+
- PostgreSQL 15+
- Node.js (for Web UI)
- Maven (Optional)
-
Clone the repository
git clone <repository-url> cd College-Management-2
-
Configure Environment Create a
.envfile from the template and edit your PostgreSQL credentials:cp .env.example .env
-
Database Setup Simply create an empty database. The application's native Migration Runner handles all schema creation dynamically!
CREATE DATABASE college_db;
The classic, fully-featured JavaFX application running natively on the desktop:
# Build the project
./build.sh
# Run the app
./run.shTo launch the Web portal, run the Backend API and the Frontend React Server.
1. Start the Java REST API Server (Port 7000):
./run-api.sh2. Start the React Frontend (Port 3000):
cd web-app
npm install
npm startThe web dashboard will be accessible at http://localhost:3000.
By default, the Migration Script seeds the database with test accounts. Initial passwords are 123, except for the Admin account.
Admin
admin/admin123
Standard Faculty
FAC001/123FAC002/123
Standard Student
TES2026001/123
(Note: Create Finance/Warden roles internally via the Admin User Portal).
This modern ecosystem adheres strictly to:
- Zero-Dependency Encryption: Passwords salted and hashed securely using standalone Java
MessageDigestconfigurations. - API Guarding: Bearer routing sessions verified via internal
ProtectedHandlerlayers mitigating unauthenticated access. - SQL Guards: Heavy Reliance on Parameterized Statements preventing all edge-case Injection attempts.
See SECURITY.md for detailed security information.
- Fork the repo.
- Create your feature branch (
git checkout -b feature/EpicEnhancement). - Commit your changes.
- Push to the branch.
- Open a Pull Request.
Built with β€οΈ for educational excellence.