Skip to content
This repository

zena is a state-of-the-art CMS (content managment system) based on Ruby on Rails with a focus on usability, ease of customization and web 2.0 goodness (application like behaviour).

Octocat-spinner-32 app Improved rebuild_fullpath rake task. Fix #71.
Octocat-spinner-32 bin Added documentation on selenium tests, changed zena binary (zena new …
Octocat-spinner-32 bricks Added fs_skin tests for zafu template build. Fixed template build wit…
Octocat-spinner-32 config Added fs_skin tests for zafu template build. Fixed template build wit…
Octocat-spinner-32 db Keeping track of visitor's lang during login attempts.
Octocat-spinner-32 doc Fixed zafu bug with swap and drop in the same block.
Octocat-spinner-32 lib Removing initial files overwrite from rake zena:assets.
Octocat-spinner-32 locale Added parent_id, project_id, section_id Rubyless methods.
Octocat-spinner-32 misc First schema migration seems ok.
Octocat-spinner-32 old_zafu Fixing issues when loading gem on empty project, fixed upload window …
Octocat-spinner-32 public Fixed sorting in linked lists.
Octocat-spinner-32 rails Moved routes into a module. Using an global 'init' method to register…
Octocat-spinner-32 script Fixed 'deploy' related capistrano tasks and made it easier to change …
Octocat-spinner-32 spec Trailing spaces cleanup, once and for all.
Octocat-spinner-32 test Improved rebuild_fullpath rake task. Fix #71.
Octocat-spinner-32 vendor Added support for 'in sub_nodes' or 'in home'. Fixed alias site zafu …
Octocat-spinner-32 .gitignore Added currency brick to work with openexchangerates.org
Octocat-spinner-32 CREDITS Using library by Sébastien Gruhier (http://prototype-window.xilinus.com
Octocat-spinner-32 Capfile Modified capistrano tasks to work with capistrano 2. This means you n…
Octocat-spinner-32 DEVELOPERS Added instructions on whitespace striping before save.
Octocat-spinner-32 History.txt Removing initial files overwrite from rake zena:assets.
Octocat-spinner-32 MIT-LICENSE Better Javascript based grid editor.
Octocat-spinner-32 README.rdoc Added support for copy/paste to grid.js
Octocat-spinner-32 Rakefile Fixed gemspec to not include selenium files and TextMate plugin.
Octocat-spinner-32 TODO Negative ids need documentation.
Octocat-spinner-32 TODO_ZENA_1_0 Added support for literal values in [checkbox].
Octocat-spinner-32 zena.gemspec Adding fs_skin test files to gemspec.
Octocat-spinner-32 zena_console.rb Moved ruby lib files into Zena's namespace. Cleanup of some unused fi…
README.rdoc

DESCRIPTION:

CMS with super natural powers, based on Ruby on Rails

website: zenadmin.org licence: MIT

Getting started

# sudo gem install zena
# zena new myapp
# cd myapp
# zena init

You can now visit localhost:3000 (user = admin, password = admin)

These commands do the following:

1. Install the zena gem and dependencies
2. Create an empty application
3. ...
4. Create the database, migrate, create the 'localhost' website in 'production' environment and start server.

The 'zena init' task does the following:

# rake db:create RAILS_ENV=production
# zena migrate
# zena mksite LANG=en RAILS_ENV=production PASSWORD=admin HOST=localhost
# script/server -e production

Read more: zenadmin.org/documentation

Details

Have a look at the generator used by 'zena' command:

github.com/zena/zena/blob/master/config/zena.rb

Production

You should use capistrano to ease deployment. See 'config/delploy.rb'.

Create a new site

# zena mksite HOST=example.com PASSWORD=secret RAILS_ENV=production

Start

# ruby lib/upload_progress_server.rb start # script/server -S config/mongrel_upload_progress.conf

Stop

# ^C (interrupt) # ruby lib/upload_progress_server.rb stop

Login

You can now login with 'admin' and the password you used to make the site.

Dependencies

1. Original in debian etch (might need to replace jpeg by libjpeg62)

# aptitude install build-essential apache2 mysql-server libmagick9-dev gs-gpl libssl-dev gettext libgettext-ruby libreadline5 libreadline5-dev zlib1g-dev libncurses5 libncurses5-dev unzip liburi-perl libjpeg-dev subversion ssh sudo awstats

If you want to enable LateX (Pdf generation) tetex-bin tetex-extra latex-ucs

For math mode (inline formulas), you will need latex dviutils gs-gpl imagemagick # use 'dvips' if dviutils is not found. Use 'tetex' if 'latex' not found.

For xsl-fo pdf generation xsltproc fop # (contrib sources needed on debian for 'fop')

# use 'libxslt' if the package 'xsltproc' does not exist for your platform.

# ocaml-base-nox can be replaced by 'ocaml'

2. To be installed by hand

ruby1.8.6

# wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6.tar.gz
# tar xzf ruby-1.8.6.tar.gz
# cd ruby-1.8.6
# ./configure --with-openssl
# make && make install

rubygems

# wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
# tar xzf rubygems-1.3.1.tgz
# cd rubygems-1.3.1
# ruby setup.rb (if ruby is not found, log out and log back in)

ImageMagick (on Linux)

# wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
# tar xzf ImageMagick.tar.gz
# cd ImageMagick-*
# ./configure
# make && make install

ImageMagick (on mac os X using macports)

# sudo port install tiff -macosx imagemagick +q8 +gs +wmf

3. install Gems

You can remove “–no-ri –no-rdoc” if you want the documentation

# gem install querybuilder rake hoe gettext mongrel mongrel_cluster rmagick tzinfo syntax mongrel_upload_progress uuidtools daemons json capistrano yamltest ruby-debug --no-ri --no-rdoc

Versions:

querybuilder >= 0.5.5
uuidtools >= 2.x

Advised tools

monit (debian package to monitor your mongrel processes)

Install MySQL on Lion (with rbenv: remove the sudo)

stackoverflow.com/questions/6340174/mysql-gem-on-osx-10-7-lion

Something went wrong with that request. Please try again.