Easy-to-manage touch screens
무료 오픈소스 터치스크린으로 USB 설정 가이드, 드래그‑드롭 편집기, 로컬 제어를 제공하며 Home Assistant용으로 제작되었습니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 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.