Introducción
Descripción
Este proyecto es una API de Clima Local implementada con Laravel 12, que ofrece un servicio RESTful para obtener información climática basada en coordenadas geográficas.
A diferencia de las soluciones que dependen de APIs externas, esta API consulta directamente una base de datos local que contiene registros históricos y precargados de datos climáticos.
La carga de datos en la base de datos se realiza mediante un proceso automatizado con N8N, el cual consulta periódicamente la API de CONAGUA y persiste la información localmente. La aplicación sigue principios de diseño limpio, utilizando Laravel Actions para la encapsulación de la lógica de negocio y Laravel API Resources para una transformación y presentación de datos consistente y limpia.
Objetivo
Proveer un servicio confiable y eficiente para la consulta de información climática basada en coordenadas geográficas, a través de una API RESTful construida con Laravel 12. Esta solución permite acceder a datos meteorológicos históricos y actualizados sin depender de fuentes externas, gracias a una base de datos local alimentada automáticamente desde la API de CONAGUA mediante N8N. El sistema garantiza respuestas consistentes y estructuradas, siguiendo principios de diseño limpio que facilitan su mantenimiento, escalabilidad e integración con otras aplicaciones o servicios institucionales.
Características Principales
- Obtención de datos climáticos actuales desde una base de datos local.
- Organización de la lógica de negocio mediante Actions.
- Serialización de respuestas API limpia y consistente con API Resources.
Tecnologías Utilizadas
- Laravel 12: Framework de PHP para el desarrollo web.
- PHP 8.2+.
- Composer: Gestor de dependencias de PHP.
- MySQL: Base de datos (configurada en
.env). - Carbon: Para el manejo de fechas y horas.