尚未检测到更新。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.