Skip to content

[F6-01] Base de la app web: Vite + React, rutas, datos, i18n es/en y temas #44

Open

Description

@JCCG-code

Fase: F6 · Tamaño: M · Depende de: #35 (F5-02), #25 (F2-01)
Decisiones: D-04 y D-19 en #1

Objetivo

El esqueleto de apps/web sobre el que se construyen todas las pantallas.

Alcance

  • Vite + React 19 + TypeScript, consumiendo @jccg/ui y @jccg/shared.
  • TanStack Router (rutas tipadas) y TanStack Query (estado de servidor).
  • Cliente de API tipado con los DTOs de packages/shared; errores problem+json → toasts legibles.
  • i18next con es y en; idioma inicial según UserSettings o navegador; selector de idioma.
  • Tema claro/oscuro sin parpadeo (script inline antes de pintar) y persistido.
  • AppShell: barra lateral, barra superior y cajón en móvil; enlace "saltar al contenido".
  • MSW para simular la API mientras F4 no esté lista.
  • En desarrollo, proxy de Vite a apps/server (mismo origen, sin CORS).

Criterios de aceptación

  • pnpm --filter web dev muestra el AppShell con datos simulados por MSW.
  • Cambiar idioma y tema persiste tras recargar, sin parpadeo de tema.
  • pnpm --filter web build genera estáticos; Lighthouse en la página inicial: accesibilidad ≥ 95.
  • Test: no hay textos visibles sin traducir (comprobación de claves i18n faltantes en es y en).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions