Skip to content

noobtdbs/ClassRoom-Management

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Classroom MANAGEMENT

LinkedIn

Features

  • User Roles: The system supports three user roles: Admin, Teacher, and Student. Each role has specific functionalities and access levels.

  • Admin Dashboard: Administrators can add new students and teachers, create classes and subjects, manage user accounts, and oversee system settings.

  • Attendance Tracking: Teachers can easily take attendance for their classes, mark students as present or absent, and generate attendance reports.

  • Performance Assessment: Teachers can assess students' performance by providing marks and feedback. Students can view their marks and track their progress over time.

  • Data Visualization: Students can visualize their performance data through interactive charts and tables, helping them understand their academic performance at a glance.

  • Communication: Users can communicate effortlessly through the system. Teachers can send messages to students and vice versa, promoting effective communication and collaboration.

Technologies Used

  • Frontend: React.js, Material UI, Redux
  • Backend: Node.js, Express.js
  • Database: MongoDB

Installation

git clone https://github.com/Yogndrr/MERN-School-Management-System.git

Open 2 terminals in separate windows/tabs.

Terminal 1: Setting Up Backend

cd backend
npm install
npm start

Create a file called .env in the backend folder. Inside it write this :

MONGO_URL = mongodb://127.0.0.1/school

If you are using MongoDB Compass you can use this database link but if you are using MongoDB Atlas then instead of this link write your own database link.

Terminal 2: Setting Up Frontend

cd frontend
npm install
npm start

Now, navigate to localhost:3000 in your browser. The Backend API will be running at localhost:5000.

Error Solution

You might encounter an error while signing up, either a network error or a loading error that goes on indefinitely.

To resolve it:

  1. Navigate to the frontend > .env file.

  2. Uncomment the first line. After that, terminate the frontend terminal. Open a new terminal and execute the following commands:

cd frontend
npm start

After completing these steps, try signing up again. If the issue persists, follow these additional steps to resolve it:

  1. Navigate to the frontend > src > redux > userRelated > userHandle.js file.

  2. Add the following line after the import statements:

const REACT_APP_BASE_URL = "http://localhost:5000";
  1. Replace all instances of process.env.REACT_APP_BASE_URL with REACT_APP_BASE_URL.

IMPORTANT: Repeat the same process for all other files with "Handle" in their names.

For example, in the redux folder, there are other folders like userRelated. In the teacherRelated folder, you'll find a file named teacherHandle. Similarly, other folders contain files with "Handle" in their names. Make sure to update these files as well.

The issue arises because the .env file in the frontend may not work for all users, while it works for me.

Additionally:

  • When testing the project, start by signing up rather than logging in as a guest or using regular login if you haven't created an account yet.

    To use guest mode, navigate to LoginPage.js and provide an email and password from a project already created in the system. This simplifies the login process, and after creating your account, you can use your credentials.

These steps should resolve the network error in the frontend. If the issue persists, feel free to contact me for further assistance.

About

Deployed Link of the frontend application.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages