779 B
779 B
Project Goals & Architecture Guidelines
Goal
This project aims to implement a modern Symfony application following a clean layered architecture.
Architecture
The codebase is divided into three primary layers to ensure separation of concerns:
- UI Layer (
src/UI): Responsible for the presentation and handling user input (Controllers, Command-line interfaces, API endpoints). - Logic Layer (
src/Logic): Contains the core business logic, domain services, and use cases. It is independent of the UI and Data layers. - Data Layer (
src/Data): Handles data persistence and retrieval (Repositories, Entities, DTOs for external APIs).
Directory Structure
The src/ directory must strictly follow this layering:
src/UI/src/Logic/src/Data/