How yangzhang0215/xauat-autolib works
This repository is a personal library-booking tool, with a standalone seminar-room GUI as its recommended user workflow and Python CLIs for seminar rooms and ordinary seats. The GUI lets a user save account, participant, schedule, and room-priority settings; discover today’s rooms; then reserve immediately or wait for a trigger time. The seminar workflow also covers room availability and reservation constraints, while the unified CLI supports seat selection and booking. The graph includes documented capabilities whose exact internal wiring was not sampled, but omits uncertain links; the GUI service and some CLI internals are only partially evidenced.
Main entry points: commands.py CLI commands · context.py Command context · api.py Library API client · app.py Desktop app
Components 20
Seminar GUI
- Desktop app
python/libspace_cli/seminar_desktop/app.py - GUI views
python/libspace_cli/seminar_desktop/views.py - GUI controller
python/libspace_cli/seminar_desktop/controller.py - GUI service
python/libspace_cli/seminar_desktop/service.py
Seminar Booking
- Seminar tool
python/libspace_cli/seminar_standalone.py - Room rules
python/libspace_cli/seminar_service.py
Seat CLI
- Unified CLI
python/libspace_cli/cli.py - CLI commands
python/libspace_cli/commands.py - Seat reservation
python/libspace_cli/reserve_service.py - Seat selection
python/libspace_cli/seat_selection.py - Member lookup
python/libspace_cli/member_seat.py
Shared Runtime
- Library API client
python/libspace_cli/api.py - CAS login
python/libspace_cli/authserver.py - Configuration
python/libspace_cli/config.py - Runtime paths
python/libspace_cli/runtime_paths.py - Session state
python/libspace_cli/state.py - Command context
python/libspace_cli/context.py - Reservation crypto
python/libspace_cli/crypto.py
Other components
- Library user
- Library booking service
Connections 22
- Library user → Desktop app: uses
- Desktop app → GUI views: creates views
- Desktop app → GUI controller: dispatches actions
- GUI controller → GUI service: runs tasks
- GUI service → Seminar tool: runs tool
- Library user → Unified CLI: invokes
- Unified CLI → CLI commands: dispatches
- CLI commands → Command context: creates context
- Command context → Configuration: loads settings
- Command context → Runtime paths: resolves paths
- Command context → Session state: loads and saves
- Command context → Library API client: creates client
- CLI commands → Seat reservation: runs booking
- Seat reservation → Seat selection: selects seat
- Seat reservation → Library API client: queries and confirms
- CLI commands → Member lookup: resolves members
- Seminar tool → Library API client: queries and books
- Seminar tool → Room rules: uses room rules
- Library API client → Library booking service: sends requests
- Library API client → CAS login: authenticates
- CAS login → Library booking service: requests login
- CLI commands → Reservation crypto: encrypts requests