Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A Merb plugin that creates a static version of a website, for deployment to any webserver.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 spec
Octocat-spinner-32 .gitignore
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README
Octocat-spinner-32 Rakefile
Octocat-spinner-32 merb_static.gemspec
README
merb_static
===========

WARNING: EXPERIMENTAL. Some features are missing or partially implemented. This is being use on small single-page sites but hasn't yet been tested with complex sites.

A plugin for the Merb framework that generates static HTML (and other) files from a dynamic Merb application.

Provides functionality similar to static-site building tools like Webby, but you can use all the plugins, helpers, and databases available to Merb.

For example, I use Mac OS X to generate screenshots for a news-reading application, but deploy to a Linux box hosted at RailsMachine. I can use merb_static to generate the HTML locally and deploy the static files and images to the server.

  http://peepcode.com/system/screens/

Usage
=====

In config/dependencies.rb:

  dependency "merb_static"
  
Add other configuration information to your Merb configuration.

  Merb::Plugins.config[:merb_static] = {
    :urls  => ["/"],
    :domain => "http://peepcode.com",
    :remote => {
      :domain   => "peepcode.com",
      :username => "deploy",
      :passphrase => "my ssh key passphrase",
      :path => "/full/path/to/deploy/this/app/to"
    }
  }

Generate the static site:

  rake merb_static:build
  
Start over:

  rake merb_static:clean
  
Build and deploy to a remote server:

  rake merb_static:sync

You may want to run your own app's tasks first by creating a custom Rake task:

  task :my_sync => [:my_build_task, "merb_static:sync"]

TODO
====

* Documentation
* Configuration options
* Spidering of all urls on a site
* Recommendations for writing sites that will be archived
* Synchronization task
* Tips: Use Merb::Config[:path_prefix] to generate URLs at a path

Something went wrong with that request. Please try again.