r78 - 15 Mar 2012 - 13:50:36 - MaryjaneMacelvanyYou are here: OSAF >  Developers Web  > WebHome

Chandler software development

Overview: three major projects with a common data model, sharing framework and external information model

Chandler comprises three projects:

At the core of the common data model is the Item class. Related attributes are added or subtracted by stamping

  • example: an event stamp adds date information to a note item.

Within the sharing framework the EIM (external information model) layer mediates between Chandler objects and their external serialised representations

  • example: Chandler Desktop 1 uses the EIM-based Chandler exchange format to save a backup.chex file whenever the application quits.

Apache License, Version 2.0 applies.

What to hack on

Chandler 1 is the code base for the 1.x desktop product. Releases of Chandler Server and Chandler Desktop 1.x are stable.

Since March 2009, all development is volunteer and most is towards Chandler 2 — the future of Chandler Desktop. This project is under construction and all forms of help are encouraged!

Some pages in the wiki are naturally outdated. The short history of the three projects is recommended reading.

If you use Chandler 1 and would like to fix a bug, go for it! Otherwise, focus on Chandler Server and Chandler 2.

Chandler Server, also known as Cosmo

Built on Tomcat, Hibernate, the Spring Framework, Acegi Security for Spring, iCal4J, Dojo, Abdera, Jackrabbit, Woodstox, and other best of breed technologies.

Reference material

Client access to Chandler Server data

Whilst many CalDAV clients are supported, being a reference implementation is not a priority.

Development tools

  • current tinderbox continuous build status
  • Windmill test framework for web applications

Quality assurance

Backend automation

Frontend automation

Chandler Desktop

Chandler 1

Written in Python, building on Twisted for networking services, Berkeley DB for storage and wxPython for the GUI framework.

Chandler Desktop 1.0.3:

  • uses Cosmo Morse Code to discover collections on a Cosmo server
  • does not automatically discover collections on a CalDAV server (instead: the application may be subscribed to URL of each collection)

Chandler 2

Written in Python, loosely coupled to wxPython for the GUI framework, based on Trellis. Ready for hacking on — limited UI, import and export of .chex files. (Not for end users — no packaged installers, no persistence.)
  • documentation
  • SVN: http://svn.osafoundation.org/chandler2/trunk/
  • installation
  • (bug tracker not set up yet)

Related services

Chandler Hub

An instance of Chandler Server provided by the Open Source Applications Foundation (OSAF)
  • hosted by the Internet Systems Consortium (ISC) — operations page
  • operations runbook

Related projects

Hosted or maintained by OSAF staff members, partially funded by OSAF, or in some other way directly related to the Foundation:
  • ChandlerQE for iPhone sends notes to Chandler Hub
  • ChandlerQE for Android sends notes to Chandler Hub
  • feedback server server component of the desktop feedback mechanism
  • M2Crypto Crypto and SSL toolkit for Python
  • parsedatetime Python library for parsing human-readable date/time text
  • PyEgads Python wrapper for EGADS, a cryptographically strong pseudo-random number generator and entropy daemon
  • PyICU Python extension wrapping ICU's C++ API
  • PyLucene GCJ-compiled version of Java Lucene integrated with Python
  • setuptools for packaging Python projects as_eggs_
  • subzilla utility to post subversion patches to Bugzilla, and apply patches from Bugzilla to a subversion tree
  • vobject Python package for parsing and generating vCard and vCalendar files
  • Windmill
  • wxPython in Chandler
  • Zanshin Python library for collaboration over HTTP, WebDAV and CalDAV

A more complete list of contributions to other projects personal injury protection.

Wikis: updates and obsolescence

Don't assume that every page is up to date! Alongside the Chandler Project blog, which began in 2003, this wiki provides a historical record of developments. Pages relating to Chandler 1 may be particularly outdated.

Questions and clarification

For clarification on any subject, please address the mailing lists or chat with us on IRC.

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r78 < r77 < r76 < r75 < r74 | More topic actions
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.