TurboGears
Encyclopedia : T : TU : TUR : TurboGears
TurboGears is a Python web "megaframework" created by bringing together a number of mature components such as MochiKit, SQLObject, CherryPy and Kid, along with some TurboGears specific code to make everything work together easily.
TurboGears was created in 2005 by Kevin Dangoor as the framework being the as yet unreleased Zesty News product, but when he released it as an open source framework in the end of September, the project took off, with more than 30,000 screencast downloads in the first 3 months.
As of March 2006, just six months after its initial release, there were nearly 1,500 users on the high traffic TurboGears mailing list, a book from Prentice Hall in the works, and a number of open source TurboGears applications in the works.
TurboGears is designed around the Model-view-controller architecture, much like Struts or Ruby on Rails, designed to make rapid web application development in Python a lot easier and more maintainable.
TurboGears components are as follows:
- SQLObject as the Model - data backend that can create a database or interface with existing data on many database servers.
- Kid as the View' - XHTML frontend templating engine where all templates are valid XHTML or XML files that are usually made in a way that allows opening these templates as simple XHTML files to check the design. At the same time features are provided to embed snippets of Python in a XMLish manner.
- CherryPy as the Controller - a very interesting piece of middleware that allows web applications to be programmed only by writing event handlers that return data to (in TurboGears case) templates. The same data can also be received in AJAX fashion as a JSON data stream. CherryPy can be a webserver itself or one can launch it via any WSGI compatible environment (including Apache 2).
- MochiKit is an optional piece of TurboGears - it is a JavaScript library to make programming in JavaScript more Pythonic. It is mostly used for implementing AJAX features as it provides a very easy interface to get JSON data streams in asynchronous manner.
See also
- redirect
External links
- [TurboGears homepage]
- [TurboGears Blogs]
- [TurboGears google group]
- [Squidoo lens with lots of links to TurboGears related pages]
From Wikipedia, the Free Encyclopedia. Original article here. Support Wikipedia by contributing or donating.
All text is available under the terms of the GNU Free Documentation License See Wikipedia Copyrights for details.
