This is an old revision of the document!


App Store for Modules

Sahana App Store Requirements - Summary of Ideas and Evolving Consensus

Background

The design and implementation plan for a Sahana App Store is being done in conjunction with a Google Summer of Code 2010 project for an Agasti Module Manager. It is not expected that the GSoC effort will deliver an actual App Store implementation during the summer, but simply provide a direction.

The extent to which the App Store roadmap discussed here is product-specific (e.g., Agasti) will have to be defined, as will the evolution of Module Managers to support it. The server-side of the store can in theory be implemented in any convenient language and framework, separate from those used in Eden (Python/Web2Py) and Agasti (PHP/ framework TBD).

Features and Architecture

A Sahana App Store could broadly emulate the Android Marketplace and iPhone App Store. Desirable features include:

  • Module descriptions and screenshots
  • Version updates and change-logs
  • Automatic download / installation (and uninstallation)
  • Automatic module upgrades (similar to what Android 2.2)
  • Manual module upgrades (like Wordpress handles)
  • User feedback and ratings
  • Version compatibility check with client framework and implementation ( filtered listing of apps)
  • Handling of other module dependencies

The main components are:

  • the server that will host the app store centrally. Its functionally should be pretty much independent of framework, version, or implementation type. It should be to be able to support multiple versions of Sahana.
  • the client libraries (specific to Agasti, Eden, etc.) that will install/uninstall the apps and otherwise interact with the store.

Store Server Implementation Ideas

The App Store would ideally be hosted on sahanafoundation.org

In theory, an off-the-shelf e-commerce system could be used for the app store. An example would be Zen Cart E-Commerce Shopping Cart (on SourceForge, written in PHP). Or perhaps a PHP-library updating system like PEAR.

Perhaps more appealing would be a more general purpose, but module-rich, framework like Drupal. In that regard, Drupal is the CMS behind sahanafoundation.org. (It is a very old 5.x version, and needs a major update urgently, and a new template). Assuming the SSF Drupal is brought up to date, the App Store could be built into the existing SSF website.

Conjectured Timeframe

A plausible implementation rollout is:

Summer 2010

  1. Complete stand-alone Agasti Module Mangager, with some awareness of App Store issues. This will work with the current version of Agasti. (The code logic will not be expected to forward port easily to a new Agasti framework, though some of the HTML content may).
  2. Develop design and implementation plan for App Store.

Fall 2010

  1. Begin App Store implementation (if developers available).
  2. Revise Agasti Module Manager as needed to interact with App Store.
  3. If new Agasti framework determined, begin to develop Module Manager for it.
  4. Test.

Later

  1. Stir in Eden.
  2. Launch.

Agasti - For More

See ideas under Agasti Module Manager


QR Code
QR Code req:app_store (generated for current page)