Skip to main content

assets management extension for TurboGears2

Project description

About tgext.webassets

tgext.webassets is a TurboGears2 extension for assets management based on WebAssets.

Installing

tgext.webassets can be installed from pypi:

pip install tgext.webassets

should just work for most of the users.

Usage

To enable tgext.webassets put inside your application config/app_cfg.py the following:

from tgext import webassets

webassets.plugme(base_config, bundles={
    'js_all': webassets.Bundle('javascript/jquery.js', 'javascript/bootstrap.min.js',
                               filters='rjsmin', output='assets/js_all.js')
})

or you can use tgext.pluggable when available:

from tgext.pluggable import plug
from tgext.webassets import Bundle

plug(base_config, 'tgext.webassets', bundles={
    'js_all': Bundle('javascript/jquery.js', 'javascript/bootstrap.min.js',
                     filters='rjsmin', output='assets/js_all.js')
})

By default tgext.webassets will load and save assets inside the turbogears static_files path. Which is usually the public directory inside your application.

The webassets environment will then be available as tg.app_globals.webassets, so you can use it inside your templates to load the assets:

<script py:for="asset_url in g.webassets.js_all.urls()" src="$asset_url"></script>

Each registered bundle will be available as a property of the g.webassets object inside templates.

Bundles

ŧgext.webassets accepts the bundles inside the bundles dictionary. Each entry can be a Bundle instance or a webassets loader in case you want to load bundles from a configuration file.

Configuring

Options available in WebAssets Environment are also available in tgext.webassets, pass them as arguments to the plug (inside the options dictionary when using tgext.webassets.plugme) or provide the through AppConfig or .ini file with webassets. namespace.

Some have values that are inherited from your project configuration if not specified:

  • debug: If webassets is running in debug mode or not, by default is False.

  • base_dir: The directory assets will be located. By default is your project static_files directory.

  • base_url: The url static assets are served, by default /. Use this option to serve them from a CDN.

  • cache: If we should use webassets cache (if boolean), or override default path to cache directory by default assets are cached inside the .webassets-cache directory inside base_dir.

Builtin Filters

tgext.webassets comes with builtin the rjsmin and cssmin filter, all webassets filters work if the required tools are available.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tgext.webassets-0.0.2.tar.gz (4.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page