shopping-cart

module
v0.0.0-...-ffb043f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 21, 2022 License: MIT

README

Shopping Cart

Technology Stack

Project ini menggunakan technology stack

  • PostgreSQL (main db)
  • Redis (cached)
  • Elasticsearch (optional: used for monitoring logging)
Feature

Adapun fitur-fitur yang tersedia pada project ini :

  • User
    • Login
    • Register
    • Forgot Password
  • Product
    • List Product
    • Product Detail
  • Cart
    • Add to cart
    • Add quantity product
    • Remove Product
    • Decrease quantity product
    • Show Cart
  • Checkout
    • List available Courrier
    • List Available Payment Method
    • Finish Checkout (convert Cart to Order)
Design Pattern
1. Programming on Interface
  • Mempunyai 4 layer : usecase (bisnis logic), model (data structure), controller (handler endpoint), dan repository (query layer). Masing-masing layer hanya bisa meng-akses melalui interface.
2. Injection using Factory Method Pattern
  • Injeksi ini digunakan untuk menyambungkan dari satu package ke package lain melalui interface.
3. Minimize Dependency

Directories

Path Synopsis
app
adapter/dbc
Package dbc is (Database Connection) is used for create to represents low level database interfaces in order to have an unified way to access database handler
Package dbc is (Database Connection) is used for create to represents low level database interfaces in order to have an unified way to access database handler
container/datastorefactory
Package datastorefactory menggunakan pola metode factory untuk membuat database handler Datastore menyediakan akses data untuk package `model` hanya menggunakan satu method `Build()` untuk membuat berbagai tipe datastore
Package datastorefactory menggunakan pola metode factory untuk membuat database handler Datastore menyediakan akses data untuk package `model` hanya menggunakan satu method `Build()` untuk membuat berbagai tipe datastore
container/repositoryfactory
Package repositoryfactory menggunakan factory method pattern untuk membuat tipe yang kongkret.
Package repositoryfactory menggunakan factory method pattern untuk membuat tipe yang kongkret.
container/usecasefactory
Package usecasefactory menggunakan design pattern factory method untuk membuat berbagai macam bisnis logic masing-masing usecase membutuhkan factory sendiri
Package usecasefactory menggunakan design pattern factory method untuk membuat berbagai macam bisnis logic masing-masing usecase membutuhkan factory sendiri
src
api/controller
Package controller adalah top level dari package controller/handler dari routing package untuk membuat response sukses atau gagal berdasarkan bisnis logic yg dibutuhkan
Package controller adalah top level dari package controller/handler dari routing package untuk membuat response sukses atau gagal berdasarkan bisnis logic yg dibutuhkan
api/middleware
Package middleware adalah top level package dari middleware top level package hanya menentukan interface.
Package middleware adalah top level package dari middleware top level package hanya menentukan interface.
domain/usecase
Package usecase adalah entry point untuk application logic.
Package usecase adalah entry point untuk application logic.
repository/rdb
Package rdb adalah sub-package dari repository package.
Package rdb adalah sub-package dari repository package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL