Metadata-Version: 2.3
Name: quart-assets
Version: 0.1.0
Summary: Asset management for Quart apps
License: BSD-2-Clause
Author: Sasha Gerrand
Author-email: quart-assets@sgerrand.dev
Requires-Python: >=3.9
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: pyscss
Requires-Dist: pyyaml
Requires-Dist: quart (>=0.20.0,<0.21.0)
Requires-Dist: webassets (>=2.0)
Project-URL: Bug Tracker, https://github.com/sgerrand/quart-assets/issues
Project-URL: Documentation, https://quart-assets.readthedocs.io
Project-URL: Homepage, https://github.com/sgerrand/quart-assets
Project-URL: Repository, https://github.com/sgerrand/quart-assets
Description-Content-Type: text/markdown

# Quart-Assets

[![Build Status](https://github.com/sgerrand/quart-assets/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/sgerrand/quart-assets/actions/workflows/tests.yml)
[![License](https://img.shields.io/badge/License-BSD%202--Clause-blue.svg)](https://opensource.org/licenses/BSD-2-Clause)

Quart-Assets is an extension for [Quart][quart] that supports merging,
minifying and compiling CSS and Javascript files via the
[`webassets`][webassets] library.

## Usage

To use Quart-Assets with a Quart app, you have to create a QuartAssets
instance and initialise it with the application:

```python
from quart import Quart
from quart_assets import Bundle, QuartAssets

app = Quart(__name__)
assets = QuartAssets(app)

js_bundle = Bundle('alpine.js', 'main.js', 'utils.js',
                   filters='jsmin', output='dist/all.min.js')
assets.register('js_all', js_bundle)
```

A bundle consists of any number of source files (it may also contain other
nested bundles), an output target, and a list of filters to apply.

All paths are relative to your app’s static directory, or the static directory of a Quart blueprint.


[quart]: https://quart.palletprojects.com
[webassets]: https://webassets.readthedocs.io

