Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Juan-Carlos-Cruz/robotaxi-zoox/llms.txt

Use this file to discover all available pages before exploring further.

Robotaxi Zoox ships with bootstrap scripts that handle the entire environment setup without you touching a package manager directly. The scripts auto-detect a usable Python version, create an isolated virtual environment named after that version, install pygame, and validate that tkinter and a graphical display are available — all in a single command. On Linux the scripts also attempt to resolve system-level pygame dependencies when pip alone is not enough.

Requirements

Before running the setup scripts, confirm your environment meets these requirements:
  • Python 3 — the bootstrap scripts probe for python3, python, and py in that order.
  • tkinter — used for the map file-picker dialog; bundled with the standard CPython installers on Windows and macOS. On Debian/Ubuntu install it with sudo apt install python3-tk.
  • pygame 2.6.1 — installed automatically by the scripts; requires SDL2 system libraries on Linux.
  • Graphical display — a desktop session (X11, Wayland, or Windows/macOS native). Required for the GUI; not required for make test.
Run the setup step once to create the virtual environment and install dependencies, then use make run every time you want to launch the application:
make setup
make run
If you prefer to invoke the script directly without make:
bash scripts/setup.sh
bash scripts/run.sh
On macOS you can also double-click launchers/macos/run.command from Finder, or run it from the terminal:
./launchers/macos/run.command

Manual Installation

If you prefer to manage the environment yourself, or if the bootstrap scripts are not suitable for your setup, follow these steps:
1

Create a virtual environment

python3 -m venv .venv
2

Activate the virtual environment

source .venv/bin/activate
3

Install dependencies

pip install pygame==2.6.1
tkinter is part of the Python standard library and does not need to be installed via pip. If it is missing on your system, install it through your OS package manager (e.g. sudo apt install python3-tk on Debian/Ubuntu).
4

Launch the application

python main.py

Validate Your Setup

Two make commands are available to verify the environment before or after running the full application.

make doctor

Runs a diagnostic check across all required components:
make doctor
The doctor script reports the status of:
  • Python interpreter version and path
  • tkinter availability
  • pygame availability and version
  • Graphical environment detection
If make doctor reports that tkinter is missing, the map file-picker dialog will fail at startup. Install the python3-tk system package (Linux) or reinstall Python with the “tcl/tk” component selected (Windows installer).

make test

Runs the full test suite — Grid model, all three uninformed algorithms, and both informed algorithms — without opening any window:
make test
This is the fastest way to confirm that all search logic is working correctly after a fresh clone or a code change.

Headless Environments

If you are working on a remote server, a CI runner, or any environment without a graphical display, the GUI will not launch. Use make test to validate all search algorithm logic entirely from the terminal — no display required. The test suite exercises BFS, DFS, UCS, Greedy Best-First, and A* against the included map files and reports pass/fail for each.

Regenerating Audio Assets

The audio/ directory contains pre-generated .wav files and is committed to the repository. If the audio files are missing or you want to regenerate them from scratch, run:
python3 scripts/generate_audio_assets.py
This recreates all six sound files: lofi_ambient.wav, road_loop.wav, pickup_horn.wav, traffic_horn.wav, ui_click.wav, and finish_jingle.wav. If pygame.mixer cannot initialise on your machine — for example in a headless environment — the application will still run correctly with audio silently disabled.

Build docs developers (and LLMs) love