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.
from fiole import get, run_fiole
@get('/')
def index(request):
return 'Hello World!'
run_fiole()
See examples/ for more usages:
python fiole.py examples
Thank you to Daniel Lindsley (toastdriven) for itty, 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:
it is the inspiration for the template engine of fiole.py.
The following projects were also a great source of ideas:
- Werkzeug (
HTTPHeadersandEnvironHeadersdatastructures) - WebOb (parsing the
Acceptheaders) - Bottle (embedding a simple template engine)
- Jinja2 and Mako (common template engine syntax and features)