From KaiRoWiki
Revision as of 14:11, January 18, 2011 by KaiRo (talk | contribs) (reorder categories)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The Rhine-Main-Danube channel connects different waterways to a large network bringing together transportation infrastructure for people from the Black Sea to the North Sea and in extension the Atlantic.

The tool using this code name (or the "RMD" abbreviation for it) is a (concept for a) universal communications (messaging/information/communication/notification management) add-on that runs in browser tabs.

In the first implementation, this would target to manage feeds (parsed with Firefox' internal feed parser) and twitter/status.net communication. Other sources should be able to be plugged in with further add-ons.


Something like "messages".

  • Primary Info - fixed table: subject, source, author, target, ID, status, read
    • source+ID combination is unique
  • Full Body - text bodies with fulltext index: ID, text, (headers block?)
  • Meta Info - freeform metadata: ID, type, value


Similar to "accounts" in Thunderbird, source engines ("account types") are pluggable.

  • Source: UID (internal), name, engine, parent
    • name+parent combination is unique
  • Source Meta: freeform metadata (key/value)

Virtual folders are sources of a special engine.


Using Contacts add-on (pluggable?)

Display Structure

Pluggable engines for:

  • folder tree
  • tabs
  • list view
  • item display


Defaults included in the base implementation, more can be added on.

  • Folder:
    • source-based hierarchical
  • Tabs:
    • 3pane (folder + list + item)
    • item (standalone message)
  • source:
    • feed
    • local?
    • twitter / status.net
    • virtual folder / query
    • ...
  • list
    • simple (tree)
    • text-in-list (esp. for twitter, etc. - rich list)
  • item display:
    • full
    • plain?
    • simplified?

Implementation Notes

  • Base XUL: loads utilities, dynamically loads pluggable tab as overlay
  • List: dynamically loaded as overlays
  • Source, Folder, Item: dynamically loaded as JS

Open Questions

  • Tags?
  • Notes?
  • Scheme Version?