Skip to content

Product API that aggregates product data from multiple sources and returns it as json to the caller.

Notifications You must be signed in to change notification settings

AdeebAli/myretail-api

Repository files navigation

MyRetail REST API 🎯

codecov CI Pipeline

The REST API that makes viewing products a blast

The backend API for the MyRetail company responsible for displaying product data and for communication to and from the MongoDB data store.
Made with ExpressJS, Eslint, and Jest.

Requirements

  • NodeJS 13+
  • MongoDB

Getting Started

First things first...

    npm i # installs dependencies

Time to start the application!

    npm start

To run the application with a live dev server that supports hot reloading, run

    npm run dev

Testing

To run the full test suite,

    npm test

Linting / Code Style

This project uses the AirBnB ruleset for eslint to enforce code style and syntax errors. Linting is run with the lint command as well as the general npm test command.

To run the linter and check for code style errors,

    npm run lint

Oh no! We have a bunch of linting errors. That's totally fixable! You just need to run

    npm run lint:fix

Running with Docker

This application can be run with Docker using the supplied Dockerfile to build the image. Your machine must have Docker installed in order to perform the following steps. Download instructions can be found on the Official Docker Website

Building the Image

change directory to the root of the repository, then

docker build -t <username>/myretail-api .

Running the Image

docker run -p <public_port>:<private_port> -d <username>/myretail-api

Made With ❤️ Using

  • Express - Web Framework
  • Jest - Unit Testing Framework
  • Eslint - Code Style
  • Mongoose - MongoDB utility for NodeJS

Authors

About

Product API that aggregates product data from multiple sources and returns it as json to the caller.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published