Pimia
DocumentaciónFrontendIntegracionesAPI ReferenceKnowledge BaseChangelog
Adaptación a verticales

Arquitectura y puntos de edición

Sigue una pantalla desde App Router hasta el SDK y decide dónde modificarla.

Las vistas del ERP se editan en este repositorio. Algunos comentarios del README y de archivos antiguos describen un porte desde escritorio; las reglas actuales de AGENTS.md establecen que la web es el lugar de edición.

Mapa de carpetas

Carpeta o archivoResponsabilidadCuándo tocarlo
src/appRutas, layouts y handlers Next.jsCambiar una URL o montaje
src/host/screensFrontera cliente con "use client"Montar una vista en Next.js
src/host/chromeShell, sidebar, topbar y menúAdaptar el marco de la vertical
src/host/navigationAdaptador de navegaciónCambiar el comportamiento del anfitrión
src/features/pimia/uiPantallas, diálogos y composiciónRetoques de presentación y formularios
src/features/pimia/hooksQueries y mutationsCarga, guardado e invalidación
src/features/pimia/apiAdaptadores de recursos y transporteTransformar datos del contrato
src/features/pimia/libBorradores, validadores y reglas de presentaciónConversión y validación de formularios
src/shared/uiPrimitivos shadcnCambiar un patrón común a toda la app
src/app/globals.cssTokens y reglas globalesMarca, colores, radios y escala tipográfica
src/serverSDK, sesión, scopes y lista de rutasCambios de servidor y autorización

Ejemplo: clientes

src/app/pimia/clientes/page.tsx
  → src/host/screens/PimiaClientScreens.tsx · ClientesScreen
  → src/features/pimia/ui/PimiaCustomersScreen.tsx
  → hooks/usePimiaResources.ts · usePimiaCustomersQuery
  → api del recurso / api/pimiaClient.ts
  → /api/pimia/request
  → SDK del servidor → instancia de Pimia

Para cambiar las columnas empieza en PimiaCustomersScreen.tsx. Para modificar el formulario, sigue PimiaCustomerDialog.tsx y lib/customerDraft.ts. Para retocar todas las tablas, revisa primero PimiaTablePanel.tsx y los primitivos.

Frontera cliente y servidor

La directiva "use client" pertenece al adaptador de src/host/screens/. Las vistas de features/pimia/ conservan el dialecto portable y no importan @/server/*, next/headers, server-only ni @pimia/sdk.

El servidor conserva los tokens; el navegador usa una cookie de sesión opaca. Los handlers del puente validan la superficie admitida. Añadir un botón no autoriza un endpoint ni permite ampliar la lista blanca desde la vista.

Las vistas usan useAppNavigation desde @/app/navigation/useAppNavigation. tsconfig.json resuelve ese alias hacia src/host/navigation/. Utiliza sus métodos y conserva la codificación de identificadores; evita acoplar una vista portable directamente a next/navigation.

Marco y proveedores

src/app/pimia/layout.tsx monta PimiaWebShell. src/app/providers.tsx monta React Query, ThemeProvider, TooltipProvider y Sonner. El QueryClient nace por montaje para evitar compartir datos de usuarios desde el servidor.

En esta página