Skip to content
This repository has been archived by the owner on Feb 25, 2023. It is now read-only.
/ poly Public archive

Backing for online shop in Rust, F# and Go.

Notifications You must be signed in to change notification settings

tonky/poly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Practice project where Rust, F# and Go meet. Think implementing popular online store backend, using A.n as inspiration.

Should have:

  • Tracing
  • Monitoring
  • Integration testing
  • Local dev environment
  • Independently scalable services(e.g. black friday)
  • Versioning
  • Health checking

Nice to have:

  • Automated deployments of master branch
  • OLAP to analyze demand - predict traffic and most popular products
  • High load shimulation

API Gateway (Go)

  • Authentication
  • Authorization
  • Proxy for UI

Account

  • Orders history
  • Order info

Store front

  • Availability?
  • Expected at?

Cart

  • Check
  • Place order

Warehouse

  • Availability
  • Upcoming shipments

Shipping

  • Ship before date

Billing & returns

  • Bill on shipping
  • Handle failed billing
  • Track

DB

  • Products info: name, price

Email service

  • Order created
  • Order billed
  • Order shipped

Background worker

  • Update release date availability
  • Update warehouse availability

======================= Tooling?

skaffold: curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v0.39.0/skaffold-linux-amd64
&& chmod +x skaffold
&& sudo mv skaffold /usr/local/bin

minikube: curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && chmod +x minikube mk start --vm-driver kvm2

local registry: docker run -d -p 5000:5000 --restart=always --name registry registry:2

https://kind.sigs.k8s.io/docs/user/quick-start/

KUBECONFIG="$(kind get kubeconfig-path --name="kind")" skaffold --port-forward dev

kubectl port-forward service/gw-lb 8888:8080

About

Backing for online shop in Rust, F# and Go.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published