Build a Symfony 7 boilerplate using FrankenPHP, Docker, PostgreSQL and php 8.4

This page summarizes the projects mentioned and recommended in the original post on dev.to

JetBrains - Tell us how you use coding tools. You may win a prize!
Are you a developer or a data analyst? Share your thoughts about your coding tools in our short survey and get a chance to win prizes!
surveys.jetbrains.com
featured
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
  1. frankenphp-symfony

    [READ ONLY]

    To do so simply install the runtime/frankenphp-symfony composer package. Then we install the bare minimum for a kick ass developer experience, a linter using Code Sniffer, phpstan as code quality audit tool, Rector to ease and automate code maintenance, some useful Symfony components and package and of course the Doctrine ORM. Here the composer.json file located at the symfony folder root.

  2. JetBrains

    Tell us how you use coding tools. You may win a prize! Are you a developer or a data analyst? Share your thoughts about your coding tools in our short survey and get a chance to win prizes!

    JetBrains logo
  3. PHP Code Sniffer

    PHP_CodeSniffer tokenizes PHP files and detects violations of a defined set of coding standards.

    To do so simply install the runtime/frankenphp-symfony composer package. Then we install the bare minimum for a kick ass developer experience, a linter using Code Sniffer, phpstan as code quality audit tool, Rector to ease and automate code maintenance, some useful Symfony components and package and of course the Doctrine ORM. Here the composer.json file located at the symfony folder root.

  4. PostgreSQL

    Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch

    Hi everyone, in this post we're going to build a boilerplate to start any kind of Symfony project, such like a monolith or an API. We'll use the top tier app server FrankenPHP written in Go. The boilerplate will also use PostgreSQL SGDB for relational database.

  5. Rector

    Instant Upgrades and Automated Refactoring of any PHP 5.3+ code

    To do so simply install the runtime/frankenphp-symfony composer package. Then we install the bare minimum for a kick ass developer experience, a linter using Code Sniffer, phpstan as code quality audit tool, Rector to ease and automate code maintenance, some useful Symfony components and package and of course the Doctrine ORM. Here the composer.json file located at the symfony folder root.

  6. You can find the final boilerplate source code here on Gitlab. Feel free to contribute on it, i will maintain and update this post as well as the boilerplate, thank you for reading.

  7. Symfony

    The Symfony PHP framework

    Hi everyone, in this post we're going to build a boilerplate to start any kind of Symfony project, such like a monolith or an API. We'll use the top tier app server FrankenPHP written in Go. The boilerplate will also use PostgreSQL SGDB for relational database.

  8. PHPStan

    PHP Static Analysis Tool - discover bugs in your code without running it!

    To do so simply install the runtime/frankenphp-symfony composer package. Then we install the bare minimum for a kick ass developer experience, a linter using Code Sniffer, phpstan as code quality audit tool, Rector to ease and automate code maintenance, some useful Symfony components and package and of course the Doctrine ORM. Here the composer.json file located at the symfony folder root.

  9. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  10. insomnia

    The open-source, cross-platform API client for GraphQL, REST, WebSockets, SSE and gRPC. With Cloud, Local and Git storage.

    The container directly run on the host I send the request so there's almost no network latency and I use Insomnia to measure the response time.

  11. Composer

    Dependency Manager for PHP

    FROM dunglas/frankenphp:1-php8.4-bookworm AS frankenphp_upstream FROM frankenphp_upstream AS frankenphp_base WORKDIR /app # persistent / runtime deps # hadolint ignore=DL3008 RUN apt-get update && apt-get install --no-install-recommends -y \ acl \ file \ gettext \ git \ && rm -rf /var/lib/apt/lists/* # https://getcomposer.org/doc/03-cli.md#composer-allow-superuser ENV COMPOSER_ALLOW_SUPERUSER=1 RUN set -eux; \ install-php-extensions \ @composer \ apcu \ intl \ opcache \ zip \ pdo_mysql \ pdo_pgsql \ gd \ intl \ xdebug \ ; COPY --link docker/frankenphp/conf.d/app.ini $PHP_INI_DIR/conf.d/ COPY --link --chmod=755 docker/frankenphp/docker-entrypoint.sh /usr/local/bin/docker-entrypoint COPY --link docker/frankenphp/Caddyfile /etc/caddy/Caddyfile ENTRYPOINT ["docker-entrypoint"] HEALTHCHECK --start-period=60s CMD curl -f http://localhost:2019/metrics || exit 1 # Dev FROM frankenphp_base AS frankenphp_dev ENV APP_ENV=dev XDEBUG_MODE=off VOLUME /app/var/ RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini" RUN set -eux; \ install-php-extensions \ xdebug \ ; COPY --link docker/frankenphp/conf.d/app.dev.ini $PHP_INI_DIR/conf.d/ CMD [ "frankenphp", "run", "--config", "/etc/caddy/Caddyfile", "--watch" ]

  12. frankenphp

    Discontinued 🧟 The modern PHP app server [Moved to: https://github.com/php/frankenphp] (by dunglas)

    Hi everyone, in this post we're going to build a boilerplate to start any kind of Symfony project, such like a monolith or an API. We'll use the top tier app server FrankenPHP written in Go. The boilerplate will also use PostgreSQL SGDB for relational database.

  13. Caddy

    Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

    FrankenPHP use Caddy as proxy server, so we'll need a Caddyfile to configure it and also provide basic php configurations. Here again we'll stick to the FrankenPHP documention. You can find it in the docker/frankenphp folder.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • How to Build and Distribute Beautiful Command-Line Applications with PHP and Composer

    20 projects | dev.to | 12 Feb 2022
  • PHP-backend Roadmap

    9 projects | dev.to | 11 Sep 2021
  • A minimal Drupal 9 local development environment

    7 projects | dev.to | 28 Feb 2021
  • Enhancing Laravel Code Quality with Larastan

    2 projects | dev.to | 21 Aug 2025
  • Code Quality Check with PHPStan

    1 project | dev.to | 25 Jul 2025

Did you know that PHP is
the 14th most popular programming language
based on number of references?