nodejs for everything Node version manager (nvm) to install node git monorepo for housing separate packages within a single repository (see ./services and ./packages) pnpm for package management and workspaces (separate node packages.) docker-compose for containerized development Komodo for deployments ggshield for preventing accidental git commits containing secrets direnv for loading .envrc Graphile Worker for work queue, cron nano-spawn or execa to run any non-node programs like yolo or Postgres for data storage S3 for media storage Domain Driven Development Test Driven Development 12 Factor App