1a1d9e18a887f4291e8420c7223372ca3b8b6fb8
Auracaster - Airport Announcement System
A modern web application for managing and broadcasting announcements throughout an airport. This system allows for quick and efficient communication with passengers in multiple areas and languages.
Project Structure
The project is organized into three main packages:
- auracaster_webui: The Streamlit frontend application for the announcement system.
- api_client: Client library for communicating with the backend API.
- mock_backend: A mock implementation of the backend API for development and testing.
Setup and Installation
Development Setup
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate -
Install the package in development mode:
pip install -e . -
Run the mock system (includes both frontend and backend):
auracaster-mock -
For frontend only (requires a running backend):
auracaster-webui
Docker
The project includes a Dockerfile for building a container that packages the webui and api_client components (without the mock backend).
Build the Docker image:
docker build -t auracaster:latest .
Run the container:
docker run -p 8501:8501 -e API_BASE_URL=http://backend-host:7999 auracaster:latest
Environment Variables
API_BASE_URL: URL of the backend API server (default: http://localhost:7999)
Features
- Create, update, and delete endpoint groups
- Make announcements to specific areas of the airport
- Monitor announcement status in real-time
- Support for multiple languages
- Predefined announcement templates for common scenarios
Description
Languages
Python
100%