Project structure
Where application code lives and what the upgrade tool may rewrite.
Atlas projects keep application code, configuration, and public assets in predictable directories so upgrades can rewrite scaffolding without touching your domain logic.
Photo by AbsolutVision on Unsplash.
Top-level layout
texttree
my-app/
├── app/ # Domain services and HTTP handlers
├── config/ # Environment-aware settings
├── database/ # Migrations and seeders
├── resources/ # Views, CSS, and client scripts
├── routes/ # web.php and api.php
└── atlas.json # Channel and module manifestOwnership rules
- Own everything under app/ and resources/views.
- Treat config/*.php as mergeable — keep custom keys in config/app_custom.php.
- Never edit vendor/atlas packages directly; use service providers instead.
Danger
atlas.json records your major channel. Changing it without running the upgrade tool leaves the codebase mid-migration.
Updated Aug 5, 2026
