Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Sistema dedicado al reporte ciudadano y gestión de incidencias de mascotas

Notifications You must be signed in to change notification settings

ogticrd/alfa-webapp

Repository files navigation

ALFA MVP

MVP backend-first para reportes de incidencias relacionadas con animales, con portal publico lean y backoffice minimo. La documentacion en docs/ es la fuente de verdad de alcance, API y modelo de datos.

Estructura del repositorio

  • apps/api API REST en NestJS (backend)
  • apps/web app Next.js (frontend)
  • docs documentos de producto/arquitectura/API y criterios de aceptacion

Requisitos

  • Docker + Docker Compose
  • Node.js (opcional para desarrollo local fuera de Docker)

Inicio rapido (Docker)

docker compose up --build
  • API: http://localhost:3001/api/v1
  • Swagger: http://localhost:3001/api/docs
  • Web: http://localhost:3000
  • MinIO (S3 local): http://localhost:9000 (console: http://localhost:9001)
    • Bucket precreado: alfa-evidence
    • Console login: alfa / alfa-minio (verifica el bucket en Buckets)
    • CLI (AWS): AWS_ACCESS_KEY_ID=alfa AWS_SECRET_ACCESS_KEY=alfa-minio aws s3 ls --endpoint-url http://localhost:9000
    • Script: ./scripts/verify-minio.sh

Configuracion de entorno

Copia .env.example a .env y ajusta DATABASE_URL.

  • Postgres local (por defecto en Docker Compose):
DATABASE_URL=postgres://alfa:alfa@localhost:5432/alfa
  • MinIO (S3 local por defecto en Docker Compose):
S3_ENDPOINT=http://localhost:9000
S3_ACCESS_KEY=alfa
S3_SECRET_KEY=alfa-minio
S3_BUCKET=alfa-evidence
S3_REGION=us-east-1
  • Tests (override opcional):
S3_ENDPOINT_TEST=http://localhost:9000
S3_ACCESS_KEY_TEST=alfa
S3_SECRET_KEY_TEST=alfa-minio
S3_BUCKET_TEST=alfa-evidence
S3_REGION_TEST=us-east-1
  • Supabase (ejemplo):
DATABASE_URL=postgresql://postgres:<password>@db.<project-ref>.supabase.co:5432/postgres?sslmode=require

Flujo TDD

Este proyecto usa TDD: empieza con un test fallando, implementa, corre tests, corrige hasta verde y solo entonces marca la tarea como completa.

Desarrollo API

  • Prefijo global: /api/v1
  • Swagger habilitado en /api/docs

Prisma

Desde apps/api:

npm run prisma:migrate:dev
npm run prisma:migrate:deploy
npm run prisma:generate

Tests

E2E en Docker:

docker compose -f docker-compose.test.yml up --build --abort-on-container-exit

Estado del proyecto

Ver docs/STATUS.md para tareas completas y pendientes.

About

Sistema dedicado al reporte ciudadano y gestión de incidencias de mascotas

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /