Skip to main content

Repository Map

High-level directory structure

logidav/
├── app/ # Symfony app config (parameters.yml, config.yml, routing)
├── src/ # PHP source code (Symfony bundles)
│ ├── AppBundle/ # Main bundle — commands, services, controllers, entities
│ ├── CoreBundle/ # Shared infrastructure — base entities, API clients, utilities
│ ├── EventBundle/ # Event system and listeners
│ ├── ErpBundle/ # Marketplace workflow orchestration
│ ├── UserBundle/ # User management and authentication
│ ├── MeduseBundle/ # Meduse integration layer
│ ├── BigbuyBundle/ # Bigbuy supplier integration
│ ├── VidaxlBundle/ # Vidaxl supplier integration
│ ├── AsirGroupBundle/ # AsirGroup supplier integration
│ ├── CmpBundle/ # CMP supplier integration
│ ├── NotioBundle/ # Notio supplier integration
│ └── MauroFerrettiSRLBundle/ # MauroFerretti supplier integration
├── tests/ # PHPUnit tests (mirrors src/ structure)
├── web/ # Public web root
├── docs/ # Global Menzzo docs submodule
├── tools/ # Dev tools (cronjob doc generator, php-cs-fixer)
├── CLAUDE.md # AI agent instructions
├── AGENTS.md # Full project documentation
└── CODING_STYLE.md # Code conventions

Bundle organization

AppBundle — the main bundle

Contains the majority of business logic:

DirectoryPurpose
Command/Symfony console commands (cronjobs), organized by domain
Services/Business logic services — reusable across commands/controllers
Controller/HTTP controllers
Entity/Doctrine entities
Repository/Custom Doctrine query classes
Resources/config/Service definitions (services.yml)

CoreBundle — shared infrastructure

Cross-cutting concerns used by all other bundles:

  • Base entities shared across the application
  • API client wrappers (Magento, marketplace, carrier APIs)
  • Utility components and helpers
  • Global configuration

Supplier bundles

Each supplier has a dedicated bundle (BigbuyBundle, VidaxlBundle, etc.) that encapsulates:

  • Product import logic
  • Stock synchronization
  • Supplier-specific API clients
  • Custom entity mappings

Service registration

Services are registered in each bundle's Resources/config/services.yml:

mz.my_service:
class: "%mz.my_service.class%"
autowire: true
calls:
- [ setEntityManager, [ "@doctrine.orm.entity_manager" ] ]

:::info Service ID convention Service IDs follow the pattern mz.<service_name>. The mz prefix stands for Menzzo, the primary brand. :::

Where do I find...?

I'm looking for...Location
Cronjob / command codesrc/AppBundle/Command/
API clientssrc/CoreBundle/Api/
Business servicessrc/*/Services/
Doctrine entitiessrc/*/Entity/
Custom repositoriessrc/*/Repository/
Teststests/
App configapp/config/
Service definitionssrc/*/Resources/config/services.yml
Supplier integrationssrc/*Bundle/ (Bigbuy, Vidaxl, etc.)
Documentation sourcedocs/content/projects/logidav/
Dev toolstools/