Skip to content
No description or website provided.
Ruby JavaScript
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

About Ruby Quilt

Ruby Quilt is a simple way to stitch files together. Ruby Quilt on github.


gem install ruby-quilt


require 'quilt'
config = {
  :local_path => "<local path for versions>", // Required
  :remote_host => "<remote host for fetching versions>", // Optional
  :remote_port => "<remote port for fetching versions>", // Optional
  :remote_path => "<base remote path for fetching versions>", // Optional
quilt =
# selector = array of module names or selector proc that takes a module name and returns true or
#            false depending on whether or not to include the module
quilt.stitch(selector, "<version number>");

Path Structure


local_path should point to a directory contains the following directory structure for each version:

<version name>/
<version name>/manifest.json

manifest.json has the following format:

  "header" : "<header file>",
  "footer" : "<footer file>",
  "common" : [
    "<module file>",
  "optional" : {
    "<module file>" : [ "<dependancy module name>", ... ],

Where each <module file> will point to a module to stitch. The filename should be <module name>

The modules will be stitched in the following order:

common (in the order they were present in the array)
optional (the only ordering that is guarenteed is: dependancies will be before their dependant modules)

Circular dependancies will be shortcircuited and an error message will be sent to console.error.


Note: This is optional.

remote_host, remote_port, and remote_path together should point to a server which contains version tarballs to download at the following path:

http://remote_host:remote_portremote_path/<version name>.tgz

Note that remote_path must contain the leading slash and the version archive should be a gzipped tarball. The archive should contain the same directory structure as specified in the local_path section (without the base <version name> directory).

Something went wrong with that request. Please try again.