Directory structure
The manifest defines every generated Pulsar path. Stock Laravel paths remain outside this generated boundary.
Layer roots
| Layer | Generated root |
|---|---|
| Service | app/Pulsar/Services/{Service} |
| Domain | app/Pulsar/Domain/{Domain} |
| Infrastructure | app/Pulsar/Infrastructure/{Area} |
Type paths
| Type | Path |
|---|---|
| Action | app/Pulsar/Domain/{Domain}/Actions/{Name}.php |
| Adapter | app/Pulsar/Infrastructure/{Area}/{Name}.php |
| Command | app/Pulsar/Services/{Service}/Modules/{Module}/Commands/{Name}.php |
| Contract | app/Pulsar/Domain/{Domain}/Contracts/{Name}.php |
| Controller | app/Pulsar/Services/{Service}/Modules/{Module}/Controllers/{Name}.php |
| Domain | app/Pulsar/Domain/{Domain} |
| Domain Exception | app/Pulsar/Domain/{Domain}/Exceptions/{Name}.php |
| DTO | app/Pulsar/Domain/{Domain}/DTOs/{Name}.php |
| Enum | app/Pulsar/Domain/{Domain}/Enums/{Name}.php |
| Event | app/Pulsar/Domain/{Domain}/Events/{Name}.php |
| Job | app/Pulsar/Services/{Service}/Modules/{Module}/Jobs/{Name}.php |
| Listener | app/Pulsar/Domain/{Domain}/Listeners/{Name}.php |
| Mailable | app/Pulsar/Domain/{Domain}/Mail/{Name}.php |
| Model | app/Pulsar/Domain/{Domain}/Models/{Name}.php |
| Module | app/Pulsar/Services/{Service}/Modules/{Module} |
| Notification | app/Pulsar/Domain/{Domain}/Notifications/{Name}.php |
| Operation | app/Pulsar/Services/{Service}/Modules/{Module}/Operations/{Name}.php |
| Policy | app/Pulsar/Domain/{Domain}/Policies/{Name}.php |
| Query | app/Pulsar/Domain/{Domain}/Queries/{Name}.php |
| Request | app/Pulsar/Services/{Service}/Modules/{Module}/Requests/{Name}.php |
| Resource | app/Pulsar/Services/{Service}/Modules/{Module}/Resources/{Name}.php |
| Service | app/Pulsar/Services/{Service} |
| UseCase | app/Pulsar/Services/{Service}/Modules/{Module}/UseCases/{Name}.php |
| Value Object | app/Pulsar/Domain/{Domain}/ValueObjects/{Name}.php |
Lookup
Each command entry renders its manifest-defined output files. For type-level paths, use the matching concept.