Differences between revisions 3 and 16 (spanning 13 versions)
Revision 3 as of 2002-08-17 07:12:52
Size: 1031
Editor: lon-cache2-1
Comment:
Revision 16 as of 2011-02-26 00:47:29
Size: 3202
Editor: PaulBoddie
Comment: Updated version.
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
A framework for WebProgramming.
Line 4: Line 5:
   URL:: http://www.object-craft.com.au/projects/albatross/
   version:: 0.06 (''[[Date(2002-03-15T00:00:00)]]'')
   licence:: Albatross uses a Open Source BSD-like [http://www.object-craft.com.au/cgi-bin/faq/albatross?req=compat#1.3 license] that permits most uses.
   platforms:: Unix and Windows
   Python versions::
  URL:: http://www.object-craft.com.au/projects/albatross/
    version:: 1.40 (''<<Date(2010-03-15T00:00:00)>>'')
    license:: Albatross uses a Open Source BSD-like [[http://www.object-craft.com.au/cgi-bin/faq/albatross?req=compat#1.3|license]] that permits most uses.
    platforms:: Unix and Windows
  Python versions:: Python 2.2 and up
Line 12: Line 13:
   Allows programs to be deployed as CGI or mod_python applications on either Unix or Windows. Applications can be coded
   as monolithic scripts or as a collection of page modules. Switching deployment between CGI and mod_python can be
   achieved by changing less than 10 lines of code.
Allows programs to be deployed as CGI, FastCGI, mod_python or stand-alone applications on either Unix or Windows. Applications can be coded
as monolithic scripts or as a collection of page modules. Switching deployment methods can be achieved by changing less than 10 lines of code.

A number of server and client side session schemes are supported.
Line 18: Line 20:
Albatross is particularly suited to building small stateful web applications quickly, but also scales well to large applications.
Line 19: Line 23:

Albatross functionality is provided via a collection of mixin classes which provide variant implementations of
common functional areas. There are also a collection of pre-packed classes which combine the basic mixins to
implement commonly used functionality.

If any aspect of the functionality does not suit your needs you are encouraged to substitute your own mixin classes.
Line 22: Line 32:
Albatross applications are a collection of Python modules and HTML template files. All code and templates are
stored in the host file system.
Line 23: Line 36:

Albatross session functionality is provided by a combination of application and execution context mixins. The
supplied mixins support the following session options.

   * No sessions.

   * Client side sessions using MD5 signed pickles in hidden fields.

   * Server side sessions using the Albatross TCP session server.

   * Server side sessions using the file system.

   * Server side sessions with branching - this scheme reduces the problems caused by users using the browser <back> button.

All session ids are randomly generated 64 bit numbers using /dev/urandom if available falling back to random module.
Line 26: Line 54:
No support provided - just use your favourite DB-API modules.
Line 27: Line 57:

Albatross uses a DTML like templating scheme. The more interesting templating functions are:

   * Derive attribute values from python expressions for arbitrary tags.

   * Automatic sequence pagination.

   * Presentation and browsing of tree structured data with optional lazy loading and/or "Ellipsis View". This allows huge trees to be browsed.

   * Simple but powerful macro definition and expansion.

   * Switch like lookup tables to translate native Python values to arbitrary template content.
Line 33: Line 75:

Object Craft (the developers of Albatross) are committed to ongoing maintenance and enhancement of Albatross as they use
it in a number of their consulting projects.

A framework for WebProgramming.

Masthead

URL

http://www.object-craft.com.au/projects/albatross/

version

1.40 (2010-03-15)

license

Albatross uses a Open Source BSD-like license that permits most uses.

platforms
Unix and Windows
Python versions
Python 2.2 and up

Deployment Platforms

Allows programs to be deployed as CGI, FastCGI, mod_python or stand-alone applications on either Unix or Windows. Applications can be coded as monolithic scripts or as a collection of page modules. Switching deployment methods can be achieved by changing less than 10 lines of code.

A number of server and client side session schemes are supported.

Suitability

Albatross is particularly suited to building small stateful web applications quickly, but also scales well to large applications.

Development Interfaces

Albatross functionality is provided via a collection of mixin classes which provide variant implementations of common functional areas. There are also a collection of pre-packed classes which combine the basic mixins to implement commonly used functionality.

If any aspect of the functionality does not suit your needs you are encouraged to substitute your own mixin classes.

Environment Access

Albatross applications are a collection of Python modules and HTML template files. All code and templates are stored in the host file system.

Session, Identification and Authentication

Albatross session functionality is provided by a combination of application and execution context mixins. The supplied mixins support the following session options.

  • No sessions.
  • Client side sessions using MD5 signed pickles in hidden fields.
  • Server side sessions using the Albatross TCP session server.
  • Server side sessions using the file system.
  • Server side sessions with branching - this scheme reduces the problems caused by users using the browser <back> button.

All session ids are randomly generated 64 bit numbers using /dev/urandom if available falling back to random module.

Persistence Support

No support provided - just use your favourite DB-API modules.

Presentation Support

Albatross uses a DTML like templating scheme. The more interesting templating functions are:

  • Derive attribute values from python expressions for arbitrary tags.
  • Automatic sequence pagination.
  • Presentation and browsing of tree structured data with optional lazy loading and/or "Ellipsis View". This allows huge trees to be browsed.
  • Simple but powerful macro definition and expansion.
  • Switch like lookup tables to translate native Python values to arbitrary template content.

InTheirOwnWords

Albatross is a toolkit for developing highly stateful web applications.

Comments

Object Craft (the developers of Albatross) are committed to ongoing maintenance and enhancement of Albatross as they use it in a number of their consulting projects.

Albatross (last edited 2011-02-26 00:47:29 by PaulBoddie)

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