A comprehensive platform for managing student data within CoSA, including details about students' club memberships, positions of responsibility (PORs), and much more. This project offers efficient storage, retrieval, and management of student-related information, streamlining administrative tasks and enhancing overall efficiency.
- User-friendly Frontend: Clean, responsive UI for easy access to student data.
- Backend with MongoDB: Secure and scalable backend using Node.js, Express, and MongoDB.
- Search & Filter Functionality: Quickly search, filter, and manage student data.
- JWT-based Authentication: Role-based authentication system for admins.
- RESTful API: RESTful endpoints for integration and automation.
- Frontend: React.js, Axios, HTML5, CSS3
- Backend: Node.js, Express.js, JWT Authentication
- Database: MongoDB
- Version Control: Git and GitHub
Follow these instructions to run the project locally.
Ensure that you have Node.js and NPM installed on your system.
git clone https://github.com/OpenLake/Student_Database_COSA.git
cd Student_Database_COSA
- Navigate to the
Backend
directory:cd Backend
- Install the necessary packages:
npm install
- Run the backend server:
node index.js
- Navigate to the
frontend
directory:cd ../frontend
- Install the frontend dependencies:
npm install
- Start the frontend server:
npm start
Now, you should be able to access the frontend at http://localhost:3000
and the backend at http://localhost:5000
.
Student_Database_COSA/
│
├── Backend/ # Node.js backend
│ ├── controllers/ # API route controllers
│ ├── models/ # Database models (MongoDB schemas)
│ ├── routes/ # API routes
│ ├── middleware/ # Authentication and role-based middleware
│ └── index.js # Main server file
│
├── frontend/ # React.js frontend
│ ├── public/ # Public assets
│ └── src/ # Source code
│ ├── components/ # React components
│ ├── pages/ # Application pages
│ └── App.js # Main App component
│
├── .gitignore # Ignored files
├── README.md # Project documentation
└── package.json # Dependencies and scripts
This project is maintained by:
We welcome contributions! Feel free to open an issue or submit a pull request. Before contributing, please make sure to:
- Fork the repository.
- Create a new branch.
- Submit a pull request with your changes.
If you have any questions or feedback, feel free to reach out to the maintainers.