Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

SymfonyCasts

Symfony Bundle Development: Share the Love

via SymfonyCasts

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it

Ever wondered how those Symfony bundles you install with Composer actually get made? In this course, you’ll build one from scratch and see how all the pieces fit together. From the first composer init to wiring services, adding entities, and creating config options, you’ll get the full behind-the-scenes tour of bundle development.

You’ll learn how to:

  • Set up a modern Symfony 6.1+ bundle structure
  • Design your code with backwards compatibility in mind so your bundle can evolve without breaking users
  • Wire services, entities, and configuration the bundle way
  • Add a Twig extension
  • Create console commands
  • Write tests to keep your bundle solid
  • Keep code style consistent with PHP-CS-Fixer
  • Configure and run static code analysis with PHPStan
  • Push it to GitHub and set up GitHub Actions to tests across different PHP and Symfony versions
  • Create a Symfony Flex recipe so installation feels like magic

By the end, you’ll know how to package your own code into a polished, reusable bundle that’s ready to share - whether with your team, your future self, or the entire Symfony community.

Syllabus

  • Initialize the Bundle
  • The Bundle Class
  • Install our Bundle Locally
  • Bundle Service Class
  • "Wiring Up" our Bundle Service
  • Entities in a Bundle
  • Configuring our Bundle's Entity
  • Extending our Bundle's Entity
  • Bundle Configuration
  • Bundle Configuration Validation
  • Using Bundle Configuration
  • Translated Object Wrapper
  • Unit Testing `TranslatedObject`
  • TDD Getter Behaviour
  • TDD `TranslatedObject` Translations
  • Translatable Mapping
  • Translation Logic
  • Fetch the Object ID with Doctrine
  • `translate_object` Twig Filter
  • Performance Optimization 1: Memoization
  • Performance Optimization 2: Caching
  • Cache Configuration
  • Refactoring `ObjectTranslator`
  • Cache Warmup Command
  • Warmup Command Configuration
  • Export Translations Command
  • Translations Import Command
  • Bundle Dependencies
  • Integration Testing
  • Doctrine Tests
  • Testing with Multiple Symfony Versions
  • Metadata & PHP CS Fixer
  • Static Analysis with PHPStan
  • CI with GitHub Actions
  • Publish to Packagist and Release
  • Symfony Flex Recipe

Taught by

Kevin Bond

Reviews

Start your review of Symfony Bundle Development: Share the Love

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.