aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/devel/codebase.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/source/devel/codebase.rst')
-rw-r--r--docs/source/devel/codebase.rst148
1 files changed, 76 insertions, 72 deletions
diff --git a/docs/source/devel/codebase.rst b/docs/source/devel/codebase.rst
index 5e8cbcc6..122a3297 100644
--- a/docs/source/devel/codebase.rst
+++ b/docs/source/devel/codebase.rst
@@ -34,78 +34,11 @@ various recipes for getting things done.
for where we hang out.
For more information on how to get started hacking on GNU MediaGoblin,
-see `the wiki <http://wiki.mediagoblin.org/>`_.
-
-
-Software Stack
-==============
-
-* Project infrastructure
-
- * `Python <http://python.org/>`_: the language we're using to write
- this
-
- * `Nose <http://somethingaboutorange.com/mrl/projects/nose/>`_:
- for unit tests
-
- * `virtualenv <http://www.virtualenv.org/>`_: for setting up an
- isolated environment to keep mediagoblin and related packages
- (potentially not required if MediaGoblin is packaged for your
- distro)
-
-* Data storage
-
- * `SQLAlchemy <http://sqlalchemy.org/>`_: SQL ORM and database
- interaction library for Python. Currently we support sqlite and
- postgress as backends.
-
-* Web application
-
- * `Paste Deploy <http://pythonpaste.org/deploy/>`_ and
- `Paste Script <http://pythonpaste.org/script/>`_: we'll use this for
- configuring and launching the application
-
- * `werkzeug <http://werkzeug.pocoo.org/>`_: nice abstraction layer
- from HTTP requests, responses and WSGI bits
-
- * `Beaker <http://beaker.groovie.org/>`_: for handling sessions and
- caching
-
- * `Jinja2 <http://jinja.pocoo.org/docs/>`_: the templating engine
-
- * `WTForms <http://wtforms.simplecodes.com/>`_: for handling,
- validation, and abstraction from HTML forms
-
- * `Celery <http://celeryproject.org/>`_: for task queuing (resizing
- images, encoding video, ...)
-
- * `Babel <http://babel.edgewall.org>`_: Used to extract and compile
- translations.
-
- * `Markdown (for python) <http://pypi.python.org/pypi/Markdown>`_:
- implementation of `Markdown <http://daringfireball.net/projects/markdown/>`_
- text-to-html tool to make it easy for people to write richtext
- comments, descriptions, and etc.
-
- * `lxml <http://lxml.de/>`_: nice xml and html processing for
- python.
-
-* Media processing libraries
-
- * `Python Imaging Library <http://www.pythonware.com/products/pil/>`_:
- used to resize and otherwise convert images for display.
-
- * `GStreamer <http://gstreamer.freedesktop.org/>`_: (Optional, for
- video hosting sites only) Used to transcode video, and in the
- future, probably audio too.
-
- * `chardet <http://pypi.python.org/pypi/chardet>`_: (Optional, for
- ascii art hosting sites only) Used to make ascii art thumbnails.
-
-* Front end
-
- * `JQuery <http://jquery.com/>`_: for groovy JavaScript things
-
+see `the wiki <http://wiki.mediagoblin.org/>`_, and specifically, go
+through the
+`Hacking HOWTO <http://wiki.mediagoblin.org/HackingHowto>`_
+which explains generally how to get going with running an instance for
+development.
What's where
@@ -177,3 +110,74 @@ including the following:
:migrations.py: When creating a new migration (a change to the
database structure), we put it here
+
+Software Stack
+==============
+
+* Project infrastructure
+
+ * `Python <http://python.org/>`_: the language we're using to write
+ this
+
+ * `Py.Test <http://pytest.org/>`_:
+ for unit tests
+
+ * `virtualenv <http://www.virtualenv.org/>`_: for setting up an
+ isolated environment to keep mediagoblin and related packages
+ (potentially not required if MediaGoblin is packaged for your
+ distro)
+
+* Data storage
+
+ * `SQLAlchemy <http://sqlalchemy.org/>`_: SQL ORM and database
+ interaction library for Python. Currently we support sqlite and
+ postgress as backends.
+
+* Web application
+
+ * `Paste Deploy <http://pythonpaste.org/deploy/>`_ and
+ `Paste Script <http://pythonpaste.org/script/>`_: we'll use this for
+ configuring and launching the application
+
+ * `werkzeug <http://werkzeug.pocoo.org/>`_: nice abstraction layer
+ from HTTP requests, responses and WSGI bits
+
+ * `itsdangerous <http://pythonhosted.org/itsdangerous/>`_:
+ for handling sessions
+
+ * `Jinja2 <http://jinja.pocoo.org/docs/>`_: the templating engine
+
+ * `WTForms <http://wtforms.simplecodes.com/>`_: for handling,
+ validation, and abstraction from HTML forms
+
+ * `Celery <http://celeryproject.org/>`_: for task queuing (resizing
+ images, encoding video, ...)
+
+ * `Babel <http://babel.edgewall.org>`_: Used to extract and compile
+ translations.
+
+ * `Markdown (for python) <http://pypi.python.org/pypi/Markdown>`_:
+ implementation of `Markdown <http://daringfireball.net/projects/markdown/>`_
+ text-to-html tool to make it easy for people to write richtext
+ comments, descriptions, and etc.
+
+ * `lxml <http://lxml.de/>`_: nice xml and html processing for
+ python.
+
+* Media processing libraries
+
+ * `Python Imaging Library <http://www.pythonware.com/products/pil/>`_:
+ used to resize and otherwise convert images for display.
+
+ * `GStreamer <http://gstreamer.freedesktop.org/>`_: (Optional, for
+ video hosting sites only) Used to transcode video, and in the
+ future, probably audio too.
+
+ * `chardet <http://pypi.python.org/pypi/chardet>`_: (Optional, for
+ ascii art hosting sites only) Used to make ascii art thumbnails.
+
+* Front end
+
+ * `JQuery <http://jquery.com/>`_: for groovy JavaScript things
+
+