Frameworks will be added throughout the releases of the desktop. Version 1 will only have desktop app support. We will later add in support for custom backends, and a web frontend.

Web Frontend

  • Used to publish information to the world (example: blogs, photo albums, podcasts, etc.)
  • Not required for an app
  • An HTML template system w/ tags
  • Uses database API/user filesystem as data sources
  • Can write back to database API/filesystem using postdata (example usage: comments, ratings, tags, etc.)
  • Presented to the visitor as a user page, each app's frontend has a menu item, app frontends can be configured/hidden and default page can be set from the user's control panel
  • Should have "mobile" pages. Where users from a cell phone or low-level Internet can still interact with the desktop program.

Backend

  • Not required for an app
  • Backends written in PHP and Python
  • Used in specialty apps where a certain PHP/Python module would be needed

Desktop app

  • written entirely in javascript
  • various APIs to simplify work
    • Sound/Video through AFLAX
    • Backend API to access backends easily
    • Window/widget API with dijit for UI
    • Database/Filesystem API so using custom database tables and a backend is not necessary
  • Full featured apps can be written without use of any custom backends