The Symfony Demo application is a fully-functional Symfony application developed as a learning resource and the reference implementation of the Symfony Best Practices.

This application was introduced in April 2015 and the 1.0.0 version was tagged on February 7th, 2017. A lot of changes and improvements have been added to the application since the last time we talked about it:

  • 2731bae, f8d63f8: added a paginator based on PagerFanta (@ccab)
  • e2d723c: added an example about how to use multiple form buttons (@voronkovich)
  • 4dd93aa: added a Date Picker form field to show how to define custom types (@yceruto)
  • 96bbeae: made error pages translatable (@bocharsky-bw)
  • 895c518: added an example of how to use ESI caching (@sergiu-popa)
  • 15ef2b7: updated the application's code to use as many modern PHP features as possible (@voronkovich)
  • d8ecd9f: stopped using Assetic to manage assets (@javiereguiluz)
  • 84de97a: used dynamic environment variables for critical configuration options (@dzuelke)
  • 4d93cda: added a RSS channel for blog posts (@yceruto)
  • e702851: added more examples of Doctrine relationships (@yceruto)
  • ebca80b: added a security voter to manage blog post permissions (@yceruto)
  • 963c260: allow blog posts to add tags using JavaScript widgets and Symfony Form data transformers (@yceruto)
  • ... and hundreds of other minor fixes and tweaks

In addition to being a learning resource, the Symfony Demo application can be used to showcase Symfony features, reproduce reported bugs, do performance benchmarks, etc. Thanks to the Symfony installer you can get it just by running the symfony demo command.

Finally, we would like to warmly thank the great work of our contributors, specially Yonel Ceruto, Victor Bocharsky, Oleg Voronkovich and Christophe Coevoet. If you want to support this project, don't forget to star the Symfony Demo project on GitHub.