Nomad

Git Repo


Nomad is a MERN stack app, meaning it uses the following technologies:

MySQL (Postgres)
Express
React
Node


The SQL database is in PostGres, and is hosted on Heroku along with the app.

All of the API routes are written in Express, and the front-end constantly makes requests to it. API routes exist to generate a random word, save a word, and retrieve saved words.

The front-end is done with React. This project was my first time using it, along with MaterialUI for any UI components.
I found certain parts of React really annoying, like 'the rules of hooks', and having to pass props around to components.
The rules of hooks was primarily annoying because I had to invoke an auth0 hook to retrieve the user's email, which I did a lot. I couldn't do this within class components though, otherwise it'd get upset.
For my next project, I definitely want to try Angular.

Node is used for the rest of the back-end tasks, that don't involve Express routes. This includes making requests to other APIs, such as the Google Cloud Translate API, and a Definition API, to provide more information for words.


I struggled a lot with motivation during the development of this project (due to COVID, among other things), which is why it remains unfinished today.