Las aplicaciones de gestión suelen crecer por acumulación: pacientes, citas, usuarios, facturación, informes, configuración. Si no hay una estructura clara, cada pantalla termina mezclando UI, reglas de negocio y llamadas HTTP.
Una división sencilla suele ser suficiente.
core para autenticación, interceptores, guards y servicios compartidos de API.features para pantallas de producto.shared para componentes reutilizables sin lógica de dominio fuerte.environments para configuración por entorno.No hace falta sobrediseñar desde el primer día. Lo importante es que cada carpeta tenga una responsabilidad clara.
Un componente no debería conocer detalles de URLs, headers o serialización de payloads. Esa parte encaja mejor en servicios de API.
Así la UI se concentra en estado, formularios y eventos; el servicio se encarga del contrato con backend.
Este tipo de estructura encaja especialmente bien en proyectos de software a medida y dashboards internos, donde la aplicación crece por módulos y flujos de negocio.