Skip to content

Horlarhyinka/gadget-x-api

Repository files navigation

Welcome to gadget-x project, a backend api for an e-commerce application.

Introduction

A REST api for an e-commerce website which enables secure in-app transactions and cross-platform shopping. This project is a node based project built with javascript programming language, mongodb (nosql database), and Redis (for caching). The technologies implemented include.

Technologies

  • nodejs
  • mongodb
  • redis
  • cheerio
  • passport js
  • paystack

Features

  • Authentication: user login/register/forget-password implemented with jwt and google oauth2.0 with passport.js
  • Authorization: Authorization for both admin product manager endpoints and customer user endpoints.
  • product inventory management: CRUD (create, read, update, and delete) operations on products in inventory by an authorized product manager.
  • In-app shopping: CRUD operations on items in cart and also a secure payment processing.
  • crossplatform-shopping: this feature extends your search to products on jumia and makes it possible to navigate products from jumia on the application.

table of content

contributing

follow the following steps to contribute to this project.

  1. fork the repository by clicking the icon on the top right corner of the screen.
  2. contribute to project.

Getting started.

prerequisites
  • node version 16.0 or above.
  • redis-server

to get started with this project:

  1. visit https://nodejs.org/en/download to install latest version of nodejs on your computer
  2. visit https://redis.io/docs/install/install-redis/ for instructions on how to install redis-server on your OS
  3. run `npm install`
  4. setup environment variables
  5. run `sudo service redis-server start` to start redis-server.
  6. run `npm run Dev` to get started in development mode

Developer documentation

reference the developer documentation for api usage.

About

gadget-x rest api

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors