GithubHelp home page GithubHelp logo

rnapoles / ecommerce-impl Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 924 KB

A simple e-commerce project exercise implementation in diferent programming languages and techs. Using a Clean Architecture.

License: MIT License

JavaScript 11.73% Batchfile 1.49% PHP 85.41% Twig 1.20% CSS 0.17%

ecommerce-impl's Introduction

ecommerce-impl

A simple e-commerce project exercise implementation in diferent programming languages and techs. Using a Clean Architecture principles.

Data model

Screenshot of ecommerce

Project architecture

  • Independent of database engine
  • Level 2 of Richardson Maturity Model
  • Use JWT
  • Use Meilisearch as search engine
  • Use Redis as cache
  • Use Rabbitmq as message queue

Routes

Method Path Role Required Description
POST /api/login Anonymous Auth
POST /api/product/create Editor or Admin Create a new product
DELETE /api/product/delete/{id} Editor or Admin Delete a Product
GET /api/product/{sku} User Get a product by Sku(Stock Keeping Unit) property
PATCH /api/product/update/{id} Editor or Admin Update a product using Id property
GET /api/product/search User Search a product
GET /api/product/search-total User Get total of product that match with a search
GET /api/product/out-stock Editor or Admin List Products out of stock
POST /api/sale/create User Sale a product
GET /api/sale/list-products User List all products that has been sale
GET /api/sale/calc-profit Editor or Admin Get the profit of sales
POST /api/user/register Anonymous Register a new user
GET /api/user User Get user info using the JWT token
PATCH /api/user/update/{id} Admin Update a user
GET /api/user/list Admin Get the user list

System design

Screenshot of ecommerce

Run project

Run integration tests

cd nodejs-integration-tests
yarn
yarn start

Todo

  • finish the OpenAPI v3 specification
  • implement a prediction server
  • implement a recomendation engine
  • implement a health check API
  • create an implementation in SpringBoot
  • create an implementation in ASP.NET Core
  • create an implementation in Golang
  • create an implementation in Ruby on Rails
  • create an implementation in Django
  • create an implementation in Flask
  • create an implementation in Express
  • create an implementation in Laravel

ecommerce-impl's People

Contributors

rnapoles avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.