Differences between revisions 27 and 28
Revision 27 as of 2013-08-13 16:09:51
Size: 6270
Editor: sashahart
Comment: advise that the HTTP basic example is a CGI script, to slightly decrease chances of totally confusing people who are learning web development in Python
Revision 28 as of 2013-08-13 16:20:09
Size: 6288
Editor: sashahart
Comment: correct dead formbuild.org link (now a Japanese treatise on hair dye) to point to FormBuild's PyPI page instead
Deletions are marked like this. Additions are marked like this.
Line 29: Line 29:
 * [[http://formbuild.org/|FormBuild]] - FormBuild is a package designed to help with the generation of HTML form components.  * [[https://pypi.python.org/pypi/FormBuild/|FormBuild]] - FormBuild is a package designed to help with the generation of HTML form components.

Web Components

For use with some of the frameworks listed on WebFrameworks, the components/libraries/toolkits on this page often attempt to solve common problems in a way that can work with more than one particular framework; the idea being that you choose the component which does a particular job and it hopefully works with the framework you're developing your application in.

Authorization Toolkits

These allow you to add authorization to your web applications.

Form Handling

  • wheezy.html is a lightweight HTML widget rendering library with preprocessing features for template engines.

  • wheezy.validation is a lightweight model update and validation library.

  • WTForms is a forms validation and rendering library for python web development.

  • FormEncode - is a validation and form generation package.

  • FormBuild - FormBuild is a package designed to help with the generation of HTML form components.

  • tw.forms - Web Widgets for building and validating forms.

  • Deform is a featureful framework-agnostic form generation system.

Request Dispatchers

A dispatcher takes the requests (i.e. the URL that a user types in) and then provides the response (i.e. the web application that creates the webpage that the user sees).

  • wheezy.routing is a lightweight path routing library. It is a simple mapping between URL patterns (as plain simple strings, curly expressions or regular expressions) to a handler that can be anything you like. The mapping can include other mappings and constructed dynamically.

  • Routes is a Python re-implementation of the Rails routes system for mapping URL's to Controllers/Actions and generating URL's. Routes makes it easy to create pretty and concise URL's that are RESTful with little effort.

  • selector - provides WSGI middleware for "RESTful" mapping of URL paths to WSGI applications.

  • Colubrid is a WSGI publisher which simplifies Python web developement.If you've ever created a WSGI application without a framework of an request handler you know how hard this can be.

Templating Engines

Templating engines allow you to separate your application code from the presentation. Many of these engines can be used alone or within a high-level framework. A more extensive list can be found on the Templating page.

  • wheezy.template is written in pure Python code. It is a lightweight template library. The design goals achived:

    • Compact, Expressive, Clean: Minimizes the number of keystrokes required to build a template. Enables fast and well read coding.
    • Intuitive, No time to Learn: Basic Python programming skills plus HTML markup. You are productive just from start. Use full power of Python with minimal markup required to denote python statements.
    • Do Not Repeat Yourself: Master layout templates for inheritance; include and import directives for maximum reuse.
    • Blazingly Fast: Maximum rendering performance: ultimate speed and context preprocessor features.
  • Jinja2 is a small but fast and easy to use stand-alone template engine written in pure python.

  • Chameleon is a fast implementation of both TAL and Genshi syntaxes that compiles templates to python byte-code on first use.

  • ClearSilver is a templating framework for Python/C/Perl, this templating system is used in Google Groups & ...

  • Myghty (1.0 Released 2006-01-27) is a Python based templating framework originally based on HTML::Mason

  • Mako is an all-new templating engine which represents the best ideas of Myghty distilled into a completely-rewritten and updated API and syntax.

  • Ophelia (0.3 Released 2007-07-06) Generates XHTML pages from TAL templates. This avoids repetitive code, allows the site content to reside in the file system instead of a database, and lets Python scripts make the content dynamic.

  • JonsPythonModules (1.06 Released 2004-04-11) a set of simple yet powerful multi-threaded object-oriented CGI/FastCGI/mod_python/html-templating modules for Python

  • Cheetah - Cheetah is a Python-powered template engine and code generator. It may be used as a standalone utility or combined with other tools.

  • Genshi is a Python library that provides an integrated set of components for parsing, generating, and processing HTML, XML or other textual content for output generation on the web.

WebComponents (last edited 2017-02-27 10:29:32 by EtienneRobillard)

Unable to edit the page? See the FrontPage for instructions.