Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Open more actions menu

Repository files navigation

This is the source code for the sinatra-template project on github.
It's the basic structure I use for my Sinatra projects and it make things a bit more organized.

What's inside?

  • Modular Sinatra app version 1.3.2 using ruby 1.9.3-p125
  • minitest for unit-level tests
  • rack-test for routes tests
  • capybara + minitest for integration tests (no need for rspec)
  • yard for documentation
  • Rakefile, Gemfile, .rvmrc, .gitignore

Folders Structure

app.rb         # require sinatra, vendor'd gems, models/init, routes/init, helpers/init

helpers/         
  init.rb      # Require each helper file
  helper1.rb   # Related helper methods

models/          
  init.rb      # Require each model, in controlled order
  user.rb      # model
  picture.rb   # model

routes/          
  init.rb      # Require each route, in controlled order
  user.rb      # One or more routes related to some feature
  admin.rb     # One or more routes related to administration

views/
  layout.erb   # Common layout
  index.erb    # Specific view

test/         
  models       # minitest
  routes       # rack-test
  acceptance  # capybara + minitest

Setup

Install Ruby 1.9.3 (if necessary). RVM is optional, but highly recommended

rvm install ruby-1.9.3-p125
git clone https://github.com/oren/sinatra-template.git
cd sinatra-template (it will create sinatra-template gemset)

Install QT (needed for capybara-webkit)

Install bundler

gem install bundler

Install the gems

bundle install --without production staging

View all available rake commands

rake -T

rake                  # Run all tests
rake test:acceptance  # Run acceptance tests
rake test:models      # Run models tests
rake test:routes      # Run routes tests
rake yard             # Generate YARD Documentation

Run the server

shotgun

Go to http://127.0.0.1:9393

About

Skeleton of a Sinatra app. it helps me to organize my code.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.