A store inventory application
This app was built using ExpressJS, Mongoose and MongoDB for the back and database and Pug and Bootstrap for the front end. The main goals of this project were to get experience with CRUD methods, using client input to alter database values, and reference model types within other models.
A majority of the planning phase was given to mapping out the model schemas. Using a small set of requirements I planned out the major models and the sub models that relate to them. Building the one-to-many and many-to-many data models took some time to wrap my mind around but after reading through the MongoDB and Mongoose documentation I was able to find easily understand examples.
Creating forms for data to be enter also allowed me to work with form validation on client side as well as server side. Looking back on this project one of improvements I would make would be to take advantage of mongoose middleware to move some of the model formatting to the model itself before editing the database.