Scrapes the Gartan Availability system and provides a REST API for crew and appliance availability. This tool allows for both real-time queries and historical scheduling analysis by calculating availability durations.
The project documentation has been organized into three sections to best address the needs of LLMs, local developers, and system administrators.
-
- Audience: Large Language Models (LLMs) assisting with development, and human contributors.
- Content: Project aims, core architecture overview, database structures, business rules (TTR and appliance minimum staffing), and instructions on how to run tests.
-
- Audience: Users configuring and running the scraper on their local machine.
- Content: Installation requirements, virtual environment setup, configuring
.envcredentials, running the CLI (including--no-cacheand--fresh-startflags), and starting the local Flask server for API testing.
-
- Audience: Users deploying the bot on an always-on server (e.g., Raspberry Pi 5).
- Content: Production Docker configurations (
docker-compose.yml), managing environment variables (DATA_PATH,USER_ID, etc.), deploying via Docker Compose, updating Docker images automatically, and viewing production logs.
Once running, the standard base path is http://localhost:5000/v1/.
Crew:
# List all crew (id, name, display_name)
curl http://localhost:5000/v1/crew
# Status of Crew Member ID 1 ("Are they available?")
curl http://localhost:5000/v1/crew/1/available
# How long are they available? (e.g. "2.5h")
curl http://localhost:5000/v1/crew/1/durationAppliances:
# Is this engine available based on current manning rules?
curl http://localhost:5000/v1/appliances/P22P6/available
# How long is the engine available?
curl http://localhost:5000/v1/appliances/P22P6/durationdocs/: Guides explaining architectural intent to usage logic.
scripts/: Manual excel debug explorers (for deep inspection).logs/: Diagnostic and performance logs.tests/: Automated test suite.