Dolmen - Application Development Framework and CMS
Status: just notes so far
Pagecode: T->1 A->SAml H->tr C->SA[cccej]
Last changed: Monday 2010-03-01 [12:21 UTC]
Abstract:
Dolmen is an application development framework based on Grok and Zope3 (a highly modular, flexible, versatile, resilient and secure web application server written in Python) which also provides a CMS (Content Management System) out of the box. Dolmen is being made with four main objectives in mind: easily pluggable, rock solid and fast content type development, readability and speed. Developers like it a lot for the fact that application development as well as configuration, both is done with Python i.e. there is no additional configuration and/or template language to bother with. Another quite tempting fact is that Dolmen allows developers nicely to adhere to techniques and best practices known as agile software development. The main pillar throughout the development history is the fact that Dolmen should be extremely pluggable -- we only use the mandatory bits and pieces needed for some application and do not carry around tons of unnecessary weight that is actually not needed. Last but not least, Dolmen is fully eggified and uses Zope3's component architecture which makes it incredibly easy, flexible and versatile to work with -- there is no application that cannot be build with Dolmen, they say ... In the end it is Python all over the place!
|
Table of Contents
|
Installation and Setup
dolmen0:/home/sa# mkdir dolmen
dolmen0:/home/sa# cd dolmen/
dolmen0:/home/sa/dolmen# svn co http://tracker.trollfot.org/svn/projects/dolmen/dolmen.buildout/
dolmen0:/home/sa/dolmen# cd dolmen.buildout/
dolmen0:/home/sa/dolmen/dolmen.buildout# python bootstrap.py
dolmen0:/home/sa/dolmen/dolmen.buildout# ./bin/buildout -c dolmen-site.cfg
dolmen0:/home/sa/dolmen/dolmen.buildout# grep host deploy.ini
host = <openvz_VE_IP_or_0.0.0.0>
dolmen0:/home/sa/dolmen/dolmen.buildout# bin/paster serve --daemon deploy.ini
dolmen0:/home/sa/dolmen/dolmen.buildout# paster serve --stop-daemon
Prerequisites
We need to install a bunch of Debian packages (also known as .deb).
- subversion build-essential python2.5-dev libjpeg62-dev libxslt-dev
python-libxml2 libxml2-dev python-lxml
- it should be possible to do bulk uploads for
images/video/audio/files/etc. files e.g. I came home with my cam
from a trip, download the images and make one bulk upload of tens
of images into a dolmen gallery
- seed files (e.g. images, videos, etc.) via Bittorrent
- the possibility to add/edit metadata on various content types e.g.
give folks the possibility to add notes to an image "This image was
taken during a hiking tour with Tina in the Austrian Alps during
summer 2009."
- make content purchasable (e.g. via annotations); I know that this
is headed towards some e-commerce add-on but then core dolmen or
rather its content types should have some "notion of I can be
bought" or not ... it is then of course up to some e-commerce
add-on to make use of that information stored with content types.
The reason why this consideration is important from the beginning
is because, adding it later on is going to be a lot more work and
might result in an ugly outcome.
- purchasable in this regard might then be decided by a particular
e-commerce add-on ... one that might sell content via a membership
or maybe one that might simply work as the usual on-line shop with
shippable items etc.
Translation and Internationalization
Menhir
Middlewar
Miscellaneous
Templates
Roadmap
- architecture
- locales
- integrate video/queue
Grok
Packages that need be installed
- python-setuptools
- build-essential
- python2.5-dev
wks-ve9:/home/sa# easy_install grokproject
wks-ve9:/home/sa# grokproject <projectname>
wks-ve9:/home/sa/Sample# bin/paster serve --daemon --reload parts/etc/deploy.ini
Starting subprocess with file monitor
Entering daemon mode
wks-ve9:/home/sa/Sample#
- there can be a view or a render method
Terms and Idioms
Administer
Hosting
Configuration
- http://grok.zope.org/documentation/how-to/Set-custom-configurations-system-level
Templates
Testing
i18n
Layout and Macros
Forms
Permissions
Content Types / Persistent and non-persistent Objects
|