Skip to content

klen/Flask-Collect

Repository files navigation

Flask-Collect

Flask-Collect is an extension for Flask that helps collecting static files.

Serving static files with Flask -- bad idea for production, this tool will help you collect them in one command. It checks application and blueprints for static files and copy them to specific folder (saves related paths).

Build Status

Coverals

Version

Downloads

Docs are available at http://flask-collect.readthedocs.org/. Pull requests with documentation enhancements and/or fixes are awesome and most welcome.

Requirements

  • python (2.6, 2.7, 3.3)
  • Flask >= 0.10.1

Installation

Flask-Collect should be installed using pip: :

pip install Flask-Collect

Setup

Flask-Collect settings (default values): :

# Target static dir
COLLECT_STATIC_ROOT = <APP.ROOT_PATH>/static
COLLECT_STORAGE = 'flask_collect.storage.file'

Initialize Flask-Collect extension: :

from flask_collect import Collect

...

collect = Collect()
collect.init_app(app)

If you use Flask-Script, activate Flask-Collect commands: :

from flask_collect import Collect

...
manager = Manager()
...

collect = Collect()
collect.init_app(app)
collect.init_script(manager)

If you configure Flask via a factory function:

from flask_collect import Collect

...

def create_app():
    app = Flask()
    ...
    collect = Collect()
    collect.init_app(app)

    return app

Use Flask-Collect

From any python script: :

collect.collect(verbose=True)

with Flask-Script: :

$ ./manage.py collect

with Flask>=0.11: :

$ flask collect

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/Flask-Collect/issues

Contributors

Maintainer: Kirill Klenov (horneds@gmail.com)

Also see the CONTRIBUTORS.rst file.

Contributing

Development of flask-collect happens at github: https://github.com/klen/Flask-Collect

License

Licensed under a BSD license.