Skip to main content

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:
  1. Room Availability: Query available rooms for a specific subject, time slot, and student count
  2. Reservations: Create, update, and manage room reservations with automatic validation
  3. Schedule Generation: Build complete schedules using the Builder pattern with constraint validation
  4. 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

1

Install and Configure

Follow the installation guide to set up the API server and configure your environment
2

Try the Quickstart

Complete the quickstart tutorial to make your first API request
3

Understand the Architecture

Read the architecture documentation to learn how the system works
4

Explore the API

Browse the API reference to see all available endpoints

Build docs developers (and LLMs) love