Divmod : Nevow

Athena

Athena is the best-of-breed approach to developing interactive javascript (AJAX / Comet) applications with DivmodNevow.

Athena is :

  • a lot of things relating to javascript
  • communicating between python and javascript
  • organizing javascript code
  • a class-based object model for javascript
  • unit testing javascript
  • abstracting browser differences away from javascript

Before using Athena, you may want to check out the Nevow tutorial.

History

Divmod had AJAX before the much touted "Web 2.0" came into being and claimed XHR. It was called LivePage and worked with Twisted's Woven web application development tool. The Twisted and Divmod development communities were exploring and implementing two-way browser communications years ago that still aren't implemented by anyone else.

It should be noted that Athena supersedes previous solutions, such as Woven's LivePage. These prior solutions should not be used with Athena development (nor with Nevow).

Development Environment

If you haven't developed with JavaScript before, you may wish to set up your development environment before beginning with Athena. Some tips may be available, depending on your preferred tools:

Documentation

Testing

Visit the Testing Tutorial or Test Driven Development with Athena

Implementation

Though Divmod's use of it predates the term by several years, Athena uses what some have come to call Comet. Athena's JavaScript half makes an HTTP request before it actually needs to retrieve information from the server. The server does not respond to this request until it has something to tell the browser. In this way, the server can push events to the browser instantly.

Tickets

See open tickets for Athena here.

Attachments

jethro@divmod.org