twisted / nevow

Web Application Construction Kit
Other
62 stars 32 forks source link
html python

Divmod Nevow

Divmod Nevow is a web application construction kit written in Python. It is designed to allow the programmer to express as much of the view logic as desired in Python, and includes a pure Python XML expression syntax named stan to facilitate this. However it also provides rich support for designer-edited templates, using a very small XML attribute language to provide bi-directional template manipulation capability.

Nevow also includes Divmod Athena, a "two way web" or "COMET_" implementation, providing a two-way bridge between Python code on the server and JavaScript code on the client. Modular portions of a page, known as "athena fragments" in the server python and "athena widgets" in the client javascript, can be individually developed and placed on any Nevow-rendered page with a small template renderer. Athena abstracts the intricacies of HTTP communication, session security, and browser-specific bugs behind a simple remote-method-call interface, where individual widgets or fragments can call remote methods on their client or server peer with one method: "callRemote".

Installation

Before installing Nevow, you should install Twisted_, unless you are going to write very simple CGI applications. Nevow integrates fully with the twisted.web server providing easy deployment.

Nevow uses the standard distutils method of installation::

python setup.py install

If you do not have Twisted installed, you can run a subset of the tests using the test.py script. If you have twisted installed, the test.py script will issue the following trial command::

trial -v nevow.test formless.test

.. _Twisted: http://twistedmatrix.com/

Documentation

More detailed introductory documentation is available in the doc/ directory, along with the beginnings of a reference manual. A large number of examples are available in the examples/ directory. These examples require Twisted to run. A tac file (twisted application configuration) can be started by invoking twistd, the twisted daemon::

twistd -noy foo.tac

More Information

Information about Nevow commits_ is available on GitHub. The Nevow git repository can be checked out using::

git clone https://github.com/twisted/nevow.git

Discussion of Nevow occurs on the twisted.web mailing list. The Nevow developers are also often available for real-time help on the #twisted.web channel on irc.freenode.net.

.. Nevow commits: https://github.com/twisted/nevow/commits/master .. twisted.web mailing list: http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web .. #twisted.web channel: irc://irc.freenode.net/#twisted.web .. COMET: http://alex.dojotoolkit.org/?p=545