Project structure

← Project structure

Ashterix

docs(articles): Magento and Symfony examples side by side, request lifecycle as a Mermaid diagram

en/articles/magento-to-symfony/basics/structure.md +6 −1

2 2
3 3 A new project: `symfony new faq --webapp` (Symfony CLI) or `composer create-project symfony/skeleton faq` for a minimal set. Flex adds packages together with their config: `composer require orm` creates `config/packages/doctrine.yaml` and the `DATABASE_URL` variable.
4 4
5 + ::::columns
6 + :::col
5 7 **Magento** · module tree
6 8
7 9 ```text
23 25 pub/index.php pub/static/
24 26 var/ vendor/
25 27 ```
26 −
28 + :::
29 + :::col
27 30 **Symfony** · application tree
28 31
29 32 ```text
47 50 vendor/
48 51 .env .env.local .env.test
49 52 ```
53 + :::
54 + ::::
50 55
51 56 Laying out `src/` by technical layers (Controller, Entity…) is only a starting template. For a large project you can group by domain (`src/Faq/…`, `src/Catalog/…`), the framework doesn't restrict this: `services.yaml` registers everything in `src/`, and Doctrine looks for entities wherever you point it in `doctrine.yaml`.