Skip to content

feat: scaffold Symfony 8 with ITK Dev Docker setup#4

Open
martinyde wants to merge 8 commits into
mainfrom
feature/issue-1-docker-symfony-setup
Open

feat: scaffold Symfony 8 with ITK Dev Docker setup#4
martinyde wants to merge 8 commits into
mainfrom
feature/issue-1-docker-symfony-setup

Conversation

@martinyde
Copy link
Copy Markdown
Contributor

@martinyde martinyde commented Jun 4, 2026

Summary

  • Scaffolds the project with the symfony-8 ITK Dev Docker template (phpfpm 8.4, nginx, MariaDB, Mailpit, Traefik routing).
  • Adds a fresh Symfony 8 skeleton (symfony/skeleton:^8.0) with PSR-4 App\ autoload at src/.
  • Installs dev tooling required by the CI workflows: ergebnis/composer-normalize, friendsofphp/php-cs-fixer, vincentlanglet/twig-cs-fixer.
  • Replaces the placeholder README.md with local-development instructions and adds an initial CHANGELOG.md.
  • Adds name/description to composer.json so composer validate --strict passes, and gitignores .twig-cs-fixer.cache.

Changes

  • Symfony skeleton at bin/, config/, public/, src/, composer.json, composer.lock, symfony.lock, .env, .env.dev, .editorconfig, .gitignore.
  • ITK Dev Docker template at docker-compose.yml, docker-compose.dev.yml, docker-compose.redirect.yml, docker-compose.server.yml, .docker/nginx.conf, .docker/templates/default.conf.template, .github/workflows/*, .markdownlint.jsonc, .markdownlintignore, .php-cs-fixer.dist.php, .twig-cs-fixer.dist.php, .prettierrc.yaml.
  • New: README.md (replaced), CHANGELOG.md.

Testing

Local CI suite (matches the workflows under .github/workflows/):

  • itkdev-docker-compose composer validate --strict — OK
  • itkdev-docker-compose composer normalize --dry-run — already normalized
  • itkdev-docker-compose composer audit — no advisories
  • itkdev-docker-compose vendor/bin/php-cs-fixer fix --dry-run --diff — 0 of 5 files need fixing
  • itkdev-docker-compose vendor/bin/twig-cs-fixer lint — 0 errors (no templates yet)
  • docker compose --profile dev run --rm prettier '**/*.{yml,yaml}' --check — all match
  • docker compose --profile dev run --rm markdownlint markdownlint '**/*.md' — clean

Manual smoke test: https://ai-lib.local.itkdev.dk/ returns Symfony output (404 from the Symfony router — expected for an empty route map; not a Traefik/nginx error).

Fixes #1
Closes #7

martinydeAI and others added 4 commits June 4, 2026 09:47
Bootstrap the project with the symfony-8 ITK Dev Docker template and a
fresh Symfony 8 application. Includes dev dependencies and configuration
for the coding-standards CI workflows (composer-normalize, php-cs-fixer,
twig-cs-fixer) and a README documenting local development.

Refs #1

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Refs #1

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@martinydeAI
Copy link
Copy Markdown
Collaborator

martinydeAI commented Jun 4, 2026

Task-type issue coverage

Reviewed against open issues with type=Task in this repo. PR #4 covers:

  • Set up Docker + Symfony #1 — Set up Docker + Symfony — already linked above via Fixes #1.
  • Add CHANGELOG.md (Keep a Changelog) #7 — Add CHANGELOG.md (Keep a Changelog) — fully covered. CHANGELOG.md exists with the Keep a Changelog header and an [Unreleased] section. Suggest adding Closes #7 to the PR description so it auto-closes on merge.

Partially covered (leaving open):

  • Write project README #8 — Write project README — stack and local-dev setup are documented; the project purpose (shared catalog of AI assistants for the Danish public sector) and links to the estimation/related docs are still missing.
  • Set up GitHub Actions for coding standards and tests #10 — Set up GitHub Actions for coding standards and tests — CI runs the coding-standards checks (php.yaml, twig.yaml, markdown.yaml, styles.yaml, yaml.yaml, javascript.yaml, composer.yaml, changelog.yaml). A test-suite workflow (e.g. PHPUnit) is not part of this PR.

Not covered by this PR (no action needed here): #5 (CLAUDE.md), #6 (.claude/settings.json), #9 (CONTRIBUTING), #11 (ADR structure), #29 (Taskfile).

martinyde and others added 4 commits June 4, 2026 13:21
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The Styles and JavaScript workflows trigger on docker-compose.yml
changes and then run prettier against assets/**/*.{css,scss,js},
failing when the directory is empty. Add minimal placeholder
entry files so CI passes until a real frontend stack is adopted.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@martinyde martinyde requested a review from tuj June 4, 2026 12:09
Comment thread config/reference.php
@@ -0,0 +1,826 @@
<?php
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should not be in git. Remove it and add it to gitignore

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add CHANGELOG.md (Keep a Changelog) Set up Docker + Symfony

3 participants