Collisteru / sg

Web app shell with a microservice architecture. K8s container orchestration. Tilt development. Typescript, React frontend service. Golang API service. Postgres db.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tandem

Install:

  1. Install Docker for Mac (v3.4.0)
  2. Install Kubectl (v1.21.1)
  3. Install Tilt (v0.20.8)
  4. Install Helm, brew install helm (v3.5.2)
  5. Install golang (go1.16.4)
  6. Install yarn (v1.22.10)

Setup

  1. Apply nginx ingress controller so that the ingress rules work.
  2. Run make vendor-all.
  3. Set environment type in Tiltfile (dev or staging, dev by default).
  4. Run tilt up. If dev navigate to http://localhost, else https://staging.grouphouse.io.

AWS Deployment

Deployment Docs

  1. Navigate to ./deployment
  2. Run terraform init to download providers.
  3. terraform plan
  4. terraform apply
  5. Update kubectl config: aws eks --region=us-west-1 update-kubeconfig --name=${cluster name}

Repo Tree

Docs denoted by all-caps filename

Community Code-Amendment Best Practices

  • Don't commit directly to master, make PRs.
  • PRs should be reviewed and be required to have a +1 from non-contributor to the PR.
  • PRs should have corresponding tests.
  • PRs should include documentation. Documentation should be kept with its relevant code to minimize drift.
  • Autogenerated code should not be committed.
  • Correct known trip-wires (little annoyances, mistakes, gotchas) immediately - quick fixes pay off dividends.
  • Prefix branch name with creator's initials.
  • As new items come up, add to TODO.
  • Maximize code reuse, minimize service directory size and complexity

About

Web app shell with a microservice architecture. K8s container orchestration. Tilt development. Typescript, React frontend service. Golang API service. Postgres db.


Languages

Language:Go 48.3%Language:TypeScript 20.7%Language:HCL 12.1%Language:JavaScript 5.8%Language:Python 2.5%Language:Shell 2.5%Language:CSS 2.4%Language:HTML 2.3%Language:Makefile 1.8%Language:Dockerfile 1.5%