Contribuir
Estructura del monorepo, el playground, los tests, esta documentación y las publicaciones.
Estructura
Es un workspace de pnpm:
| Carpeta | Qué |
|---|---|
packages/holagram | La librería (@angelitolm/holagram): widget, servidor, CLI y tests unitarios |
playground | Una app de Next que usa la librería compilada con Telegram, Resend y Redis reales |
docs | Este sitio |
Primeros pasos
Necesitas Node 22.18 o superior y pnpm.
pnpm install
pnpm dev # package watch, playground (3100) and docs (3200)
pnpm test # unit tests
pnpm build # builds the packageLos tests unitarios ejecutan todo el flujo del servidor (verificación, mensajes, el webhook, límites de uso y configuración ausente) contra simulaciones en memoria de Upstash, Telegram y Resend, así que no necesitan cuentas.
El playground
Copia playground/.env.example a playground/.env.local y rellénalo con un bot y una base de datos de prueba. Después ejecuta pnpm dev y abre http://localhost:3100. Tus mensajes llegan a Telegram; para recibir las respuestas en local, expón el playground con un túnel (por ejemplo cloudflared tunnel --url http://localhost:3100) y registra la URL del túnel con npx holagram webhook.
Commits
Usa conventional commits: feat:, fix:, docs:, test:, chore:.
Docs
Las páginas viven en docs/content/<locale>/<slug>.mdx. Mantén sincronizados ambos idiomas (en y es): cuando cambies una página, cambia su gemela, y comprueba que pnpm --filter docs test y pnpm --filter docs build pasan.
Publicar una versión
Sube la versión en packages/holagram/package.json, haz commit y empuja un tag v<version>. El workflow de publicación comprueba que el tag coincide, ejecuta los tests, compila y publica en npm con provenance.