Convenciones de código - FactoriaF5-Asturias/project-p5-digital-academy-team3-restaurant-frontend GitHub Wiki
Convenciones de código
Naming y carpetas
- Componentes y vistas Vue en PascalCase:
CartSummary.vue,KitchenDashboardView.vue. - Composables con prefijo
use:useAuth.js,useCart.js. - Servicios con nombre de dominio y sufijo
Service:ProductService.js. - Tests con
.test.jso.spec.js, organizados bajotests/components,tests/servicesotests/views. - Componentes agrupados por módulo (
admin,home,reports,common) como en la estructura existente.
Vue y responsabilidades
- Usa Single File Components
.vuey Composition API con<script setup>. - Declara entradas con
definePropsy eventos condefineEmits. - Mantén HTTP en
src/services/; coordina carga/errores/navegación en vistas; extrae estado reutilizable asrc/composables/. - Pasa datos por props y comunica eventos hacia arriba; evita que componentes hermanos dependan directamente entre sí.
Atomic Design
El proyecto no sigue Atomic Design formalmente: no hay carpetas atoms/, molecules/ u organisms/. Los componentes se agrupan por funcionalidad. Se pueden aplicar sus ideas (piezas pequeñas que componen controles y secciones) sin reorganizar los módulos actuales; acuerda una migración antes de cambiar la estructura.
Cambios en servicios
- Comprueba
response.oky propaga un error que permita a la vista mostrar un estado útil. - Añade autenticación cuando el endpoint la requiere y sigue el patrón del servicio existente.
- Prueba URL, método, cabeceras, cuerpo y respuesta fallida con
fetchsimulado.