Skip to content
GitHub Action edited this page Mar 16, 2024 · 33 revisions

Welcome to The Blue Alliance Wiki! Here are some helpful pages -

Site Architecture & Design Docs

A guide to understanding how TBA works internally.

Setup

Start here! Guidelines for contributing to The Blue Alliance.

A step-by-step guide for getting The Blue Alliance up and running locally. For new contributors, this should be your first stop.

A guide for configuring The Blue Alliance repo locally in order to streamline development. This step is optional as it is not required for working in The Blue Alliance repo, but it will be helpful for contributors that plan to do frequent work in the repo.

If you are planning on developing using WSL, there are a few extra steps you'll need to take. This guide was not tested on WSL 1; we recommend updating to WSL version 2.

Developing

Documentation on configuration option for a local development container using the tba_dev_config.json file.

Documentation on running tests, lints, and type checks.

Helpful commands when developing in The Blue Alliance codebase. This section includes things like how to run tests, how to seed your development environment with production data, and more!

Running notes on how to migrate code from the Python 2 codebase to the new Python 3 codebase.

common

Details on the shared set of code used by services in The Blue Alliance. common generally contains code like database models, constants, sitevars, etc. that multiple services may need.

The User model and how to fetch the currently logged in user.

Details on Sitevars - aka database backed configuration variables.

Details on using the defer method to enqueue tasks to be executed asynchronously, along with notes on task queues in The Blue Alliance codebase.

Details on how to read/write files locally and upstream.

Services

Notes for working effectively and safely in the web service.

Deployment

Notes on setting up a Google App Engine instance or Firebase project for testing upstream.

Steps for setting up automatic deployment via Github Actions.

Manual Deployment

TODO

Maintainers

Runbook for maintainer tasks. A catch-all of administration information.

The years start coming and they don't stop coming. Here is a collection of notes for preparing/supporting a new season.