SmallCage – a simple website generator
SmallCage is a simple, but powerful website generator. It converts content and template files, which has common elements in a website, to a plain, static website. No database, no application container, and no repeat in many pages is needed. You can keep your site well with very little work.
With SmallCage, you can
simply separate your template from content.
convert your content to a plain, static website. It's easy to serve and test.
generate multi pages from a single CSV file or even Google Docs spreadsheet.
share your template with various web applications: Ruby on Rails, WordPress, and MovableType.
manage your website with a source code management system like a Git, Subversion, and CVS.
customize the rules of convert with Ruby.
$ sudo gem install smallcage
If successfully installed, smc command will be available.
$ smc Usage: smc <subcommand> [options] SmallCage 0.1.9 - a simple website generator Subcommands are: update [path] Build smc contents. clean [path] Remove files generated from *.smc source. server [path] [port] Start HTTP server. auto [path] [port] Start auto update server. import [name|uri] Import project. export [path] [outputpath] Export project. uri [path] Print URIs. manifest [path] Generate Manifest.html file. Options are: -h, --help Show this help message. -v, --version Show version info.
Create document root.
$ mkdir htdocs $ cd htdocs
Import default project.
$ smc import Import: base Create: /_smc /_smc/helpers /_smc/helpers/base_helper.rb /_smc/helpers/site_helper.rb /_smc/templates /_smc/templates/default.rhtml /_smc/templates/footer.rhtml /_smc/templates/header.rhtml Import these files?[Yn]: y A /_smc A /_smc/helpers A /_smc/helpers/base_helper.rb A /_smc/helpers/site_helper.rb A /_smc/templates A /_smc/templates/default.rhtml A /_smc/templates/footer.rhtml A /_smc/templates/header.rhtml :
Publish all smc files.
$ smc update A /index.html A /sample/index.html A /sample/redirect.html A /sample/sub/contents.html A /sample/sub/index.html
Start HTTP server.
$ smc server . 8080
…and access localhost:8080