# File: README
[ "README", "AUTHORS", "COPYING", "lib/capcode.rb", nil].each do
Capcode.view_html
Capcode::Views.view_html
Capcode::Helpers.view_html
Capcode::HTTPError.view_html
Capcode::RouteError.view_html
Capcode::ParameterError.view_html
end
README / Thu Apr 30 07:34:27 +0200 2009

Capcode

Copyright (C) 2009 Gregoire Lejeune

DESCRIPTION:

Capcode is a web microframework

FEATURES/PROBLEMS:

0.4.0

  • Major bug correction !
  • Add views…

0.3.0

  • Work with Rack 1.0.0

0.2.0

  • Add models with DataMapper and couch_foo
  • Add two new options : :daemonize and :pid
  • Bug correction in Route.

0.1.0

  • First public release
  • No models !!!

SYNOPSIS:

        # file: sample.rb
        require 'rubygems'
        require 'capcode'

        module Capcode
          class Hello < Route '/hello'
            def get
              "Hello World #{Time.now} !"
            end
          end
        end

        Capcode.run( )

Running Capcode Apps

Create model

        require 'rubygems'
        require 'capcode'
        require 'capcode/base/dm' # or require 'capcode/base/couchdb'

        class Story < Capcode::Base
          include Capcode::Resource

          property :id, Integer, :serial => true # only with DataMapper !
          property :title, String
          property :body, String
          property :date, String
        end

See examples/blog-dm.rb and/or examples/blog-couchdb.rb for complete examples.

Create View

        # file: sample.rb
        require 'rubygems'
        require 'capcode'

        module Capcode
          class Hello < Route '/hello'
            def get
              @t = Time.now
              render :time
            end
          end
        end

        module Capcode::Views
          def time
            "Hello world #{@t}"
          end
        end

        Capcode.run( )

Create Helper

        # file: sample.rb
        require 'rubygems'
        require 'capcode'

        module Capcode
          class Hello < Route '/hello'
            def get
              @t = Time.now
              render :time
            end
          end
        end

        module Capcode::Helpers
          def bold( &b )
            "<b>"+yield+"</b>"
          end
        end

        module Capcode::Views
          def time
            "Hello world " + bold { @t }
          end
        end

        Capcode.run( )

REQUIREMENTS:

  • rack

INSTALL:

  sudo gem install capcode

LICENSE:

Capcode is freely distributable according to the terms of the GNU General Public License.

This program is distributed without any warranty. See the file ‘COPYING’ for details.