LADA Shift Sheets
LADA 레크하키 팀 교대 기록을 경기 영상으로 측정
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
App web mobile-first (PWA) para llevar rutinas de gym: armar rutinas con ejercicios del catálogo (1,500 con gif, nombres en español) o propios, entrenar registrando kg/reps por serie con sugerencia de peso y cronómetro de descanso (funciona sin señal), y ver el progreso por ejercicio, por sesión y por semana. Multiusuario con cuentas propias. En línea: https://workout-eight-neon.vercel.app (deploy automático en cada push a main). Ver PLAN.md para el plan completo, estado actual, mapa del código, notas de infra y registro de cambios.README 전문 보기 ↗
App web mobile-first (PWA) para llevar rutinas de gym: armar rutinas con ejercicios del catálogo (1,500 con gif, nombres en español) o propios, entrenar registrando carga y reps por serie —en kilos, libras o placas, elegible desde el propio entrenamiento— con sugerencia de peso y cronómetro de descanso (funciona sin señal), y ver el progreso por ejercicio, por sesión y por semana. Multiusuario con cuentas propias.
En línea: https://workout-eight-neon.vercel.app (deploy automático en cada
push a main).
Toda la documentación está en docs/: el plan completo, estado actual, mapa del código, notas de infra y registro de cambios en docs/PLAN.md, y el rediseño visual al estilo Apple Fitness en docs/diseno-apple-fitness.md.
lucide-reactlocalStoragetests/smoke.mjs)npm install
cp .env.example .env.local # llenar DATABASE_URL (la de Neon, pooled)
npm run dev
Scripts útiles:
npm run lint
npm run build
npm run db:push # aplica src/db/schema.ts a la base (pide TTY si hay datos)
npm run db:generate # genera una migración en drizzle/ a partir del diff contra la última
npm run db:migrate # aplica las migraciones pendientes de drizzle/ contra DATABASE_URL
npm run db:studio # UI de Drizzle para ver la base
node --env-file=.env.local ./node_modules/.bin/tsx scripts/seed-exercises.ts # recargar catálogo
node --env-file=.env.local ./node_modules/.bin/tsx scripts/preview-translations.ts # muestra de nombres en español
node --env-file=.env.local ./node_modules/.bin/tsx scripts/translate-exercises.ts # regenerar name_es
La suite necesita Chromium una vez: npx playwright install chromium.
npm run smoke # suite de humo contra localhost:3000 (crea y borra su propia cuenta)
BASE_URL=https://workout-eight-neon.vercel.app npm run smoke
node --env-file=.env.local ./node_modules/.bin/tsx scripts/mirror-gifs.ts # copia gifs a Blob — hoy no sirve de nada: el store es privado y no entrega URLs públicas (pendiente #1 de docs/PLAN.md)
Offline: public/sw.js cachea el shell y las páginas visitadas; las series
marcadas sin señal se encolan en localStorage y se sincronizan al
reconectar. Si cambias la estrategia del SW, sube VERSION dentro del archivo.
src/db/schema.ts es la fuente de verdad, y desde el 2026-09-22 los cambios
quedan en drizzle/ (migraciones versionadas, migración 0000 = la base ya
adoptada — ver la nota de infra en docs/PLAN.md). Cuando db:push pide
confirmación interactiva (tablas con datos) y no hay terminal, aplicar el
cambio con SQL directo, correr npm run db:generate para que quede su
migración en el repo, y luego db:push de nuevo para confirmar que no queda
diferencia. Ver las notas de infra en docs/PLAN.md para los casos que ya
pasaron.
Crear un usuario QA directo en la base, recorrer la app (a mano o con
Playwright) y al final delete from users where username = '...' — el
cascade se lleva rutinas, sesiones y sets de esa cuenta.