Size: 1345
Comment:
|
Size: 4309
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
This topic guide is a word by word copy of Paul Boddie's [http://www.boddie.org.uk/python/web_frameworks.html Python Web Frameworks Overview]. Putting it into Wiki format hopefully allows more people to contribute. |
#pragma section-numbers off |
Line 4: | Line 3: |
The main purpose of this topic guide is to help in choosing a framework for web programming without having to learn each of them. In addition, information about different PresentationTechnologies is also provided, where appropriate, since this can be a major deciding factor in choosing a framework. | '''or, more aptly put, Web ''Server'' Programming''' |
Line 6: | Line 5: |
Although comments and clarifications by the framework authors are very much appreciated, adding a standard signature like InTheirOwnWords would help to bring words like 'easy' and 'intuitive' into context. | See also: * WebClientProgramming * DatabaseProgramming (guidance on available DatabaseInterfaces and related tools) * ["PythonAndJ2EE"] (comparison of various frameworks to J2EE) The main purpose of this topic guide is to help in choosing between the plethora of frameworks and templating systems for Web programming, without having to learn each of them. In addition, information about different PresentationTechnologies is also provided, where appropriate, since this can be a major deciding factor in choosing a framework. ==== Notes on Editing ==== Opinions based on experience are welcome, but framework or templating system authors should sign their comments with InTheirOwnWords to admit to a certain bias. |
Line 10: | Line 18: |
Known frameworks: | When adding new entries choose Web``Programming``Template when creating the page. ==== Other Guides ==== The listing is '''up-to-date as of 2003-02-11''' The Web Framework Shootout (at http://colorstudy.com/docs/shootout.html) also covers several of these frameworks. ==== To Do ==== * The templating systems should really get a different page layout, showing examples etc. * describe PHP and Java in the same format as quite a few will want to compare to them anyway * Is there any interest in a WebProgrammingShootOut? Editor: DanielDittmar (this means only that I will adapt the entries to changes in the WebProgrammingTemplate and that I will try to keep the version entries current) = Alternative Classification = == Python-based == === Application Frameworks === * ["Albatross"] * CherryPy * ["Draco"] * [http://jotweb.tummy.com/ JOTWeb] * ["Karrigell"] * [http://pywork.sf.net PyWork] * SkunkWeb * [http://snakelets.sourceforge.net/ Snakelets] * ["Quixote"] * TwistedMatrix * [http://www.webtk.org/ WebTK] * ["Webware"] |
Line 12: | Line 52: |
* WebWare * SkunkWeb * TwistedMatrix * ["Quixote"] * ["Albatross"] |
* [http://snakelets.sourceforge.net/ Snakelets] === Variable Insertion-Replacement Templating Applications (Pre-processors) === * ["Castalian"] * ["Cheetah"] * CubicTemp |
Line 18: | Line 60: |
* ["pso"] | |
Line 19: | Line 62: |
* CherryPy | * [http://www.methods.co.nz/asciidoc/ AsciiDoc] * [http://www.nthwave.net/elements/ Elements] * EmPy * [http://htmltmpl.sourceforge.net/ htmltmpl] * [http://www.entrian.com/PyMeld PyMeld] * [http://www.owlfish.com/software/simpleTAL/ SimpleTAL] * [http://www.execulink.com/~robin1/wasp/readme.html WASP] * [http://www.livinglogic.de/Python/xist/ XIST] * [http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52305 YAPTU] === Embedding the Python Interpreter into HTTP (Web) Servers === * ModPython for Apache * ["PyWX"] for AOLServer * [http://adullact.net/projects/pythml/ PythMl] === Web-based XML processing Engines === * ["4Suite"] |
Line 21: | Line 81: |
=== HTML Shorthand Processors === The libraries in this section implement simpler markup languages that can be automatically converted to HTML. This lets you avoid having to write HTML by hand. * [http://www.methods.co.nz/asciidoc/ AsciiDoc] * ReStructuredText * PyTextile == Jython-accessible Java toolkits == === Servlet-like Engines === * [http://www.webmacro.org/ WebMacro] * [http://jakarta.apache.org/velocity/index.html Velocity] === Variable Insertion-Replacement Templating Applications (Pre-processors) === * [http://java.sun.com/products/jsp Java Server Pages, JSP] * [http://freemarker.org/index.html FreeMarker] (with Jython data binding) == Python-accessible C toolkits == === HTML Templating === |
|
Line 22: | Line 109: |
* ScriptFoundryModules * ["Slither"] * add new entries by using the code in the WebProgrammingTemplate |
|
Line 26: | Line 110: |
Is there any interest in a WebProgrammingShootOut? | == Object Persistence and Object Relational Layers == |
Line 28: | Line 112: |
Editor: DanielDittmar | See = Related Links = This topic guide started out as a word by word copy of PaulBoddie's [http://www.boddie.org.uk/python/web_frameworks.html Python Web Frameworks Overview]. OriginalWebProgrammingClassification is an older listing of Python-related web tools. Now only of historical interest. |
or, more aptly put, Web Server Programming
See also:
DatabaseProgramming (guidance on available DatabaseInterfaces and related tools)
- ["PythonAndJ2EE"] (comparison of various frameworks to J2EE)
The main purpose of this topic guide is to help in choosing between the plethora of frameworks and templating systems for Web programming, without having to learn each of them. In addition, information about different PresentationTechnologies is also provided, where appropriate, since this can be a major deciding factor in choosing a framework.
Notes on Editing
Opinions based on experience are welcome, but framework or templating system authors should sign their comments with InTheirOwnWords to admit to a certain bias.
The rather strict format of the main entries (described in WebProgrammingTemplateHelp) should not been seen as a limit. Feel free to add new pages containing examples, direct comparisons etc.
When adding new entries choose WebProgrammingTemplate when creating the page.
Other Guides
The listing is up-to-date as of 2003-02-11
The Web Framework Shootout (at http://colorstudy.com/docs/shootout.html) also covers several of these frameworks.
To Do
- The templating systems should really get a different page layout, showing examples etc.
- describe PHP and Java in the same format as quite a few will want to compare to them anyway
Is there any interest in a WebProgrammingShootOut?
Editor: DanielDittmar (this means only that I will adapt the entries to changes in the WebProgrammingTemplate and that I will try to keep the version entries current)
Alternative Classification
Python-based
Application Frameworks
- ["Albatross"]
- ["Draco"]
[http://jotweb.tummy.com/ JOTWeb]
- ["Karrigell"]
[http://snakelets.sourceforge.net/ Snakelets]
- ["Quixote"]
[http://www.webtk.org/ WebTK]
- ["Webware"]
- ["Zope"]
[http://snakelets.sourceforge.net/ Snakelets]
Variable Insertion-Replacement Templating Applications (Pre-processors)
- ["Castalian"]
- ["Cheetah"]
- ["pso"]
- ["Spyce"]
[http://www.nthwave.net/elements/ Elements]
[http://htmltmpl.sourceforge.net/ htmltmpl]
[http://www.owlfish.com/software/simpleTAL/ SimpleTAL]
[http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52305 YAPTU]
Embedding the Python Interpreter into HTTP (Web) Servers
ModPython for Apache
- ["PyWX"] for AOLServer
Web-based XML processing Engines
- ["4Suite"]
- ["maki"]
HTML Shorthand Processors
The libraries in this section implement simpler markup languages that can be automatically converted to HTML. This lets you avoid having to write HTML by hand.
Jython-accessible Java toolkits
Servlet-like Engines
Variable Insertion-Replacement Templating Applications (Pre-processors)
[http://java.sun.com/products/jsp Java Server Pages, JSP]
[http://freemarker.org/index.html FreeMarker] (with Jython data binding)
Python-accessible C toolkits
HTML Templating
Object Persistence and Object Relational Layers
See
Related Links
This topic guide started out as a word by word copy of PaulBoddie's [http://www.boddie.org.uk/python/web_frameworks.html Python Web Frameworks Overview].
OriginalWebProgrammingClassification is an older listing of Python-related web tools. Now only of historical interest.