For this full-stack project, our team set a goal to develop a dashboard for users when they visit the web. The purpose of this dashboard was to provide the user with an aesthetic layout for an enjoyable user experience, and provide the functionality of a user to view the news, search for YouTube videos, create a to-do-list, view stock information, and be inspired with a unique quote on a day-to-day basis. The purpose of our dashboard is to centralize information that a user utilizes on a daily basis. This is an all-in-one location for a user to visit.
When we began planning out the features of what we would like to include in the dashboard, we listed out the requirements of the project. The key task at hand was to utilize an object-relational mapping (ORM) tool in conjunction with a database. This would allow us to store information for users. With that said, we began to sketch the features and tables that would be required to store the data. Since we were developing a landing page, we began to do research of what APIs we could implement. The purpose of this dashboard is to centralize information for a user.
- HTML5 - develop structure of the website
- CSS - design
- Bootstrap4 - design and layout
- jQuery - dynamically developed objects, pulled user information, utilized for API calls
- Passport Authentication (Local Strategy) - to authenticate user and allow information to be stored for each other to develop a unique experience
- AWS (EC2 & RDS) - to host the website and create relational database that was accessible for the group to work on
- Node.js - used to setup the back-end structure of the website
- RESTful APIs - variety of APIs were utilized for our dashboard
- Sequelize - ORM (object-relational mapping) to develop models and migrations
- Bash Scripting - used to log scripts for sequelize and capture node packages
Node Packages Utilized (NPM Installs)