2017 © Pedro Peláez
 

library silex-assets

Asset pipeline using make

image

99designs/silex-assets

Asset pipeline using make

  • Thursday, January 22, 2015
  • by lox
  • Repository
  • 38 Watchers
  • 3 Stars
  • 453 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 7 Versions
  • 0 % Grown

The README.md

Silex Assets

Silex Assets aims to be the most minimal possible asset pipeline for using sass/requirejs in a Silex project., (*1)

Rather than depend on Gulp/Grunt, a Makefile is provided, or a set of Makefile includes to include in your project., (*2)

How does it work?

All asset compilation is done via the command-line. This means your app is ultra-lean, even in development. All assets are based around a dist directory, which is located in your web tree. A Makefile is used to generate a dist/.manifest file which contains what files have been generated and checksums for their contents., (*3)

The twig extension included then allows twig templates to reference files in dist, along with the checksum from the manifest as a cache-buster., (*4)

This looks like <link rel="stylesheet" src="/web/dist/mystylesheet.css?12312334234" /> where the number is a CRC32 checksum built in the make manifest target., (*5)

During development you can run make watch and changing sass will be re-compiled, a new manifest will be built and if you have the LiveReload plugin your browser will update., (*6)

Installing

composer require 99designs/silex-assets

Then add the provider to your app.php file:, (*7)

<?php

$app->register(new \SilexAssets\Provider\AssetsServiceProvider(array(
    'web_path' => '/dist',
    'output_dir' => __DIR__.'/../web/dist',
    'requirejs_compiled' => $app['assets.require_compiled'],
    'requirejs_output_dir' => __DIR__.'/../web/dist/js',
    'requirejs_web_path' => '/dist/js',
)));

Then there are twig extensions added that use a very similar syntax to the Assetic extensions:, (*8)

{% stylesheets 'css/swiftly.css' 'css/asimovicons.css' %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% javascripts "js/example.js" %}
    <script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% assets "js/example.js" %}
    <script src="{{ asset_url }}"></script>
{% endassets %}
{% requirejs 'bundles/frontpage' %}

The Versions

22/01 2015

dev-feat/add-rename-mode

dev-feat/add-rename-mode

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

16/12 2014

dev-master

9999999-dev

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

16/12 2014

v1.1.0

1.1.0.0

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

05/05 2014

v1.0.3

1.0.3.0

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

04/04 2014

v1.0.2

1.0.2.0

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

21/02 2014

v1.0.1

1.0.1.0

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline

17/02 2014

v1.0.0

1.0.0.0

Asset pipeline using make

  Sources   Download

MIT

The Requires

  • php >=5.3.3

 

The Development Requires

asset pipeline