<img src=“https://travis-ci.org/kilt-cms/kilt-cms.png?branch=master” alt=“Build Status” />

  • Create a new Rails project:

    $ rails new Blah
    
  • Add the Kilt CMS gem to your Gemfile:

    gem 'kilt-cms'
    
  • Run bundler:

    $ bundle install
    
  • Require “kilt” in your application.rb:

    module Blah
      class Application < Rails::Application
        require 'kilt'
      end
    end
    

Note: We’re trying to find a way around that last step, but for now we’re just explicitly adding it since we can’t figure out how to get it to auto-load all of Kilt’s dependency gems when starting the app.

  • Run the Kilt generator:

    $ rails g kilt:install
    
  • To create a new Rails app:

    $ rails new Blah
    
  • If you want to use S3 for your image and file uploads, add your S3 info to creds.yml. Also set the following in your config.yml:

    storage:
      strategy: s3
    
  • If you want to just have file and image uploads be placed in the public/uploads directory, set the following in your config.yml:

    storage:
      strategy: local
    
  • Run the app:

    $ rails s
    
  • Visit the CMS:

    http://<your app>/admin
    
  • Note that there’s a single object created (bagpipe). Click around and see all the field types. Create some bagpipe objects.

  • Use the Kilt rake task to see what all you can do with Kilt in your controllers and views:

    $ rake kilt
    
  • Create a new object type:

    $ rails g kilt:object <object name> <field name>:<field type> <field name>:<field type> <field name>:<field type>
    
    Example:
    
    $ rails g kilt:object person name:text address:text bio:longtext avatar:image
    
  • Go back to /admin and you’ll see the new object type. Click around and add some objects of that type.

  • From here, try using it on the front-end by creating controllers and views like you would in any other rails app. Instead of calling to a database, though, use the Kilt methods found in the rake task, or listed on the homepage.

  • You can override the admin menu by copying app/views/layouts/kilt/cms/_menu.html.erb to your own project.

  • Dig around the code looking for holes/problems/questions, and keep a list, please.