GithubHelp home page GithubHelp logo

dafyddcrosby / camping Goto Github PK

View Code? Open in Web Editor NEW

This project forked from camping/camping

0.0 3.0 0.0 971 KB

the 4k pocket full-of-gags web microframework

License: Other

Ruby 92.56% JavaScript 1.53% HTML 3.79% CSS 2.12%

camping's Introduction

Build Status

Camping, a Microframework

Camping is a web framework which consistently stays at less than 4kB of code. You can probably view the complete source code on a single page. But, you know, it's so small that, if you think about it, what can it really do?

The idea here is to store a complete fledgling web application in a single file like many small CGIs. But to organize it as a Model-View-Controller application like Rails does. You can then easily move it to Rails once you've got it going.

A Camping Skeleton

A skeletal Camping blog could look like this:

require 'camping'

Camping.goes :Blog

module Blog::Models
  class Post < Base; belongs_to :user; end
  class Comment < Base; belongs_to :user; end
  class User < Base; end
end

module Blog::Controllers
  class Index
    def get
      @posts = Post.find :all
      render :index
    end
  end
end

module Blog::Views
  def layout
    html do
      head { title "My Blog" }
      body do
        h1 "My Blog"
        self << yield
      end
    end
  end

  def index
    @posts.each do |post|
      h1 post.title
    end
  end
end

Installation

Interested yet? Luckily it's quite easy to install Camping. We'll be using a tool called RubyGems, so if you don't have that installed yet, go grab it! Once that's sorted out, open up a Terminal or Command Line and enter:

gem install camping

Even better, install the Camping Omnibus, a full package of recommended libs:

gem install camping-omnibus --source http://gems.judofyr.net

If not, you should be aware of that Camping itself only depends on Rack, and if you're going to use the views you also need to install markaby, and if you're going to use the database you need activerecord as well.

gem install markaby
gem install activerecord

Learning

First of all, you should read the first chapters of The Camping Book. It should hopefully get you started pretty quick. While you're doing that, you should be aware of the reference which contains documentation for all the different parts of Camping.

The wiki is the place for all tiny, useful tricks that we've collected over the years. Don't be afraid to share your own discoveries; the more, the better!

And if there's anything you're wondering about, don't be shy, but rather subscribe to the mailing list and ask there. We also have an IRC channel over at Freenode, so if you feel like chatting with us, you should join #camping @ irc.freenode.net.

Authors

Camping was originally crafted by why the lucky stiff, but is now maintained by the community. This simply means that if we like your patch, it will be applied. Everything is managed through the mailing list, so just subscribe and you can instantly take part in shaping Camping.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.