danielm / symfony-demo-bundle
An Skeleton/Demo bundle
Installs: 13
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=8.1
- symfony/console: ^6.3
- symfony/framework-bundle: ^6.3
- symfony/translation: ^6.3
- symfony/twig-bundle: ^6.3
- symfony/yaml: ^6.3
Requires (Dev)
README
See my blog post about this:
https://danielmg.org/php/2023/02/extending-symfony-bundle-flex-recipes-and-private-repositories.html
About
This project is part of my Post series about how to build a Symfony Flex Recipes repository (private or not).
This bundle is a demo that shows a couple of things yo can do on a Symfony bundle, such as:
Includes
- Console Command:
bin/console demo:command
- DemoServiceInterface & DemoService: Example of some kind of Contract/Adapter-like patter of a service
- Events: Custom event
UnnecessaryEvent
and simple EventSubscriberDemoSubscriber
- DemoTwigExtension: Adds a twig function
demoFcn()
- Controller:
- Route
/{a}/{b}
-> Simple endpoint that returns a Json response with some values and addsa + b
- Route
/view
-> Simple endpoint that renders a Twig template and returns HTML - Route
/dispatch/{md5_hash}
-> Simple endpoint to test dispatching ourUnnecessaryEvent
- Route
- Configuration
- Using Bundle config parameters
- Using Custom Env variables
DEMO_SAMPLE_ENV
- Usage of Translations and public assets.
Install
Using Symfony Recipe
composer require danielm/symfony-demo-bundle
Manually
Same composer
command as using the Recipe, you will also need to create/edit some files manually (that's what a Symfony recipe does for you)
...
Composer scripts
Coding Standards (follows symfony's default rules)
# Displays errors composer run cs:check # Makes changes composer run cs:fix
Testing
composer run test
PHP code analysis
composer run stan
Todo
- Validators examples
- Serialization examples
- Test Event & dispatcher