EnrollX is a student course registration portal built with React for the frontend and Express for the backend. It provides a seamless experience for students to register, log in, and manage their courses efficiently. The system features secure authentication, a user-friendly interface, and a robust database to store student information.
- User Registration: Students can create an account and manage their profile.
- Login/Logout: Secure authentication with session management using JWT (JSON Web Tokens).
- Password Reset: Students can reset their password via their registered email.
- Course Registration: Students can browse and register for available courses.
- Admin Dashboard: Admins can manage course offerings and view registered students.
- Frontend: React.js
- Backend: Express.js (Node.js)
- Database: SQL Server
- Authentication: JWT (JSON Web Tokens)
- Styling: CSS/SCSS
Before you begin, ensure you have the following installed:
- Node.js (v14 or later)
- SQL Server (for backend database)
- Git
-
Clone the repository:
git clone https://github.com/mmujtabah/EnrollX.git cd EnrollX -
Install backend dependencies:
cd backend npm install -
Install frontend dependencies:
cd ../frontend npm install -
Set up the database:
- Configure the SQL Server connection in the backend.
- Ensure the database is running and accessible.
-
Run the backend server:
cd ../backend npm start -
Run the frontend application:
cd ../frontend npm startThe frontend will be accessible at
http://localhost:3000.
The backend requires certain environment variables. Create a .env file in the backend directory and add the following:
DB_HOST=your-database-host
DB_USER=your-database-username
DB_PASS=your-database-password
JWT_SECRET=your-secret-keyThis project is licensed under the MIT License. See the LICENSE file for details.