World Vibe Web
The distributed app store for vibe-coded projects. Browse, discover, and install open-source apps from across GitHub.
Gestión de barra de bebidas para eventos: venta, cobro, preparación, stock y cierre de caja.
Translation pending
CommerceTypeScript · PLpgSQLGitHub @LeoneBorsalinoOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗PWA para gestionar venta, cobro, preparación, stock y cierre de caja de una barra de bebidas en eventos y festivales. Pensada para usarse simultáneamente desde varios celulares/tablets (Caja, Frío, Caliente, Admin) con sincronización en tiempo real.
Primer evento cargado: Conciencia Solar — 13/09/2026 — UNLAM.
@ducanh2912/next-pwa)supabase/schema.sql
(tablas, seguridad por fila, funciones y realtime).supabase/seed.sql
(evento Conciencia Solar + productos + usuarios de staff con PIN).Project URL → NEXT_PUBLIC_SUPABASE_URLanon public key → NEXT_PUBLIC_SUPABASE_ANON_KEYservice_role key → SUPABASE_SERVICE_ROLE_KEY (¡secreta! nunca la
expongas en el frontend ni la subas a git)Copiá .env.example a .env.local y completá los valores:
cp .env.example .env.local
NEXT_PUBLIC_SUPABASE_URL=...
NEXT_PUBLIC_SUPABASE_ANON_KEY=...
SUPABASE_SERVICE_ROLE_KEY=...
SESSION_SECRET=... # generar con: openssl rand -base64 32
npm install
npm run dev
9999.9999111122223333#001.| Rol | Pantalla | PIN semilla |
|---|---|---|
| 💰 Caja | /caja — vender y cobrar | 1111 |
| 🧊 Frío | /frio — preparar pedidos del sector frío | 2222 |
| 🔥 Caliente | /caliente — preparar pedidos del sector caliente | 3333 |
| ⚙️ Administrador | /admin — todo lo anterior + eventos, productos, staff, cierre | 9999 |
sector_economico y sector_preparacion independientes (una recarga de
agua caliente factura como FRÍO pero se prepara en CALIENTE).order_items.unit_price); cambiar el precio de un
producto en Admin nunca reescribe ventas pasadas.stock_movements. Las recargas y los productos del
sector caliente están configurados sin control de stock unitario por
defecto.app/ Pantallas (App Router) y Route Handlers (app/api/**)
lib/ Lógica compartida: sesión, Supabase, cierre de caja, hooks
components/ Componentes de UI reutilizables
supabase/ schema.sql y seed.sql para crear la base de datos
public/ manifest.json, íconos de la PWA
Por decisión explícita del pedido original: sin facturación fiscal/AFIP, sin
factura electrónica, sin ningún reparto de dinero más allá del 70/30 del
sector caliente. La exportación a PDF se cubre con la vista imprimible
(Imprimir / PDF en Cierre de caja, usando "Guardar como PDF" del navegador)
en vez de un generador de PDF dedicado.