= Werkzeug = [[Image(http://werkzeug.pocoo.org/shared/werkzeug.png, align=right)]] Werkzeug is a collection of various utilities for WSGI applications. It features request and response objects as well as a powerful url dispatcher and a debugging system. If you're looking for information about Werkzeug, you're most likely in the wrong place. The Werkzeug webpage can be found at [http://werkzeug.pocoo.org/ werkzeug.pocoo.org], this is the Werkzeug bug tracker. If you want to file a bug please [http://dev.pocoo.org/projects/werkzeug/register register] and use your account to create tickets. ---- The [http://selenic.com/mercurial Mercurial] repository can be browsed [source:/ here], and checked out with {{{ hg clone http://dev.pocoo.org/hg/werkzeug-main}}} == Starting Points == * check out or browse the source [http://dev.pocoo.org/hg/werkzeug-main using mercurial] * browse the source [source:/ using Trac] * check the [http://build.pocoo.org/werkzeug/ buildbot] * create a new [http://dev.pocoo.org/projects/werkzeug/newticket bug report / feature request] * read [http://werkzeug.pocoo.org/documentation/ the documentation] * visit [http://werkzeug.pocoo.org/ the website] * join [irc://irc.freenode.net/%23pocoo the IRC channel] ([http://dev.pocoo.org/projects/pocoo/irclogs read the logs]) * read or post to the [http://groups.google.com/group/pocoo-libs mailing list] == Tips and Tricks == The following list points to various small and useful snippets for Werkzeug powered applications. Those snippets are community provided. If you have your own one, add it to the list. * [wiki:RequestResponseProcessor Request and Response Processor] — Django inspired high level in-application middlewares. * [wiki:ApplicationExample Application Example] — A real-world WSGI application() using Werkzeug. Includes URL & view examples. * [wiki:SQLAlchemyAndWerkzeug SQLAlchemy And Werkzeug] — Good ways to integrate SQLAlchemy into a Werkzeug powered application. * [wiki:UsingDebuggerWithDjango Using the Werkzeug Debugger with Django] — easily debug your Django applications using Werkzeug. * [wiki:DynamicDispatching Dynamic Dispatching] — create WSGI applications on the fly based on environment variables. * [wiki:ErrorHandlingInProduction Error Handling in Production Mode] — how to handle server errors in production environments. * [wiki:FCGIAuthHeader FCGI and HTTP Authentication] — a workaround for authorization headers in FastCGI * [wiki:UsingDebuggerWithAppEngine Using the Werkzeug Debugger with AppEngine] — debugger templates converted to Jinja2 and a little hack to make the debugger work with AppEngine development server. * [wiki:UsingNamedRulesWithWerkzeugRouting Using named rules with Werkzeug routing] == Not so clever Tricks == * [wiki:ReporterStream Using a reporter stream for uploads] — use a reporter stream for uploads with AJAX magic. == Contrib == * [wiki:WerkzeugGentooLiveEbuild Werkzeug live ebuild for Gentoo] — If you want to live on the unstable edge, then do it properly. * [wiki:WerkzeugBasedFrameworks] - Fuller stack frameworks based on Werkzeug. == Example Applications == Here a list of example applications with sourcecode available: * [browser:examples/plnt Plnt] — a planet application ([http://werkzeug.pocoo.org/e/plnt/ Online Demo]) * [browser:examples/simplewiki SimpleWiki] — a simple wiki application ([http://werkzeug.pocoo.org/e/simplewiki/ Online Demo]) * [browser:examples/shorty Shorty] — a tinyurl clone ([http://werkzeug.pocoo.org/e/shorty/ Online Demo]) More applications can be found in the [browser:examples examples folder]. == Development Documents == * [wiki:Werkzeug06Refactoring Werkzeug 0.6 Refactoring] — moving things around, deprecating others