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 (
HTTPHeaders
andEnvironHeaders
datastructures) - WebOb (parsing the
Accept
headers) - Bottle (embedding a simple template engine)
- Jinja2 and Mako (common template engine syntax and features)