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

alfonmga
127 Stars 13 Forks MIT License 153 Commits 2 Opened issues

Description

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

Prerequisites

Instructions

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

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

RESTful API + HATEOAS

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

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

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
and
client secret
token.

Related urls: - Login page (click on

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

Bundles used: - HWIOAuthBundle

RabbitMQ

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:

admin
password:
symfony.demo.on.roids
)
- Post page (click on
Download post as PDF
)

Bundles used: - RabbitMqBundle - KnpSnappyBundle

Redis

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.