Packages and resources used
Backend
Node.js & NPM
Express
axios
body-parser
cors
express-validator
multer
postgres
pg-format
pg-hstore
sequelize
nodemon
FrontEnd
BootStrap
carousel, Nav, Cards and flex box are the key features used of this
Jquery
AJAX
docker
Public API for dog pictures used in the carousel, the api is called and cached on the back end with a 1 hour cache timer, so you may see the same photos repeatedly, but if you wait or restart the container you'll see different images. https://dog.ceo/api/breeds/image/random/3
All dogs seen in the table and cards are my own, or they are the pets of friends with permission to post them.
CRUD
Create can be seen on add a pet, this allows for sending a picture to the back end, and creating a posgres database record for the pet
Read can be seen on the home page, reads from the database
Delete can be seen on the home page. deletes from the database
Update can be seen on the home page, updates records on the database
contact us is a dummy page
Assignment Requirements
built a REST API✔️
Displaying single and multiple records from the REST API and a proxy to an external API for extra photo content✔️
The single record is called when editing a record, it will call via the primary key to get the data as a placeholder
front end retrieves data in a JSON format using AJAX and Jquery✔️
Filtering & Searching Data can be seen on the table on the home page, this approach was taken to reduce api calls after the content was already loaded✔️
Polling can also be seen on the home page, the content dynamically refreshes using timers without reloading the page✔️