Directory Structure
Table of contents
Loading...Introduction
The directory structures of the slim-example-project, slim-api-starter and the slim-starter are based on Standard PHP Package Skeleton, DDD and the Vertical Slice Architecture.
Directory Structure
├── config # contains configuration files
│ └── env # environment specific configuration files (dev, prod, test etc.)
├── public
│ └── assets # images, videos, stylesheets, scripts, fonts, audio files
├── resources
│ ├── migrations # database migrations
│ ├── schema # database table creation schema
│ ├── seeds # database seed data
│ └── translations # translation files
├── src
│ ├── Application # general (not tied to specific module) top layer
│ │ ├── Middleware
│ │ └── Responder
│ ├── Common # contains general project independent utility classes
│ ├── Domain # includes general business logic utilities and exceptions
│ │ ├── Exception
│ │ └── Utility
│ ├── Infrastructure # contains general infrastructure utilities such as query factory
│ │ ├── Factory
│ │ └── Utility
│ └── Module
│ └── {ModuleX}
│ ├── {Feature}
│ │ ├── Application
│ │ ├── Domain
│ │ └── Infrastructure
│ └── Data # DTOs
├── templates # layout and template files for each module
└── tests
├── Fixture # database content to be added as preparation in test db for integration tests
├── TestCase # contains modules with unit and integration tests
│ ├── {ModuleX}
│ │ └── {Feature} # test cases for the feature (also contains its provider)
└── Trait # utility traits (test setup, database connection, helpers)