This is the preliminary design document for Developer.OpenACS.org,
the hub for the developer community in the new OpenACS.org built on
OpenACS v4. Please read through it and comment on it. I would
appreciate any comments and feedback the community can offer.
DISCLAIMER: This is a draft. Any typos or horrible mistakes are my
fault and I don't care. Because this is just a draft. Although I did
look it over so I don't look like a complete fool.
talli
Developer.OpenACS.org
Executive Summary
Developer.OpenACS.org will be a central location for developers to
access OpenACS code and documentation. It will be organized according
to package and will provide decentralized administration of packages
as well as a simple, consistent navigation framework.
This section has been designed with Tigris.org as its primary model.
The approach is to create a consistent and standard number of
elements for OpenACS module documentation, access and maintenance.
Each package subsite will have:
- Package Home
- Documentation
- Download section
- SDM page
- Individual Bulletin Board
Problem Statement
Currently, OpenACS.org is the sole location for developers to access
and download the code. Since 3.2.X does not have a feature such as
APM, a user downloads the entire code en masse. Documentation on the
site is reasonably obvious but documentation for specific modules is
difficult to find and until very recently non-interactive.
With the development and release of OpenACS 4, access to
documentation according to specific package will be very important.
This is because each package can be accessed and implemented
independently of others. Furthermore, each package will have an owner
or overseer conferred with the responsibility of maintaining the
package.
The challenge with Developer.OpenACS.org will be to build a framework
that provides simple and effective navigation of documentation,
downloads, SDM access, patch submission and bulletin boards per
package.
Central Page
The Central Page is the hub of Developer.OpenACS.org. This is the
index page and from here a developer will be able to enter any
package's home page with a single click. In addition, there will be a
unified bulletin board which will highlight the last ten )or X number
based on user's preference) posts from all the packages. There will
be a link to each package's subsite. There will be a unified list of
the latest submissions to the SDM. Also, there should be a link to a
page containing a complete list of packages where a person can
download the APM with a click.
Package Subsites
Each package will have its own subsite, preferrably with it's own URL
served via virtual hosting (i.e. bboards.openacs.org,
portals.openacs.org, etc.). Each package site will be organized
similarly to those at tigris.org with tabs linking to pages within
the packages site (see http://subversion.tigris.org).
The motivation for Package Subsites it to provide consistent
interfaces for the 30 odd packages and to organize the information in
a coherent fashion.
Package Home:
This page will be a micro version of the central page. It will
feature information from each of the sections. The executive summary
from the documentation page will be shown prominently so that people
know exactly what the pacakge does. It will have links to the 5 most
recent bboard postings. There will be a review of the most recent
submissions to SDM. And of course, one will be able to download the
package directly from this page.
Documentation:
This page will be the entry point for documentation on each module.
It will contain the executive summary of the package's documentation
and links to the rest of the docs, including installation procedures,
troubleshooting tips, etc. General comments will be enabled on each
page. Administrators of these pages will have ETP privileges.
Download Section:
This section will have links to the latest versions of APMs in CVS.
It will have a very brief description of installation procedures.
SDM:
This section will initially be a straight port of the SDM from a 3.x
architecture to v4. See the current SDM for a sense of the
functionality.
Bulletin Boards:
Each package should have its own bulletin board so that all the
questions and knowledge concerning it can be accessed in a single
place. This is to augment the full site search with category
searches. In addition, developers will have a place to seek an answer
for and then ask a specific quesetion about each package. There will
be a unified bulletin board elsewhere on the site where developers
can access a full view of all postings.