Need help with symfony.demo.on.roids?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

127 Stars 13 Forks MIT License 153 Commits 2 Opened issues


The Symfony Demo Application on Roids!

Services available


Need anything else?

Contributors list

The Symfony Demo Application on Roids!

Build StatusTotal DownloadsPHP VersionLicense

The "Symfony Demo Application on Roids" is an application based on the original Symfony Demo Application that includes extra features using technologies like Elasticsearch, OAuth, RabbitMQ, Redis and a RESTful API + HATEOAS.

Table of Contents

Setting up & running the demo with Vagrant + Ansible



  1. git clone
  2. cd symfony.demo.on.roids/vagrant/
  3. vagrant up
  4. Wait until Ansible installs and configure everything
  5. Finally navigate to to browse the app

Congratulations! You're now ready to use The Symfony Demo On Roids.


A RESTful API + HATEOAS has been implemented for expose the resources. Different formats are available for manage the data: HTML, JSON and XML.

Related urls: - API Index page - API Documentation

Bundles used: - FOSRestBundle - JMSSerializerBundle - NelmioApiDocBundle - FOSHttpCacheBundle - BazingaHateoasBundle - BazingaRestExtraBundle


Elasticsearch has been used for add a simple search form and show relevant results based on the user search query.

Related urls: - Elasticsearch Admin panel - Elasticsearch app search page (results for

Lorem ipsum

Bundles used: - FOSElasticaBundle


OAuth has been used for link/unlink an account from an OAuth provider (GitHub in this case) to an existent backend account and allows to log in directly to the backend from a GitHub account.

To use this feature you must register a new OAuth Application and edit the parameters.yml.dist file with your app

client id
client secret

Related urls: - Login page (click on

Sign in with GitHub
) - Manage your OAuth account (
Github Account

Bundles used: - HWIOAuthBundle


RabbitMQ has been used for generate a PDF file based on the article content from a consumer in a scalable way.

Related urls: - RabbitMQ Admin panel (User:

- Post page (click on
Download post as PDF

Bundles used: - RabbitMqBundle - KnpSnappyBundle


Redis has been used for show the top 5 popular posts and set a cache lifetime of 3600 seconds.

Related urls: - Top 5 popular posts

Bundles used: - SncRedisBundle

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.