Full-Stack Database Website for Non-Profit
Summary
Our team developed a full-stack website for a non-profit organization to collect and summarize household energy inputs and outputs. The website's core functionalities include a household input form to add to the database, with appliances and power generation for the household included, and several reports from the database with complex queries and unique front-end requirements.
Purpose and Goal
To build the website, we utilized a range of technologies, including Docker, JavaScript, HTML, CSS, SQL, Postgresql, Express.js, and Node.js. My primary role was front-end development with JavaScript DOM incorporating API calls to the database.
Our goal was to collect information on user households and identify patterns in energy usage across the US. After being given the specifications, we developed an enhanced entity relationship diagram. The EER helped us determine the relationships between the entities (household, appliances, power generation) and informed our database structure.
Spotlight
I am particularly proud of the reports’ DOMs that I developed from scratch, incorporating the collection style.
Lessons Learned
During the project, our team learned about various APIs and Docker functionalities. We used Docker to maintain database and image consistency across testing and used PostGresSQL as the database management system. We also developed API calls to the PostGresSQL server and manipulated the HTML DOM while incorporating CSS styles using Javascript.