view README @ 68:9c1e26cc80e3

Added django-threadedcomments to required external libraries in README
author William Stevenson <yhvh2000@gmail.com>
date Mon, 19 Mar 2012 22:06:39 +0000
parents 9659998da890
children d4e5ef15326a
line wrap: on
line source
Agora Octave is (or will be) a Django-based website for rapid
collaboration related to GNU Octave. It is released under the terms of
the Affero General Public License version 3 as published by the Free
Software Foundation, or at your option, any later version. Agora also
includes other software under a different BSD-like license. For
details consult LICENSE.

Required external libraries:

    - Django registration      
      (http://bitbucket.org/ubernostrum/django-registration/)
    - Pygments
      (http://pygments.org/)
    - Threaded Comments
      (https://github.com/HonzaKral/django-threadedcomments)

Quickstart for personal debugging:

    1) Install Django 1.2 or higher, Python 2.5 or higher, the
       external libraries, and probably any version of mercurial,
       SQLite3. On a Unix-based system, Python is probably already
       installed, the rest can be gotten from source or your operating
       system's package manager if it has one.

    2) Clone this repository

    3) In the cloned repository, copy "agora-example.conf" to
       "agora.conf" (advanced users: modify this to suit your needs).

    4) Now run

         $ python manage.py syncdb    #Will create an empty database
                                      #(by default: sqlite3)

         $ python manage.py runserver #Run a development webserver on port 8000

    5) Point a browser to http://localhost:8000

    6) Submit patches. ;-)

Here's our TODO. At the moment, almost none of this is done. "I" in
the text below indicates "Jordi".

   -- Users can upload bundles of code.

   -- Bundles clearly indicate which free license they are using. I'm
      thinking that it's reasonable to restrict allowable licenses to
      GPL-compatibility. This is not a stringent requirement, and it
      would simplify distribution with Octave. For the moment I'm
      considering that this might be relaxed and any license approved
      by the OSI or FSF should be ok. **DONE** The basic framework for
      licenses is in place, but bundles aren't done yet.

   -- Additionally, there's a place to post quick snippets. They'll be
      under a default free license that the user indicates in their
      preferences. Usually only single bits of code go in there.
      Responding with more snippets will be facilitated. **DONE**
      Except for the license part. I'm changing my mind about this,
      perhaps it's too pedantic to demand clear licenses on code
      snippets. 

   -- I'm thinking that optionally, I can setup bundles to also
      create an hg repo if the uploader requests it, or existing hg
      repos can be imported.

   -- When viewing a user's bundle, the bundle as a whole can be
      ranked and commented upon by logged in users. The contents of
      the bundle can also be browsed from the web without needing to
      download the whole bundle.

   -- Logging in is required only to contribute to the site with
      code, comments, ranking code. Everything else is public to
      anyone.

   -- Users are encouraged but not required to provide real
      names. **DONE** registration and profiles now do this.

   -- Bundles that are somehow deemed to be of high quality can
      easily be pushed to Octave-forge (i.e. they've been "forged",
      tempered, tested and tried).

   -- A user's landing page will indicate which bundles and snippets
      this user has uploaded as well as whatever personal information
      the user would like to provide. **DONE** Except that bundles
      aren't implemented yet.

This README itself also admits patches.