Hooks
packages/hooks/README.md
@repo/hooks
Coleccion de hooks reutilizables compartidos por apps y packages UI.
1. Funcion del package
- Evitar duplicacion de hooks utilitarios.
- Mantener comportamiento consistente entre apps.
Export actual:
useIsMobile(breakpoint?: number)
2. Ejemplo de uso
ts
import { useIsMobile } from '@repo/hooks';
const isMobile = useIsMobile();
3. Lineamientos de desarrollo
- Hooks deben ser independientes de dominio de negocio.
- Evitar side effects no controlados.
- Documentar argumentos y retorno.
4. Buenas practicas
- Incluir valor default razonable para parametros.
- Mantener nombres claros con prefijo
use.
5. Como contribuir
- Crear hook en
src/. - Exportarlo desde
src/index.ts. - Validar:
bash
pnpm lint --filter @repo/hooks
pnpm build --filter @repo/hooks
El hook actual useIsMobile usa window.matchMedia, tiene breakpoint por defecto de 768px y
retorna boolean. Los hooks que usan navegador deben ejecutar esa logica después de montar.
6. Crear package nuevo basado en 01-base-package
Si un conjunto de hooks es de dominio especifico (no transversal), crear package nuevo desde 01-base-package.