Skip to content
This repository has been archived by the owner on Aug 22, 2018. It is now read-only.

alfonmga/symfony.demo.on.roids

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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**](https://www.vagrantup.com/) + [**Ansible**](http://www.ansible.com/)

### Prerequisites - [Vagrant](https://www.vagrantup.com/downloads.html) installed - [Ansible] (http://docs.ansible.com/ansible/intro_installation.html) installed - [Virtualbox](https://www.virtualbox.org/wiki/Downloads) installed

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:

Bundles used:

## Elasticsearch

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

Related urls:

Bundles used:

## 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:

Bundles used:

## RabbitMQ

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

Related urls:

Bundles used:

## Redis

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

Related urls:

Bundles used:

About

The Symfony Demo Application on Roids!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published