Author: Chandler Smith and Professor Tony Mullen from Northeastern University - Web Development Course CS5610
The purpose of this project is to gain exposure building web applications using the MERN Stack.
This project was bootstrapped with Create React App.
For our group project, we have decided to create a web application designed to facilitate online book clubs. The goal of this application is to enable users to:
- Get book recommendations
- Discuss the content with others
- Manage and maintain private book club groups using various permission levels
- Write and read book ratings
As a stretch goal, we may add the functionality for users to meet and/or exchange books offline. We can also add custom recommendations based on previous read history. One of the biggest challenges we anticipate facing is having different forums for different groups who read the same book.
Pages:
- Homepage for all bookclubs
- Search and recommendation page
- Forum page for each group
- Individual book page
- User management page
Chance:
Chance's contributions included hosting the front end on Heroku, working on the web applications UI and constrution, and assiting with finding book data for the database.
Chandler:
Chandler's contributions included building out the web applications's backend and APIs the group may need when constructing the front end. Chandler also hosted the backed on Heroku and worked on getting data loaded into the database.
Luocheng:
Luocheng worked on uploading data to the database.
Chance:
Chance added a grid pattern in landing page.
Chandler:
Chandler got books populated on local database and linked to backend.
Luocheng:
Luocheng added and tested review function.
Top Books page 2 - next photo in carousel
Chance:
Chance found two 3rd party react library's: Material UI
and Inspirational-quotes
. He collaborated with Chandler on bookTable.js
, bookCard.js
, topBooks.js
, topBooks.css
and UI and general css styling.
He also worked with Luocheng on Login/logout
. Another page that he touched was groups.js
. Lastly Chance implemented the carousel on the top books page.
Chandler:
Chandler built the home page, piped in move information from local db, piped image information from google api. Chandler also collaborated
with Chance on the bookTable.js
, bookCard.js
, topBooks.js
, topBooks.css
and UI and general css styling.. Chandler worked on styling for topBook. Added image.js services and mapped out search and
pagination in app.js
.
Luocheng:
Luocheng worked on login/logout
function, added groups.controller.js
, groupsDAO.js
in backend, updated groups route, added GroupDataService
and group.css
styling in frontend, and helped with page routing.
Luocheng also designed a prototype database for groups that will be implemented in future iterations of the project.
- At least 2 CRUD operations with the ability to read and update from both a local db and a googleAPI which connects to an online db.
- 3 UI route: Main Page, Top Books, and Groups
- Bootstrap components used include: carousel and figures
- Layout is completely different from demo application, specifically when viewing the top books and groups pages which utilize a new suite of bootstrap and css styling. Even the cards on the home page are completely custom using the Material UI components.
- We did not use GraphQL or Redux in our app. We did two 3rd party libraries for React. The libraries include inspiration-quotes, and Material UI.
Github Repos
Frontend Repo
backend Repo
Chance Lamberth
Chandler Smith
Luocheng Zhu
How merge main changed into git branch How to do git tag
https://movietime-frontend-csmith.herokuapp.com/Links to an external site.
https://movietime-backend-csmith.herokuapp.com/Links to an external site.