TpaParking
Find and book event parking near the stadium. Pay online, show your pass, skip the circling.
Register packages, print QR labels, notify via WhatsApp and track deliveries at your pickup point
AI summary · website content
CommerceEJS · JavaScriptGitHub @ManuelRuaEchalarOnlineOwner 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 ↗App web para paqueterías / puntos de entrega: registro de paquetes, QR por paquete, etiqueta térmica imprimible y escáner.
npm install
npm run dev # http://localhost:3000 (con recarga automática)
npm start
Requiere Node 22+. Lee las variables de .env (no se sube a git). La base de datos es Postgres en Supabase.
sql/schema.sql: tablas. Aplicar con npm run db:schema (se puede repetir sin romper nada).npm run db:migrar: copia los datos de la antigua base SQLite (data/app.db) a Postgres. Sólo si se quieren conservar esos datos.postgres.| Variable | Uso |
|---|---|
DATABASE_URL | URI del Transaction pooler de Supabase (puerto 6543). Caracteres especiales de la contraseña codificados (@ → %40). |
SESSION_SECRET | Clave para firmar la cookie de sesión. Obligatoria en Vercel. |
BASE_URL | Opcional. URL pública que se graba en los QR. Sin ella, en Vercel se usa el dominio de producción del proyecto (xxx.vercel.app). |
PORT | Sólo local (por defecto 3000). |
DATABASE_URL y SESSION_SECRET (Production y Preview).vercel.json fija la región cle1 (Cleveland), junto a la base en us-east-2.public/ los sirve la CDN de Vercel; views/ se incluye solo en la función.La cámara del navegador sólo funciona en
https://o enlocalhost. Si más adelante hay dominio propio, definirBASE_URLantes de imprimir etiquetas: la URL queda grabada en cada QR.
/ landing · /registro · /login/app paquetes (Por recibir / En el punto / Entregados + búsqueda)/app/registrar nuevo paquete → código P{punto}-00001 + QR/app/escanear QR con cámara o foto de la galería/app/paquete/:codigo ficha, cambio de estado, avisos por WhatsApp/app/paquete/:codigo/ticket etiqueta para impresora térmica 58/80 mm/q/:token destino del QR: exige sesión y que el paquete sea de ese punto