Welcome to the public repository for Team 1678 Software Scouting's Server! Feel free to check out our 2024 Scouting Whitepaper and the 2024 public Software Scouting repositories for our Match Collection, Viewer, Server, Schema, Stand Strategist, Pit Collection, OverRate, and Pit Display apps.
For a full in-depth guide, please view this document.
-
To set up the
schema
submodule, rungit submodule init
, and thengit submodule update
. -
Run
src/setup_environment.py
when you clone the repository. This will install a virtual environment in the main project directory. It will then install the external dependencies into this environment from PyPI usingpip
. (This will NOT install any non-python dependencies such as MongoDB and Android Debug Bridge as that process depends on your distribution. You will have to do that manually).-
Debian-based systems do not install
venv
orpip
with python by default; usesudo apt install
to installpython3.8
,python3-venv
andpython3-pip
. -
There is also a directory called
data/
that needs specific files likecompetition.txt
and a directory calledapi_keys/
which containstba_key.txt
andcloud_password.txt
. Thecompetition.txt
file is created bysrc/setup_competition.py
and the two keys need to be added manually. -
When testing from the command line, remember to activate the virtual environment (
source .venv/bin/activate
on bash/zsh). Instructions for other shells, along with more in-depth information about Python virtual environments, can be found here. Note: currently, only Linux and MacOS operating systems are supported. For Windows computers, please use WSL to work with server.
-
To run the server in production mode on Linux or MacOS make sure to run export SCOUTING_SERVER_ENV=production
. To take the server out of production mode, run unset SCOUTING_SERVER_ENV