JobBoard App Backend with Node.js GraphQL MongoDB



This is the backend side of a JobBoard App that I created as a playground with React.js on the frontend side, Node.js on the backend side, utilizing the amazing GraphQL as the backend API and MongoDB as the backend.

Frontend site-wide state management was provided by React Context, while API endpoints mapped with GraphQL using Schema & Resolvers, and all data to be fetched from a MongoDB database.

Authentication on the backend side was created using BCrypt hash to safely store user password and a signed JWT (JSON Web Token) token string generated on server to be provided to client web browser for each successfully authenticated / logged-in user.

Here we practice a decoupled server backend from frontend clients, where the server only provide data and is not related with client-side states.


Create a new file named ‘nodemon.json’ right in the root directory

Add inside .env file variables as follows:

  "env": {
    "MONGO_USER": "yourMongoDBUsername",
    "MONGO_PASSWORD": "yourPassword",
    "MONGO_DB": "yourMongoDB_Database_Name",
    "MONGO_CLUSTER": "yourMongoDB_Cluster",
    "JWT_KEY": "YourVeryLongVerySecretKey"

Run the following from command prompt:

npm install
npm start

Online Demo


View Github