尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗App de networking social para eventos y fiestas en Mallorca. Sólo puedes ver y conectar con gente que está físicamente en el mismo evento que tú, verificado por geolocalización y un código QR que emite el local.
Registro ──▶ Verificar email ──▶ Lista de eventos
│
▼
Verificar ubicación (GPS real)
│
▼
Escanear QR / introducir código
│
redeem_event_code() valida en servidor:
código vigente · local verificado ·
evento en curso · dentro del radio
│
▼
Check-in en event_attendance
│
▼
3 fotos con la cámara ──▶ Swipe ──▶ Match ──▶ Chat
El radio de visibilidad depende del tipo de local: bar y local 50 m, discoteca 100 m, evento empresarial 250 m, festival 500 m.
Para los locales hay un panel aparte con generación de códigos, estadísticas de asistencia y gestión de eventos. La administración aprueba los locales antes de que puedan operar.
html5-qrcode, Sentrynpm install
cp .env.example .env.local # y rellena las claves de Supabase
npm run dev # http://localhost:5173
Antes de arrancar hay que aplicar las migraciones SQL. La 006 y la 007
son obligatorias: sin la 006 el registro no crea el perfil, las policies de
profiles entran en recursión y los códigos de acceso quedan expuestos; la 007
añade intereses, grupos, moderación, límites de uso y los derechos RGPD.
El detalle completo está en SETUP.md.
| Documento | Contenido |
|---|---|
| SETUP.md | Instalación, migraciones, Storage, autenticación y problemas comunes |
| CREAR_USUARIOS.md | Usuarios de prueba y cómo recorrer el flujo completo |
| ESTADO.md | Qué funciona, qué necesita credenciales externas y qué queda fuera |
src/
pages/ Index, Auth, VerifyEmail, Home, Location, EventAccess,
EventSwiping, Matches, Likes, Chat, Profile, Legal,
venue/VenueDashboard, admin/AdminDashboard
components/ protected-route, error-boundary, consent-gate, pwa-prompt,
qr-scanner, camera-capture, face-verification,
phone-verification, interest-picker, discovery-filters,
groups-sheet, safety-sheet, privacy-sheet,
language-switcher, profile-card, chat-window,
venue/, admin/, ui/ (shadcn)
context/ app-context (sesión, evento activo, filtros)
premium-context (suscripción)
services/ api, social, safety, privacy, venue-service, push, geo
i18n/ configuración y locales es/en/de/ca
lib/ observability (Sentry + analítica)
service-worker.ts caché de la shell y notificaciones push
supabase/
migrations/ 001 → 007
policies/ storage_policies.sql
functions/ moderate-photo, send-sos-alert, stripe-checkout,
stripe-webhook, delete-account, venue-add-member,
send-push, analytics-collect, send-sms-verification
24 tablas con Row Level Security en todas. Las piezas centrales:
profiles / venues / venue_members — cuentas y equipos, creadas por triggerevents / event_codes / event_intents — eventos, códigos e intención de irevent_attendance — check-ins validados; determina quién se ve con quiéninterests / profile_interests — base del emparejamiento por afinidadswipes / connections / messages — matching y chat efímerogroups / group_members — salir de fiesta en gruporeports / blocks / moderation_queue — moderacióntrusted_contacts / sos_alerts — botón de emergenciapush_subscriptions / rate_limits / user_consents / analytics_eventsFunciones clave: redeem_event_code(), get_nearby_profiles(),
get_event_funnel(), get_likes_received(), export_my_data(),
consume_rate_limit(), current_profile_id(), is_admin().
npm run dev # servidor de desarrollo en :5173
npm run build # build de producción
npm run preview # previsualizar el build
npm run typecheck # TypeScript sin emitir
npm run lint # ESLint
npm run test # Vitest
npm run verify # typecheck + lint + tests + build
Hosting estático (Vercel, Netlify) más Supabase cloud.
VITE_SUPABASE_URL, VITE_SUPABASE_ANON_KEY.npm run build. Directorio publicado: dist.https://tu-dominio.com/auth/verify-email como Redirect URL.La app usa cámara, geolocalización, service worker y notificaciones push, así que debe servirse por HTTPS.
Despliega también las Edge Functions y sus secretos: ver SETUP.md.
MIT.