Jose Selesan 785d54df7e feat: add group waitlist functionality
- Introduced GroupWaitlistEntry model in Prisma schema to manage waitlisted users for groups.
- Implemented API route to add users to the group waitlist with validation.
- Enhanced attendee creation logic to handle group capacity and waitlisting scenarios.
- Added new problem builders for handling waitlist-related errors.
- Updated frontend to support waitlist interactions, including modals for capacity warnings.
- Created tests for waitlist functionality, ensuring proper handling of full groups and existing waitlist entries.
2026-09-22 16:28:54 -03:00
2026-09-04 16:49:24 -03:00
2026-09-17 18:58:00 -03:00
2026-09-04 16:49:24 -03:00
2026-09-17 18:58:00 -03:00

Gruperly

Monorepo de Gruperly. Consulta stack.md para arquitectura y especificaciones.

Stack

  • Package manager: Bun 1.4
  • Monorepo: bun workspaces + Turborepo
  • Backend (apps/backend): Bun + Hono (Bun.serve) + Prisma + PostgreSQL + Better Auth
  • Frontend (apps/web): React 19 + TypeScript + TanStack Router + TanStack Query + Tailwind v4
  • Shared (packages/shared): esquemas Zod, tipos, Result y Problem Details compartidos

Estructura

apps/
  backend/  # Backend (Bun + Hono + Prisma)
  web/      # Frontend (React PWA)
packages/
  shared/   # Esquemas Zod y tipos compartidos
  config/   # tsconfig base compartido

Comandos

bun install                            # Instala dependencias de todos los workspaces
bun dev                                # Levanta la API (4000) y la web (6173) vía Turborepo
bun run typecheck                      # tsc --noEmit en todos los paquetes
bun run lint                           # biome check (backend y shared)
bun --filter @gruperly/backend test    # bun test (backend)
bun --filter @gruperly/backend db:push   # Aplica el esquema de Prisma a la base de datos
bun --filter @gruperly/backend db:studio # Abre Prisma Studio

Setup de base de datos

  1. Crea una base PostgreSQL y copia apps/backend/.env.example → apps/backend/.env, ajustando DATABASE_URL.
  2. Ejecuta bun --filter @gruperly/backend db:generate y bun --filter @gruperly/backend db:push (o bun --filter @gruperly/backend db:migrate en desarrollo).
Description
No description provided
Readme 1.6 MiB
Languages
TypeScript 98.7%
CSS 1%
HTML 0.3%