Setting Up the Development Environment
Setting Up the Development Environment
~11 Min. Lesezeit Zuletzt aktualisiert am August 8, 2026
Before starting the task manager, let's set up the tools we need: PHP, Composer, and the Symfony CLI.
PHP version
Current Symfony versions (7.x) require at least PHP 8.2. Check your installed version:
php --versionInstalling Composer
Composer is Symfony's package manager – EVERY Symfony component and EVERY bundle is managed via Composer. Install it from getcomposer.org, then verify:
composer --versionInstalling the Symfony CLI
The Symfony CLI is a separate command-line tool (NOT to be confused with bin/console, the project-internal tool we'll get to know in chapter 3) – it provides a local development server with automatic HTTPS, project creation, and diagnostic tools:
# macOS (Homebrew):
brew install symfony-cli/tap/symfony-cli
# Linux:
curl -sS https://get.symfony.com/cli/installer | bash
# Verify:
symfony check:requirementssymfony check:requirements checks whether your system has all the PHP extensions Symfony recommends (including ctype, iconv, intl) and the right settings.
Database
For the Doctrine ORM chapters (block 4), we need a running database – PostgreSQL or MySQL/MariaDB both work, this course uses PostgreSQL throughout as its example. Easiest via Docker, with NO local install needed:
services:
database:
image: postgres:16-alpine
environment:
POSTGRES_DB: aufgaben_manager
POSTGRES_USER: symfony
POSTGRES_PASSWORD: symfony
ports:
- '5432:5432'
volumes:
- database_data:/var/lib/postgresql/data
volumes:
database_data:docker compose up -dWe're placing this compose.yaml in a central spot already – in chapter 3, it moves into our actual project directory.
Editor recommendation
Tipp: PhpStorm offers the most mature Symfony integration (autocompletion for routes, services, Twig variables). With VS Code, the "Symfony for VSCode" extension works well as a free alternative. Both are entirely sufficient for this course – understanding the concepts matters more than the editor.