2025 Public Version
This repository contains the code for Team 1678's data-processing Server. For an in-depth explanation of our scouting system, please see our 2025 Whitepaper.
All tasks and projects are stored in the task board.
Please link your issue tag to any pull request you create! Simply add Resolves #<issue number>
to the pull request description.
-
Install Git, Python, and Visual Studio Code. On Windows computers, install WSL to work with server—only Linux and MacOS operating systems are supported.
-
Fork the server repository and clone it into a safe location (for Windows users, this must be within WSL—see Running Server—Operating WSL).
Install the following external tools. Follow ALL directions listed on each website EXACTLY.
-
-
Type
mongosh
in your terminal to test if this installation worked. If it opens up the MongoDB Shell, everything works.(For Linux users only) If you get the
MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017
error, run this command block:sudo service mongod stop sudo apt-get purge mongodb-org* sudo rm -r /var/log/mongodb sudo rm -r /var/lib/mongodb sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list sudo apt-get update sudo apt-get install -y mongodb-org sudo service mongod start mongosh
-
-
In the
data/
folder, create an empty text file namedcompetition.txt
and a folder namedapi_keys/
. Withinapi_keys/
, create two text files namedtba_key.txt
andcloud_password.txt
.- Ask your Back-End Lead for the values of
tba_key.txt
andcloud_password.txt
; these are necessary for server to run.
- Ask your Back-End Lead for the values of
-
Run
src/setup_environment.py
.-
If this command fails, run the following command block to set everything up manually:
python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt
If
pip install -r requirements.txt
fails, install all packages inrequirements.txt
manually. -
Remember to activate the virtual environment before coding! On bash/zsh, run
source .venv/bin/activate
.
-
-
Run
./src/start_mongod.py
.- (For Linux users only) If the command returns an error (such as
FileNotFoundError: no file named mongod
), runsudo service mongod start
. If that doesn't work, reinstall MongoDB (see External Tools).
- (For Linux users only) If the command returns an error (such as
-
Run
src/setup_competition.py
.- When asked for a competition code, enter
2024arc
. DO NOT add the database to the cloud.
- When asked for a competition code, enter
To run the server in production mode, run export SCOUTING_SERVER_ENV=production
. To take the server out of production mode, run unset SCOUTING_SERVER_ENV
.
- Open your Windows terminal and run the
wsl
command. - Run
cd
, thencode <path to your server clone>
. - Within VSCode, open a new Ubuntu terminal.
To close WSL, run wsl.exe --shutdown
.