2017 © Pedro Peláez
 

symfony-bundle todomvc-bundle

This Bundle is a Symfony2 / Backbone.js / Chaplin.js implementation of TodoMVC

image

dunglas/todomvc-bundle

This Bundle is a Symfony2 / Backbone.js / Chaplin.js implementation of TodoMVC

  • Wednesday, September 24, 2014
  • by dunglas
  • Repository
  • 9 Watchers
  • 79 Stars
  • 351 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 16 Forks
  • 1 Open issues
  • 6 Versions
  • 0 % Grown

The README.md

DunglasTodoMVCBundle

This a Symfony implementation of TodoMVC., (*1)

TodoMVC is a project which offers the same Todo application implemented using MV* concepts in most of the popular JavaScript MV* frameworks of today., (*2)

Server-side, it uses FOSRestBundle as REST API generator, JMSSerializerBundle as JSON serializer and DunglasAngularCsrfBundle to protect the app against CSRF attacks. Client-side, Backbone.js and Chaplin.js are used and the code is wrote in CoffeeScript., (*3)

Build Status SensioLabsInsight, (*4)

Demo

Try it online: http://symfony-todomvc.dunglas.fr/, (*5)

Screenshot

screenshot, (*6)

Yes, this is TodoMVC., (*7)

Install

First, install Symfony using Composer. Go to your application directory and use composer to install the bundle and its dependencies:, (*8)

composer require dunglas/todomvc-bundle

Next, enable these bundles in AppKernel.php:, (*9)

// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new JMS\SerializerBundle\JMSSerializerBundle(),
        new FOS\RestBundle\FOSRestBundle(),
        new Dunglas\AngularCsrfBundle\DunglasAngularCsrfBundle(),
        new Dunglas\TodoMVCBundle\DunglasTodoMVCBundle(),
        // ...
    );
}

And the routes to app/config/routing.yml:, (*10)

dunglas_todomvc:
    resource: "@DunglasTodoMVCBundle/Resources/config/routing.yml"
    prefix:   /

Install assets:, (*11)

php app/console assets:install web

Dump assets if you want to use the app in prod mode:, (*12)

php app/console assetic:dump --env=prod --no-debug

Create database schema:, (*13)

php app/console doctrine:schema:create

Done! Open http://localhost/app_dev.php/ (don't forget the trailing slash) in your browser and try this Symfony implementation of TodoMVC., (*14)

Compile the client side-code

If you want to rebuild the client-side CoffeScript code go to the Resources/ directory and run:, (*15)

coffee --bare --output public/js/ coffee/

Add the --watch option to recompile at each change. Of course you need the CoffeeScript compiler., (*16)

Security

TodoMVC is unsecure by design. Everyone can do everything. If you create a real world Symfony + Backbone.js app be sure to add an authentification system., (*17)

Go further

In french: Utiliser Chaplin.js et Backbone.js avec Symfony 2 : installation et configuration, (*18)

Credits

This bundle has been created by Kévin Dunglas. The CoffeeScript code is largely inspired of an old implementation of Brunch + Chaplin TodoMVC implementation by Paul Millr., (*19)

TodoMVC, (*20)

The Versions