Contribuir
Andarama es código abierto bajo EUPL-1.2 y las contribuciones son bienvenidas. La guía completa está en CONTRIBUTING.md.
Resumen
git clone https://github.com/joseluissaorin/andarama && cd andaramapnpm installpnpm build:packagespnpm dev:node # self-host en http://localhost:8788pnpm dev:studio # Studio con recarga en http://localhost:5173pnpm test # unitarios (Vitest)pnpm test:e2e # E2E (Playwright, incluye una sesión WebXR simulada)pnpm lint # ESLint, sin avisos permitidosPara comprobar que un paquete exportado funciona en un alojamiento cualquiera:
node scripts/verify-export.mjs # exporta, descomprime y lo sirve en un subdirectorioReglas de arquitectura
- Ningún módulo de dominio importa APIs de Cloudflare o Node directamente: todo pasa por
packages/adapters. - Cualquier cambio del formato
tour.jsonrequiere nueva versión del esquema + migrador enpackages/schema. - El visor no depende de frameworks de UI; la skin usa Web Components.
- Iconografía exclusivamente SVG (lucide); sin emojis en la interfaz.
- Todo lo que lee una persona va en español con sus tildes y sus eñes: interfaz, documentación, mensajes de error y contenido de ejemplo. Los identificadores y las claves JSON, no.
- La geometría y la lógica que no necesita navegador se extrae a funciones puras y se prueba: la matemática de la esfera, del retículo, de la orientación y del grafo vive fuera de la vista por ese motivo.
Traducciones
- Visor:
packages/viewer-ui/src/i18n/*.json(es y en de serie; añade tu idioma copiandoes.json). - Studio:
apps/studio/src/i18n/*.json.
Seguridad
No abras issues públicos para vulnerabilidades: consulta SECURITY.md.