SmallCage – a simple website generator
<img src=“
” alt=“Build Status” />
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.
Please visit our wiki for more detailed discussion.
Installation
$ sudo gem install smallcage
Usage
If successfully installed, smc command will be available.
$ smc
Usage: smc <subcommand> []
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 .
-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/.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/.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