Distribution tech stack

This document lists the technologies used by the Distribution team, what they are used for, and best practices for each within Distribution.

Also see internal infrasturcture and tools for specific infrastructure and tools.


Use cases: Services and applications

Best practices:


Use cases: Complex automation and scripting

Best practices:

  • We use Deno as our Typescript runtime instead of Node
    • Typescript is not a core part of our expertise, so Deno takes care of tooling and formatting
  • Adhere to deno fmt, add a CI workflow that validates the result of deno fmt --check
  • Avoid using third-party dependencies (try to stick to the standard library)
  • Scripts should be executable (chmod +x) and have some variation of #!/usr/bin/env deno run as the sha-bang


Use cases: Simple automation and scripting

Best practices:


Use cases: Infrastructure provisioning

Best practices:


Use cases: Deploying services


Use cases: Providing configuration for our deployment types (work in progress).