Listings Finder

MERN Fullstack Project

This page will be on the more 'documentation' side of things.

If you want to read more about the project, follow this Link.

This page will focus the overall technology used in this project, with the more specific details being in the above blog post.

Repositories and Documentation

The Github repositories and API Documentation for this entire project can be found at these links below.

Technology Overview

For the Frontend part of the project I used a React app (created with `npx create-react-app`) and Bootstrap for handling CSS styling.

For the Backend part of the project I used the following:

  • Express.JS, for the Node.Js server framework
  • MongoDB, for handling Database operations and providing data
  • Auth0, for handling API route authentication.

I also used a template engine for the Express server, called Pug in order to render web pages on Heroku.

The purpose behind this is to provide something to render on the Heroku URL, mainly for a debugging purpose, but also to list out what the server does / contains.

Web Hosting

For web hosting, I used Vercel to host the React app, and Heroku to host the Express Server.

The main reason behind using these services was that they are both free to use for Hobbyists.

API Documentation

The Listings Finder API is built on the REST Principles, since I found using that for the API was easier and quicker to get working then using a GraphQL client and being concerned with MongoDB data compatibility / types.

Several different programs were used in this endeavour, Insomnia and later Postman.

Insomnia was initially used to verify that the API routes were functional and were returning JSON Data from the MongoDB collection.

Postman was used later on, mainly to expand upon the API testing functionality that Insomnia provided.