Este proyecto es una aplicación web diseñada para el control y gestión agraria de fincas. Originalmente desarrollada utilizando el stack MERN (MongoDB, Express.js, React, Node.js), ha sido migrada a una arquitectura basada en PHP, Laravel y FilamentPHP para mejorar el manejo de relaciones en la base de datos, resolver problemas de CORS y optimizar la comunicación entre el backend y el frontend.
- Gestión de Fincas: Creación y administración de fincas agrícolas.
- Control de Producción: Registro y seguimiento de la producción anual por finca.
- Sistema de Riego: Monitoreo y gestión de los sistemas de riego implementados.
- Tratamientos: Registro y seguimiento de los tratamientos aplicados a cada finca.
- Pluviometría: Sección dedicada al conteo y registro de lluvias.
- Backend: PHP con Laravel
- Frontend: FilamentPHP
- Base de Datos: MySQL (o la base de datos configurada con Laravel)
- Backend: Node.js con Express.js
- Frontend: React
- Base de Datos: MongoDB
La decisión de migrar de MERN stack a Laravel y FilamentPHP se basó en los siguientes factores:
- Complejidad de Relaciones: Mejorar el manejo de relaciones complejas entre entidades en la base de datos.
- Problemas de CORS: Eliminar los desafíos relacionados con las políticas de mismo origen (CORS).
- Comunicación Backend-Frontend: Optimizar y simplificar la interacción entre el backend y el frontend.
- Desarrollo Rápido: Aprovechar las capacidades de Laravel y FilamentPHP para un desarrollo más rápido y eficiente.
- Clonar el repositorio
- Instalar dependencias:
composer install - Configurar el archivo
.env - Ejecutar migraciones:
php artisan migrate - Generar la clave de cifrado:
php artisan key:generate - Eliminar el cache de la configuracion:
php artisan config:clear - Eliminar el cache de la aplicacion:
php artisan cache:clear - Iniciar el servidor:
php artisan serve
Se debe establecer en el .env DB_DATABASE=ruta/absoluta/de/la/ddbb
- Desactivar el debugger en el .env:
APP_DEBUG=false - Cachear configuracion, rutas y vistas:
php artisan config:cache && php artisan route:cache && php artisan view:cache - Utilizar bases de datos mas robustas que SQLite :)
Acceder a la aplicación a través del navegador y utilizar la interfaz de FilamentPHP para gestionar las fincas, producciones, riegos, tratamientos y registros de lluvia.
Las contribuciones son bienvenidas. Por favor, abra un issue para discutir los cambios propuestos antes de realizar un pull request.