Welcome to Automatización Backend
Automatización Backend is a powerful FastAPI-based system designed to automate classroom scheduling and reservation management for academic institutions. Built with modern design patterns and comprehensive constraint validation, it streamlines the complex process of managing academic schedules, room assignments, and resource allocation.Quick Start
Get up and running with the API in minutes
API Reference
Explore the complete API documentation
Architecture
Learn about the system design and patterns
Guides
Step-by-step guides for common tasks
Key Features
Room Availability
Intelligent room availability checking with multi-constraint validation including capacity, compatibility, and occupancy checks
Reservation Management
Complete reservation lifecycle management with state transitions (reservado, ocupado, cancelado)
Schedule Generation
Automated schedule creation using the Builder pattern for flexible horario configuration
Constraint System
Chain of Responsibility pattern for validating complex scheduling constraints
Semester Orchestration
Full semester-wide schedule management and validation
Design Patterns
Built with Facade, Builder, Factory, and Chain of Responsibility patterns
Use Cases
The Automatización Backend system is ideal for:- Universities and Colleges: Managing complex class schedules across multiple buildings and campuses
- Training Centers: Coordinating room assignments for courses with specific resource requirements
- Educational Institutions: Automating the scheduling process while respecting institutional constraints
- Academic Administrators: Reducing manual effort in schedule planning and conflict resolution
How It Works
The system operates through a REST API that provides endpoints for:- Room Availability: Query available rooms for a specific subject, time slot, and student count
- Reservations: Create, update, and manage room reservations with automatic validation
- Schedule Generation: Build complete schedules using the Builder pattern with constraint validation
- Data Management: Access catalog data including subjects, rooms, instructors, and resources
All operations are validated through a comprehensive constraint system that ensures schedule integrity, prevents conflicts, and maintains data consistency.
Next Steps
Install and Configure
Follow the installation guide to set up the API server and configure your environment
Try the Quickstart
Complete the quickstart tutorial to make your first API request
Understand the Architecture
Read the architecture documentation to learn how the system works
Explore the API
Browse the API reference to see all available endpoints