Skip to content

JorgeDataware/Invernadero-Back

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌱 API SCCI – Sistema de Clima Controlado para Invernaderos

La API SCCI es el backend que gestiona usuarios, autenticación, invernaderos y la lectura de datos de sensores provenientes de Supabase.
Su propósito es servir como núcleo de un sistema integral capaz de monitorear variables ambientales de un invernadero en tiempo real.


🚀 Funcionalidad Principal

La API permite:

👥 Gestión de usuarios

  • Registro de usuarios
  • Autenticación con JWT
  • Verificación de cuenta por correo
  • Actualización de datos
  • Cambio de contraseña
  • Baja lógica

🏡 Gestión de invernaderos

  • Registro de invernaderos
  • Actualización de nombre/ubicación
  • Eliminación
  • Consulta de invernaderos propios

🌡 Lectura de sensores (a través de Supabase)

  • Datos del lado frío (temperatura, humedad, luminosidad)
  • Datos del lado caliente (temperatura, humedad, luminosidad)

🔐 Seguridad

  • Autenticación con JWT
  • Políticas por roles (Administrador, Usuario)
  • Validación exhaustiva de entradas con FluentValidation

🐳 Ejecución con Docker

🔸 Obtener la imagen pública

docker pull sscrip/invernadero-back:latest

🔸 Ejecutar el contenedor

docker run -d -p 5000:8080 --name invernadero-api sscrip/invernadero-back:latest

La API quedará disponible en:
http://localhost:5000

Si tu despliegue usa HTTPS:

docker run -d   -p 5000:8080   -p 5001:8081   --name invernadero-api   sscrip/invernadero-back:latest

🛠 Tecnologías y Dependencias

🧩 Backend

  • ASP.NET Core 8 Web API
  • C# 12
  • PostgresSQL Entity Framework Core 8.0.4
  • Dapper 2.1.66
  • JWT Bearer Authentication 8.0.20
  • FluentValidation 12.1.0
  • AutoMapper for Dependency Injection 12.0.1

🗄 Base de datos

  • PostgreSQL
  • Npgsql

☁ Integración externa

  • Supabase REST API

📧 Servicios adicionales

  • MailKit 4.14.1
  • Onnx Runtime for ML 1.23.2

▶️ Formas de Ejecutar el Proyecto

✔ 1. Desde Docker

docker pull sscrip/invernadero-back:latest
docker run -p 5000:8080 sscrip/invernadero-back:latest

✔ 2. Desde Visual Studio / Rider

  1. Abrir solución .sln
  2. Seleccionar proyecto API como startup
  3. Ejecutar con F5

✔ 3. Desde consola

dotnet run

✔ 4. Docker Compose

Obtener y ejecutar el archivo docker-compose.yml desde este repositorio:

curl -o docker-compose.yml https://github.com/JorgePerea172210/Invernadero-Back/edit/master/docker-compose.yml
docker compose up -d

📚 Documentación Técnica Completa

👉 Docs.md

Incluye:

  • Arquitectura general
  • EF Core
  • Dapper
  • FluentValidation
  • Patrón Result
  • Módulo User
  • Módulo Greenhouse
  • DTOs y AutoMapper

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published