# django-pipeline **Repository Path**: mirrors/django-pipeline ## Basic Information - **Project Name**: django-pipeline - **Description**: Pipeline 是一个Django的资源包装库,提供CSS和JavaScript的串联和压缩,内置的JavaScript模板支持,以及可选的的数据URI图像和字体嵌入 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: https://www.oschina.net/p/django-pipeline - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2020-12-10 - **Last Updated**: 2026-02-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Pipeline ======== .. image:: https://jazzband.co/static/img/badge.svg :alt: Jazzband :target: https://jazzband.co/ .. image:: https://github.com/jazzband/django-pipeline/workflows/Test/badge.svg :target: https://github.com/jazzband/django-pipeline/actions :alt: GitHub Actions .. image:: https://codecov.io/gh/jazzband/django-pipeline/branch/master/graph/badge.svg :target: https://codecov.io/gh/jazzband/django-pipeline :alt: Coverage .. image:: https://readthedocs.org/projects/django-pipeline/badge/?version=latest :alt: Documentation Status :target: https://django-pipeline.readthedocs.io/en/latest/?badge=latest Pipeline is an asset packaging library for Django, providing both CSS and JavaScript concatenation and compression, built-in JavaScript template support, and optional data-URI image and font embedding. .. image:: https://github.com/jazzband/django-pipeline/raw/master/img/django-pipeline.svg :alt: Django Pipeline Overview Installation ------------ To install it, simply: .. code-block:: bash pip install django-pipeline Quickstart ---------- Pipeline compiles and compress your assets files from ``STATICFILES_DIRS`` to your ``STATIC_ROOT`` when you run Django's ``collectstatic`` command. These simple steps add Pipeline to your project to compile multiple ``.js`` and ``.css`` file into one and compress them. Add Pipeline to your installed apps: .. code-block:: python # settings.py INSTALLED_APPS = [ ... 'pipeline', ] Use Pipeline specified classes for ``STATICFILES_FINDERS`` and ``STATICFILES_STORAGE``: .. code-block:: python STATICFILES_STORAGE = 'pipeline.storage.PipelineManifestStorage' STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'pipeline.finders.PipelineFinder', ) Configure Pipeline: .. code-block:: python # The folowing config merges CSS files(main.css, normalize.css) # and JavaScript files(app.js, script.js) and compress them using # `yuglify` into `css/styles.css` and `js/main.js` # NOTE: Pipeline only works when DEBUG is False PIPELINE = { 'STYLESHEETS': { 'css_files': { 'source_filenames': ( 'css/main.css', 'css/normalize.css', ), 'output_filename': 'css/styles.css', 'extra_context': { 'media': 'screen,projection', }, }, }, 'JAVASCRIPT': { 'js_files': { 'source_filenames': ( 'js/app.js', 'js/script.js', ), 'output_filename': 'js/main.js', } } } Then, you have to install compilers and compressors binary manually. For example, you can install them using `NPM `_ and address them from ``node_modules`` directory in your project path: .. code-block:: python PIPELINE.update({ 'YUGLIFY_BINARY': path.join(BASE_DIR, 'node_modules/.bin/yuglify'), }) # For a list of all supported compilers and compressors see documentation Load static files in your template: .. code-block:: {% load pipeline %} {% stylesheet 'css_files' %} {% javascript 'js_files' %} Documentation ------------- For documentation, usage, and examples, see: https://django-pipeline.readthedocs.io Issues ------ You can report bugs and discuss features on the `issues page `_. Changelog --------- See `HISTORY.rst `_.