Metadata-Version: 2.0
Name: fiole
Version: 0.4.1
Summary: The handy Python web framework.
Home-page: http://fiole.readthedocs.org/
Author: Florent Xicluna
Author-email: florent.xicluna@gmail.com
License: BSD
Keywords: web framework WSGI templating template
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Server
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Markup :: HTML

========
fiole.py
========

``fiole.py`` is a WSGI micro-framework with the following development
constraints:

* Single file, **no external dependency**
* Provide enough features to build a web application with minimal effort
* Embed **a compact template engine**
* Keep the module reasonably small


Main features:

* Routing
* Methods GET/HEAD/POST/PUT/DELETE
* Error handlers
* File uploads
* Static files
* Fast template engine
* Secure cookies


**Disclaimer:** this framework is intentionally limited.  If you need a robust
and scalable solution, look elsewhere.


Example
=======

::

  from fiole import get, run_fiole


  @get('/')
  def index(request):
      return 'Hello World!'

  run_fiole()

See ``examples/`` for more usages:

::

  python fiole.py examples


`Online documentation <https://fiole.readthedocs.org/en/latest/>`_.


Thanks
======

Thank you to Daniel Lindsley (toastdriven) for `itty
<https://github.com/toastdriven/itty#readme>`_, the itty-bitty web framework
which helped me to kick-start the project.

Thank you to Andriy Kornatskyy (akorn) for his blazingly fast and elegant
template library `wheezy.template <http://pythonhosted.org/wheezy.template/>`_:
it is the inspiration for the template engine of ``fiole.py``.

The following projects were also a great source of ideas:

* `Werkzeug <http://werkzeug.pocoo.org/>`_ (``HTTPHeaders`` and
  ``EnvironHeaders`` datastructures)
* `WebOb <http://docs.webob.org/>`_ (parsing the ``Accept`` headers)
* `Bottle <http://bottlepy.org/>`_ (embedding a simple template engine)
* `Jinja2 <http://jinja.pocoo.org/>`_ and `Mako
  <http://www.makotemplates.org/>`_ (common template engine syntax and
  features)


.. image:: https://travis-ci.org/florentx/fiole.png?branch=master
   :target: https://travis-ci.org/florentx/fiole
   :alt: Build status


