Parte en dos equipos la lista de jugadores que circula por el grupo de WhatsApp. Todo vive en
localStorage: no hay servidor, ni base de datos, ni URL por partido.
Los equipos se comparten como imagen — el botón Compartir dibuja la lista y la manda al share nativo del teléfono, sin los menús ni los botones de la pantalla.
yarn # yarn, no npm
yarn dev # http://localhost:3200yarn run check # tsc --noEmit && next lint && vitest run — la puerta antes de cualquier commit
yarn test # vitest run
yarn test:watch # vitest
yarn buildyarn run check, no yarn check: check es un builtin de yarn 1 y hace otra cosa.
No corras yarn build ni borres .next con yarn dev andando — comparten .next y el dev server
se queda sirviendo 404 de sus propios chunks.
Next 15 (App Router) · React 19 · TypeScript · Tailwind v4 · zustand con persist · Vitest.
| Formularios | react-hook-form |
| Diálogos | @headlessui/react, un único ConfirmDialog en el layout |
| Menú de fila | react-laag |
| Arrastrar jugadores | react-dnd (solo desktop) |
| Fechas | date-fns |
| Imagen para compartir | html-to-image, importada recién al tocar el botón |
| Íconos | @heroicons/react |
La app está en teammaker.com.ar. Sugerencias, ideas o algo que no anda: el botón de sugerencias en la app, o hola@teammaker.com.ar.
Hecho por keis.studio.
CLAUDE.md tiene las decisiones de diseño, el modelo de nombres y de kit, y las
trampas que ya costaron tiempo. PLAN.md tiene el estado de las fases del refresh.