https://github.com/anupam-io/iitgn-grad-planner
A MERN based graduation planner web application for IIT Gandhinagar students
https://github.com/anupam-io/iitgn-grad-planner
axios bootstrap bootstrap4 csv database full-stack fullstack-javascript heroku heroku-deployment mern-stack mern-stack-development mongodb mongodb-atlas mongodb-database mongoose mongoosejs react reactjs router state-management
Last synced: 8 months ago
JSON representation
A MERN based graduation planner web application for IIT Gandhinagar students
- Host: GitHub
- URL: https://github.com/anupam-io/iitgn-grad-planner
- Owner: anupam-io
- Created: 2021-03-15T18:22:20.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-01-30T14:27:40.000Z (over 2 years ago)
- Last Synced: 2025-02-01T06:05:55.371Z (over 1 year ago)
- Topics: axios, bootstrap, bootstrap4, csv, database, full-stack, fullstack-javascript, heroku, heroku-deployment, mern-stack, mern-stack-development, mongodb, mongodb-atlas, mongodb-database, mongoose, mongoosejs, react, reactjs, router, state-management
- Language: JavaScript
- Homepage: https://planner-ashy.vercel.app
- Size: 2.9 MB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Planner (build in Hackrush-2021)
### A web portal that provides an efficient and intuitive way to track graduation requirements and grades.
## [Table of contents](#table-of-contents)
- [Components of the project](#components-of-the-project)
- [Pages](#pages)
- [Screenshots of Website](#screenshots-of-website)
- [Files & Folders](#files-and-folder)
- [How to run](#how-to-run)
- [Contributors](#contributors)
## [Components of the project](#components-of-the-project)
- `MongoDB` online database
- `Express` server
- `React` + `react-bootstrap` client
- Course parser from csv file
## [Pages](#pages)
- Home page
- Login Page
- Logout Page
- Dashboard
- Edit Plan
- Create new plan page
- Edit plan page(availabe through load plan)
- Shared plan
## [Screenshots of Website](#screenshots-of-website)
.png)
_[Back to Table of Contents](#table-of-contents)_
## [Files & Folders](#files-and-folder)
- `index.js`: Main server file
- `models`: Server loading file
- `initData`: Initial semester & course data
- `schemas`: Schemas for databases
- `setDefaultCourses.js`: database initial data
- `setAllCourses.js`: database initial data
- `routes`: API routes for end user
- - `client`: Client folder for end user
- `scrapTimeTable`: scrapping course details from CSV
## [How to run](#how-to-run)
- `yarn; cd client; yarn;`: Installing dependencies
- `yarn c`, `yarn s`, `yarn p`: Setting up the database
- `yarn start`: starting the server
- `yarn server`: starting the server in dev mode using `nodemon`
- `yarn client`: starting the client
- `yarn dev`: starting both server and client concurrently
### `mongod` for Ubuntu:
- `sudo service mongod start`
- `sudo service mongod status`
- `sudo service mongod stop`
- `sudo service mongod restart`
### Stopping stucked servers in `Ubuntu`
- `sudo fuser -k 5000/tcp`
### Stopping stucked servers in `Windows`
- `netstat -ano | findstr :5000`
- `taskkill /PID /F`
## Flow of data
### Database storage
- Default Sem data
- All courses data
- Individual plan data
### User's browser
- User queries server to:
- load default course data
- save plan data
- load plan data
- load the list of saved plans
- Computations are done in user's browser
## Suggestions
- Reducing the padding and making it more compact.
- add an overview feature to show
- floating counter options for each type of courses
- Draggable components
- Plans only available to see for authorized people
- Commenting feature
## [Contributors](#contributors)