Skip to content

Local Setup ​

Prerequisites ​

RequirementDetails
PHP7.3
Composerv1 (the project uses Composer v1)
DatabaseMySQL or MariaDB
GitAccess to axelites/logidav on GitHub

Installation ​

bash
# Clone the repository
git clone git@github.com:axelites/logidav.git
cd logidav

# Install PHP dependencies
composer install

During composer install, Symfony will prompt you to configure app/config/parameters.yml. Fill in your local database credentials and other settings.

No .env file

Logidav uses Symfony 3.3, which relies on app/config/parameters.yml for environment configuration — not .env files. The parameters.yml file is generated from parameters.yml.dist during composer install.

Database setup ​

This project does not use Doctrine migrations. Schema changes are applied directly:

bash
# Preview the SQL that would be executed
php bin/console doctrine:schema:update --dump-sql

# Apply the changes (after reviewing the SQL above)
php bin/console doctrine:schema:update --force

Always review before --force

Run --dump-sql first and review the generated SQL. The --force flag applies changes immediately and cannot be undone.

Common commands ​

TaskCommand
Clear cachephp bin/console cache:clear
Run testsSYMFONY_DEPRECATIONS_HELPER=weak_vendors vendor/bin/simple-phpunit -c phpunit.xml.dist
Static analysiscomposer phpstan
Queue processorphp bin/console meduse:queue:processor --action=runQueues
Code formattingphp tools/php-cs-fixer/vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php

Docs site setup (Docusaurus) ​

The documentation site is mounted as the docs/ submodule in Logidav:

bash
git submodule update --init --recursive
cd docs

# Install Node dependencies
npm ci

# Start the development server
npm start

# Production build
npm run build

Code validation ​

Run all three checks before pushing:

bash
# 1. Fix code style
php tools/php-cs-fixer/vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php

# 2. Run static analysis
composer phpstan

# 3. Run tests
SYMFONY_DEPRECATIONS_HELPER=weak_vendors vendor/bin/simple-phpunit -c phpunit.xml.dist

SYMFONY_DEPRECATIONS_HELPER

The weak_vendors setting suppresses deprecation notices from third-party packages, letting you focus on deprecations in your own code.

Internal developer documentation for Menzzo systems.