• Developer screen
  • Feature flagging
    • Allow switching backend on-the-fly without rebuilding
  • Smoke testing backend on the first connection
  • Pinging to BE once in a minute or so, keep-alive check
  • gettext-style of i18n
  • RPC with schema and introspection + protocol negotiation
  • Thin application layer on top of a database. No ORM.
    • Expose DB to the client with proper rate-limiting, row-level security, concurrency handling
  • Include git version at runtime by having an autogenerated file that is imported by the main code. The file is added to .gitignore.
    • git describe --tags
    • export const VERSION_STRING = GIT_VERSION_STRING || 'ERR_VERSION_UNKNOWN'
  • Send app identification string to server together with every request
    • App name
    • Version, build code
    • Platform