https://github.com/mmujtabah/enrollx
Full-stack course registration portal. React, Node.js, Express, SQL Server, JWT auth
https://github.com/mmujtabah/enrollx
expressjs full-stack jwt nodejs react rest-api sql-server
Last synced: 2 months ago
JSON representation
Full-stack course registration portal. React, Node.js, Express, SQL Server, JWT auth
- Host: GitHub
- URL: https://github.com/mmujtabah/enrollx
- Owner: mmujtabah
- Created: 2025-02-02T17:57:43.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2026-03-14T05:48:44.000Z (3 months ago)
- Last Synced: 2026-03-14T16:42:53.247Z (3 months ago)
- Topics: expressjs, full-stack, jwt, nodejs, react, rest-api, sql-server
- Language: JavaScript
- Homepage:
- Size: 223 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# EnrollX
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.
---
## Features
- **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.
---
## Tech Stack
- **Frontend**: React.js
- **Backend**: Express.js (Node.js)
- **Database**: SQL Server
- **Authentication**: JWT (JSON Web Tokens)
- **Styling**: CSS/SCSS
---
## Installation
### Prerequisites
Before you begin, ensure you have the following installed:
- [Node.js](https://nodejs.org/) (v14 or later)
- [SQL Server](https://www.microsoft.com/en-us/sql-server) (for backend database)
- [Git](https://git-scm.com/)
### Setup Instructions
1. **Clone the repository**:
```bash
git clone https://github.com/mmujtabah/EnrollX.git
cd EnrollX
````
2. **Install backend dependencies**:
```bash
cd backend
npm install
```
3. **Install frontend dependencies**:
```bash
cd ../frontend
npm install
```
4. **Set up the database**:
- Configure the SQL Server connection in the backend.
- Ensure the database is running and accessible.
5. **Run the backend server**:
```bash
cd ../backend
npm start
```
6. **Run the frontend application**:
```bash
cd ../frontend
npm start
```
The frontend will be accessible at `http://localhost:3000`.
### Environment Variables
The backend requires certain environment variables. Create a `.env` file in the `backend` directory and add the following:
```env
DB_HOST=your-database-host
DB_USER=your-database-username
DB_PASS=your-database-password
JWT_SECRET=your-secret-key
```
---
## License
This project is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for details.
---