Documentación técnica

Documentación para desarrolladores

public es la raíz web; src contiene el código y storage la base SQLite privada.

Documentación para desarrolladores

Producto y decisiones vinculantes

That's My Dash 0.8.1 es una página de inicio web personal para varios usuarios. Requiere PHP 8.2+, SQLite y HTTPS. MySQL, la línea de comandos y la importación manual no deben convertirse en requisitos. Las bases existentes se amplían de forma aditiva; config.php y todo storage se conservan.

La interfaz incluye ocho idiomas y el inglés es el idioma técnico de respaldo.

Arquitectura

  • public es la raíz web prevista.
  • src contiene solicitudes, base de datos, seguridad y llamadas HTTP.
  • views contiene plantillas y no modifica datos.
  • storage contiene SQLite, caché y ajustes de idioma y debe permanecer privado.
  • public/index.php ejecuta acciones, carga el contexto y muestra la vista.

Reglas de código y datos

  • Usar tipos estrictos y consultas PDO preparadas.
  • Incluir el id del usuario en cambios de datos personales.
  • Escapar el contenido y no permitir HTML del usuario.
  • Toda escritura usa POST, CSRF, validación y control de propiedad.
  • Las migraciones son aditivas, idempotentes y compatibles.
  • La edición principal funciona sin JavaScript.

Seguridad, accesibilidad e idiomas

Las llamadas externas solo usan HTTPS, bloquean redes privadas y limitan redirecciones, tiempo y tamaño. Google Calendar es opcional. El objetivo es WCAG 2.2 AA: HTML semántico, teclado, foco visible, zoom, movimiento reducido y alto contraste. Los idiomas están en languages y los cambios locales en storage/languages. No se traducen :place ni {query}.

Control de versión

Ejecutar controles PHP, JavaScript, JSON y de idiomas. Probar instalación limpia y actualización, móvil y escritorio, temas claro y oscuro, roles, separación de usuarios, teclado, lector de pantalla y zoom. Actualizar VERSION, README, CHANGELOG, PROJECT_STATUS y la auditoría.