BikeControl (SwiftControl)
使用 Zwift Click、Zwift Play、Shimano Di2 或任何藍牙控制器,搭配 MyWhoosh、Rouvy、Zwift 等。iOS、Android、Windows、macOS 均可免費試用。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
Sistema de Regatas — Club Náutico Bariloche Aplicación web para la Comisión de Vela y Motor del CNB: calendario de regatas, generación de Avisos de Regata e Instrucciones de Regata conformes al Apéndice J del RRV 2025-2028, inscripciones en línea por link/QR, carga de llegadas y cálculo automático de resultados (Sistema de Puntuación Baja del Apéndice A + handicap PHRF Tiempo sobre Tiempo). Stack: HTML/CSS/JS sin build + Supabase (Postgres + Auth + RLS) + Vercel. Mismo esquema de trabajo que el Registro de Flota de la Escuela de Vela.查看完整 README ↗
Aplicación web para la Comisión de Vela y Motor del CNB: calendario de regatas, generación de Avisos de Regata e Instrucciones de Regata conformes al Apéndice J del RRV 2025-2028, inscripciones en línea por link/QR, carga de llegadas y cálculo automático de resultados (Sistema de Puntuación Baja del Apéndice A + handicap PHRF Tiempo sobre Tiempo).
Stack: HTML/CSS/JS sin build + Supabase (Postgres + Auth + RLS) + Vercel. Mismo esquema de trabajo que el Registro de Flota de la Escuela de Vela.
| Archivo | Función |
|---|---|
index.html + js/publico.js | Portal público: calendario, ficha de evento, aviso, instrucciones, inscriptos y resultados. Sin login. |
inscripcion.html + js/inscripcion.js | Formulario público de inscripción (link o QR). Sin login. |
admin.html + js/admin.js | Panel de la Comisión. Login por magic link. |
js/scoring.js | Motor de cálculo: tiempo corregido y puntajes del Apéndice A del RRV. |
js/docs.js | Generadores de Aviso de Regata (J1) e Instrucciones de Regata (J2). |
js/db.js | Cliente Supabase y utilidades (fechas, CSV, ICS, impresión). |
supabase/schema.sql | Esquema completo con Row Level Security. |
config.js | Único archivo a editar antes del deploy. |
Test del motor de puntajes: node js/scoring.test.js (32 verificaciones).
Corrección de tiempos (configurable por clase dentro de cada evento):
| Sistema | Fórmula | Uso |
|---|---|---|
monotipo | sin corrección | Optimist, ILCA, Snipe, Pampero |
tot_phrf | TC = TR × TCF, con TCF = B / (A + Rating) — por defecto A=550, B=650 | Cruceros CNB |
tot_factor | TC = TR × Factor | Estilo IRC (TCC declarado) |
tod | TC = TR − (Rating[s/MN] × Distancia[MN]) | Tiempo sobre Distancia clásico |
Con A=550 y B=650, un barco de rating 100 tiene TCF = 1,000. Bajar A endurece la corrección
entre barcos de ratings dispares; subirlo la suaviza. Ambos valores se editan por clase y por evento.
Puntaje — Apéndice A del RRV 2025-2028:
DNE y DGM no son descartables; el resto sí.regatas-cnb · Región: South America (São Paulo) · guardar la contraseña de la base.supabase/schema.sql → Run.
Debe terminar con Success. No rows returned. El script es idempotente: se puede volver a correr.config.js como SUPABASE_URLconfig.js como SUPABASE_ANON_KEYLa
anon keyes pública por diseño. La seguridad la da el RLS. Nunca pegar laservice_role.
config.jswindow.CNB_CONFIG = {
SUPABASE_URL: 'https://xxxxxxxxxxxx.supabase.co',
SUPABASE_ANON_KEY: 'eyJhbGciOi...',
...
};
El script ya deja habilitado [email protected] como admin. Para el resto:
Table Editor → usuarios_autorizados → Insert row (email, nombre, rol comision), o desde el
propio panel una vez que ingrese el admin (Configuración → Usuarios habilitados).
Roles: admin (todo, incluye usuarios) · comision (eventos y resultados) · oficial (llegadas) ·
secretaria (inscripciones y cobros).
Con Claude Code, desde la carpeta del proyecto, usar el prompt de
prompt_claude_code_deploy.md. Resumen de lo que hace:
git init && git add -A && git commit -m "Sistema de regatas CNB"
gh repo create regatas-cnb --public --source=. --push
vercel --prod
Volver a Supabase → Authentication → URL Configuration:
https://regatas-cnb.vercel.app (la URL que devuelva Vercel)https://regatas-cnb.vercel.app/**Sin esto, el magic link redirige a localhost y el panel no abre.
borrador.inscripcion_abierta (selector arriba a la derecha).pendiente. En «Inscripciones» se verifica seguro,
licencia y pago, se ajusta el rating y se confirma. Exportar CSV y Lista de largada
imprimible (con TCF calculado y columnas de control de salida y regreso).finalizado. Los resultados quedan públicos en el portal.insc_insert_publico sólo admite el alta
cuando el evento está en inscripcion_abierta y dentro del plazo, y sólo en estado pendiente.
El anónimo no puede leer ni editar inscripciones: la lista pública sale de la vista
v_inscriptos_publico, que no expone DNI, email, teléfono ni datos de seguro.codigo_flota de la inscripción admite el código
CNB del barco (OPT-C-001), para cruzar con el sistema de trazabilidad de la Escuela de Vela.assets/logo-cnb.png es el escudo oficial del Club (edicion 80 anios, 1947-2027),
recortado y con fondo transparente para que se vea bien sobre el azul del encabezado.assets/favicon.ico (16/32/48), assets/favicon-32.png y
assets/apple-touch-icon.png (180, pantalla de inicio de iOS) salen del mismo escudo, sobre
fondo blanco: en transparente el azul del escudo se pierde contra las pestanias en modo oscuro.
Si se cambia el logo hay que regenerarlos los tres.