305 lines
10 KiB
Python
305 lines
10 KiB
Python
# -*- coding: utf-8 -*-
|
|
from urlparse import urlparse
|
|
from werkzeug import url_quote
|
|
from flask import Markup
|
|
|
|
|
|
class Extension(object):
|
|
|
|
def __init__(self, name, author, description,
|
|
github=None, bitbucket=None, docs=None, website=None,
|
|
approved=False):
|
|
self.name = name
|
|
self.author = author
|
|
self.description = Markup(description)
|
|
self.github = github
|
|
self.bitbucket = bitbucket
|
|
self.docs = docs
|
|
self.website = website
|
|
self.approved = approved
|
|
|
|
def to_json(self):
|
|
rv = vars(self).copy()
|
|
rv['description'] = unicode(rv['description'])
|
|
return rv
|
|
|
|
@property
|
|
def pypi(self):
|
|
return 'http://pypi.python.org/pypi/%s' % url_quote(self.name)
|
|
|
|
@property
|
|
def docserver(self):
|
|
if self.docs:
|
|
return urlparse(self.docs)[1]
|
|
|
|
|
|
extensions = [
|
|
Extension('Flask-OAuth', 'Armin Ronacher',
|
|
description='''
|
|
<p>Adds <a href="http://oauth.net/">OAuth</a> support to Flask.
|
|
''',
|
|
github='mitsuhiko/flask-oauth',
|
|
docs='http://packages.python.org/Flask-OAuth/'
|
|
),
|
|
Extension('Flask-OpenID', 'Armin Ronacher',
|
|
description='''
|
|
<p>Adds <a href="http://openid.net/">OpenID</a> support to Flask.
|
|
''',
|
|
github='mitsuhiko/flask-openid',
|
|
docs='http://packages.python.org/Flask-OpenID/'
|
|
),
|
|
Extension('Flask-Babel', 'Armin Ronacher',
|
|
description='''
|
|
<p>Adds i18n/l10n support to Flask, based on
|
|
<a href=http://babel.edgewall.org/>babel</a> and
|
|
<a href=http://pytz.sourceforge.net/>pytz</a>.
|
|
''',
|
|
github='mitsuhiko/flask-babel',
|
|
docs='http://packages.python.org/Flask-Babel/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-SQLAlchemy', 'Armin Ronacher',
|
|
description='''
|
|
<p>Adds SQLAlchemy support to Flask. Quick and easy.
|
|
''',
|
|
github='mitsuhiko/flask-sqlalchemy',
|
|
docs='http://packages.python.org/Flask-SQLAlchemy/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-XML-RPC', 'Matthew Frazier',
|
|
description='''
|
|
<p>Adds <a href="http://www.xmlrpc.com/">XML-RPC</a> support to Flask.
|
|
''',
|
|
bitbucket='leafstorm/flask-xml-rpc',
|
|
docs='http://packages.python.org/Flask-XML-RPC/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-CouchDB', 'Matthew Frazier',
|
|
description='''
|
|
<p>Adds <a href="http://couchdb.apache.org/">CouchDB</a> support to Flask.
|
|
''',
|
|
bitbucket='leafstorm/flask-couchdb',
|
|
docs='http://packages.python.org/Flask-CouchDB/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Uploads', 'Matthew Frazier',
|
|
description='''
|
|
<p>Flask-Uploads allows your application to flexibly and
|
|
efficiently handle file uploading and serving the uploaded files.
|
|
You can create different sets of uploads - one for document
|
|
attachments, one for photos, etc.
|
|
''',
|
|
bitbucket='leafstorm/flask-uploads',
|
|
docs='http://packages.python.org/Flask-Uploads/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Themes', 'Matthew Frazier',
|
|
description='''
|
|
<p>Flask-Themes makes it easy for your application to support
|
|
a wide range of appearances.
|
|
''',
|
|
bitbucket='leafstorm/flask-themes',
|
|
docs='http://packages.python.org/Flask-Themes/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-CouchDBKit', 'Kridsada Thanabulpong',
|
|
description='''
|
|
<p>Adds <a href="http://www.couchdbkit.org/">CouchDBKit</a> support to Flask.
|
|
''',
|
|
github='sirn/flask-couchdbkit',
|
|
docs='http://packages.python.org/Flask-CouchDBKit/'
|
|
),
|
|
Extension('Flask-Genshi', 'Dag Odenhall',
|
|
description='''
|
|
<p>Adds support for the <a href="http://genshi.edgewall.org/">Genshi</a>
|
|
templating language to Flask applications.
|
|
''',
|
|
github='dag/flask-genshi',
|
|
docs='http://packages.python.org/Flask-Genshi/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Mail', 'Dan Jacob',
|
|
description='''
|
|
<p>Makes sending mails from Flask applications very easy and
|
|
has also support for unittesting.
|
|
''',
|
|
bitbucket='danjac/flask-mail',
|
|
docs='http://packages.python.org/flask-mail/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-WTF', 'Dan Jacob',
|
|
description='''
|
|
<p>Flask-WTF offers simple integration with WTForms. This
|
|
integration includes optional CSRF handling for greater security.
|
|
''',
|
|
bitbucket='danjac/flask-wtf',
|
|
docs='http://packages.python.org/Flask-WTF/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Testing', 'Dan Jacob',
|
|
description='''
|
|
<p>The Flask-Testing extension provides unit testing utilities for Flask.
|
|
''',
|
|
bitbucket='danjac/flask-testing',
|
|
docs='http://packages.python.org/Flask-Testing/',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Script', 'Dan Jacob',
|
|
description='''
|
|
<p>The Flask-Script extension provides support for writing external
|
|
scripts in Flask. It uses argparse to parse command line arguments.
|
|
''',
|
|
bitbucket='danjac/flask-script',
|
|
docs='http://packages.python.org/Flask-Script/',
|
|
approved=True
|
|
),
|
|
Extension('flask-csrf', 'Steve Losh',
|
|
description='''
|
|
<p>A small Flask extension for adding
|
|
<a href=http://en.wikipedia.org/wiki/CSRF>CSRF</a> protection.
|
|
''',
|
|
docs='http://sjl.bitbucket.org/flask-csrf/',
|
|
bitbucket='sjl/flask-csrf'
|
|
),
|
|
Extension('flask-lesscss', 'Steve Losh',
|
|
description='''
|
|
<p>
|
|
A small Flask extension that makes it easy to use
|
|
<a href=http://lesscss.org/>LessCSS</a> with your
|
|
Flask application.
|
|
''',
|
|
docs='http://sjl.bitbucket.org/flask-lesscss/',
|
|
bitbucket='sjl/flask-lesscss'
|
|
),
|
|
Extension('Flask-Creole', 'Ali Afshar',
|
|
description='''
|
|
<p>Creole parser filters for Flask.
|
|
''',
|
|
docs='http://packages.python.org/Flask-Creole',
|
|
bitbucket='aafshar/flask-creole-main',
|
|
approved=True
|
|
),
|
|
Extension('Flask-Cache', 'Thadeus Burgess',
|
|
description='''
|
|
<p>Adds cache support to your Flask application.
|
|
''',
|
|
docs='http://packages.python.org/Flask-Cache',
|
|
github='thadeusb/flask-cache',
|
|
),
|
|
Extension('Flask-Principal', 'Ali Afshar',
|
|
description='''
|
|
<p>Identity management for Flask.
|
|
''',
|
|
docs='http://packages.python.org/Flask-Principal',
|
|
bitbucket='aafshar/flask-principal-main',
|
|
approved=False
|
|
),
|
|
Extension('Flask-Zen', 'Noah Kantrowitz',
|
|
description='''
|
|
<p>Flask-Zen allows you to use PyZen via Flask-Script commands.
|
|
''',
|
|
docs='http://packages.python.org/Flask-Zen/',
|
|
github='coderanger/flask-zen',
|
|
approved=False
|
|
),
|
|
Extension('Flask-Assets', u'Michael Elsdörfer',
|
|
description='''
|
|
<p>
|
|
Integrates the webassets library with Flask, adding support for
|
|
merging, minifying and compiling CSS and Javascript files.
|
|
''',
|
|
docs='http://elsdoerfer.name/docs/flask-assets/',
|
|
github='miracle2k/flask-assets',
|
|
approved=False
|
|
),
|
|
Extension('Flask-AutoIndex', 'Heungsub Lee',
|
|
description='''
|
|
<p>
|
|
An extension that generates an index page for your Flask
|
|
application automatically
|
|
''',
|
|
docs='http://packages.python.org/Flask-AutoIndex/',
|
|
github='sublee/flask-autoindex',
|
|
approved=False
|
|
),
|
|
Extension('Flask-Celery', 'Ask Solem',
|
|
description='''
|
|
<p>
|
|
Celery integration for Flask
|
|
''',
|
|
docs='http://ask.github.com/celery/',
|
|
github='ask/flask-celery',
|
|
approved=False
|
|
),
|
|
Extension('Frozen-Flask', 'Simon Sapin',
|
|
description='''
|
|
<p>
|
|
Freezes a Flask application into a set of static files.
|
|
The result can be hosted without any server-side software
|
|
other than a traditional web server.
|
|
''',
|
|
docs='http://packages.python.org/Frozen-Flask/',
|
|
github='SimonSapin/Frozen-Flask',
|
|
approved=False
|
|
),
|
|
Extension('Flask-FlatPages', 'Simon Sapin',
|
|
description='''
|
|
<p>
|
|
Provides flat static pages to a Flask application, based on text
|
|
files as opposed to a relational database.
|
|
''',
|
|
docs='http://packages.python.org/Flask-FlatPages/',
|
|
github='SimonSapin/Flask-FlatPages',
|
|
approved=False
|
|
),
|
|
Extension('Flask-FluidDB', 'Ali Afshar',
|
|
description='''
|
|
<p>
|
|
FluidDB access for Flask.
|
|
''',
|
|
docs='http://packages.python.org/Flask-FluidDB/',
|
|
bitbucket='aafshar/flask-fluiddb-main',
|
|
approved=False
|
|
),
|
|
Extension('Flask-Gravatar', 'Zelenyak Aleksandr',
|
|
description='''
|
|
<p>
|
|
Small extension for Flask to make using Gravatar easy.
|
|
''',
|
|
docs='http://packages.python.org/Flask-Gravatar/',
|
|
github='zzzsochi/Flask-Gravatar',
|
|
approved=False
|
|
),
|
|
Extension('Flask-HTMLBuilder', 'Zahari Petkov',
|
|
description='''
|
|
<p>
|
|
Flask-HTMLBuilder is an extension that allows flexible and easy
|
|
Python-only generation of HTML snippets and full HTML documents
|
|
using a robust syntax.
|
|
''',
|
|
docs='http://majorz.github.com/flask-htmlbuilder/',
|
|
github='majorz/flask-htmlbuilder',
|
|
approved=False
|
|
),
|
|
Extension('Flask-MongoAlchemy', 'Francisco Souza',
|
|
description='''
|
|
<p>
|
|
Add Flask support for MongoDB using MongoAlchemy.
|
|
''',
|
|
docs='http://packages.python.org/Flask-MongoAlchemy/',
|
|
github='cobrateam/flask-mongoalchemy',
|
|
approved=False
|
|
),
|
|
Extension('Flask-DebugToolbar', 'Michael van Tellingen',
|
|
description='''
|
|
<p>
|
|
A port of the Django debug toolbar to Flask
|
|
''',
|
|
docs='https://github.com/mvantellingen/flask-debugtoolbar',
|
|
github='mvantellingen/flask-debugtoolbar',
|
|
approved=False
|
|
)
|
|
]
|
|
|
|
|
|
extensions.sort(key=lambda x: x.name.lower())
|