An open API service indexing awesome lists of open source software.

https://github.com/almoggutin/node-express-rest-api-mongo-js-example

Basic API example that is built with Node.js and Express in javascript. Database connection with Mongoose (ODM) and supports authentication and authorization with JWT.
https://github.com/almoggutin/node-express-rest-api-mongo-js-example

api authentication authorization crud express javascript jwt mongodb mongoose nodejs odm postman rest-api

Last synced: 2 months ago
JSON representation

Basic API example that is built with Node.js and Express in javascript. Database connection with Mongoose (ODM) and supports authentication and authorization with JWT.

Awesome Lists containing this project

README

          

Node Express REST API MongoDB JS Example



This API example is a basic backend application to test basic API functions.


View Postman Files

Table of Contents



  1. About The Application


  2. How To Install

  3. Available Scripts

  4. Postman

## About The Application

This API is a basic example of a REST API backend application.

It is build with Node.js and Express Framework with Javascript. In addition the application's database is MongoDB with the use of an ODM like Mongoose. Additionally the application has basic authentication and authorization functionality with the use of JWT.

In the applicaiton we can add books to the database and users can signip, login, edit, and delete their data. In addition, each user has their own cart where they can store books they want to buy, and checkout if they wish too.

The point of this backend application is to test basic api functions.

(back to top)

### Built With

- [Node.js](https://nodejs.org/en/)
- [Express](https://expressjs.com/)
- [MongoDB](https://www.mongodb.com/)
- [Mongoose (ODM)](https://mongoosejs.com/)
- [JWT](https://www.npmjs.com/package/jsonwebtoken)
- [Validator.js](https://www.npmjs.com/package/validator)
- [Cors](https://www.npmjs.com/package/cors)
- [Days.js](https://day.js.org/)

(back to top)

## How To Install

**Git clone**

```
git clone https://github.com/almoggutin/Node-Express-REST-API-Mongo-JS-Example.git
```

**Instructions**

- After cloning the the repository run `npm i` in order to install all the dependencies.
- Fill in all the values of the env variables in `config/dev.env` file so that the application will run properly during development mode.

(back to top)

## Available Scripts

In the project directory, you can run:

### `npm start`

Runs the app in the production mode.\
However this script is only ment to be run when deploying the application. The application is built, where you need to setup the env variables on the machine that your will be hosting it on or in a webhosting service, unlike in development mode.

### `npm run dev`

Runs the app in the development mode.\
Open localhost on the port you decided on in the env variables to view it in the browser.

The page will reload if you make edits with nodemon.

(back to top)

## Postman

Above, there is a link that will take you to the postman files in my postman profile where you can test the api functionality in the browser.

However if you would like to run the files locally on your machine in the postman desktop application, included in the repository, in the `postman` directory all the files so you can import them. In addition you will have to configure env variables in postman so that you will be able to test properly everything.



(back to top)