# Events App Calendar and event booking service for the Rose Ash cooperative platform. ## Overview The events app provides calendar-based event booking with flexible slot management. It runs as a standalone Quart microservice, part of the multi-app coop architecture. ## Structure ``` app.py # Application factory and entry point events_api.py # Internal JSON API (server-to-server, CSRF-exempt) bp/ # Blueprints calendars/ # Calendar listing calendar/ # Single calendar view and admin calendar_entries/ # Calendar entries listing calendar_entry/ # Single entry view and admin day/ # Day view and admin slots/ # Slot listing slot/ # Single slot management ticket_types/ # Ticket type listing ticket_type/ # Single ticket type management templates/ # Jinja2 templates _types/ # Feature-specific templates ``` ## Running ```bash # Set required environment variables (see .env.example) export APP_MODULE=app:app hypercorn app:app --bind 0.0.0.0:8000 ``` ## Docker ```bash docker build -t events . docker run -p 8000:8000 --env-file .env events ``` ## Notes - This app does **not** run Alembic migrations. Database schema is managed by the blog app. - Internal API endpoints under `/internal/events/` are used by the cart app for cross-service communication. - Depends on shared packages (`shared/`, `models/`, `config/`) from the main coop monorepo.