awesome-sinatra [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) =============== > A curated list of awesome projects made or inspired with Sinatra. # Contents - [General](#general) - [Generators](#generators) - [Authroization](#authroization) - [Authentication](#authentication) - [Blogging](#blogging) - [Boilerplate and Template](#boilerplate-and-template) - [Community platform](#community-platform) - [Continous Integration](#continous Integration) - [CMS](#cms) - [Debugging and Profiling](#debugging-and-profiling) - [Email](#email) - [File Uploading](#file-uploading) - [Internet Application Clones](#internet-application-clones) - [Micro Frameworks inspired by Sinatra](#micro-frameworks-inspired-by-sinatra) - [Micro Frameworks inspired by Sinatra (Other Languages)](#micro-frameworks-inspired-by-sinatra-other-languages) - [NoSQL](#nosql) - [ORM](#orm) - [Routers](#routers) - [Service Integration](#service-integration) - [Stylesheets](#stylesheets) - [Testing](#testing) - [Wiki Engine](#wiki-engine) - [Writing APIs](#writing-apis) ## General * [Sinatra](http://www.sinatrarb.com/) - Sinatra Official website. * [Sinatra on Github](https://github.com/sinatra/sinatra) * [Sinatra Receipes](http://recipes.sinatrarb.com/) - Community contributed recipes and techniques. * [Sinatra - The Book](http://sinatra-org-book.herokuapp.com/) - A cookbook full of excellent tutorials and recipes for developing Sinatra web applications. It's git repo is [here](https://github.com/sinatra/sinatra-book) * [sinatra.github.com repo](https://github.com/sinatra/sinatra.github.com/) - This repo contains the Sinatra website and documentation sources published at http://sinatra.github.com/. * [Sinatra in the wild](https://github.com/sinatra/sinatra.github.com/blob/master/wild.markdown) - Various applications, extensions and websites built with Sinatra. * [Sinatra mailing list](http://groups.google.com/group/sinatrarb/topics) ## Generators * [Corneal](https://github.com/thebrianemory/corneal) - A Sinatra app generator with Rails-like simplicity. * [Hazel](https://github.com/c7/hazel) - A simple Sinatra app generator, heavily based on snfn. * [Snfn](https://github.com/zachpendleton/snfn) - A Sinatra application generator. ## Authroization * [Sinatra Authorization](https://github.com/integrity/sinatra-authorization) - HTTP Authorization helpers for Sinatra. * [Sinatra-authorize](https://github.com/gnab/sinatra-authorize) - Smooth authentication-agnostic rule-based authorization extension for Sinatra. ## Authentication * [hancock](https://github.com/atmos/hancock/) - An OpenID based Single Sign On server with a simple API, written in Sinatra * [hancock-client](https://github.com/atmos/hancock-client) - A sinatra app and rack middleware piece for the hancock SSO server * [sinatra-oauth-provider](https://github.com/eddanger/sinatra-oauth-provider) - A Sinatra OAuth Provider. ## Blogging * [Blorgit](https://github.com/eschulte/blorgit) - A simple org-mode based, git amenable, blogging engine running on sinatra. * [Haze](https://github.com/madx/haze) - A minimalistic blogging engine, the successor of Honk (~200 LOC). * [Honk](https://github.com/madx/honk) - A minimalistic, YAML, text-based blogging engine. * [Marley](https://github.com/karmi/marley) - Minimalist blogging engine without textareas based on Markdown, Ruby, Sinatra and Git push hooks. * [Postview](https://github.com/hallison/postview) - A simple blog-engine that render text files written in Markdown. * [Scanty](https://github.com/adamwiggins/scanty) - A really small blogging software. * [Scanty with CouchDB](https://github.com/jtulloch/scanty) - Scanty using CouchDB. * [scanty-redis](https://github.com/adamwiggins/scanty-redis) - Scanty using redis. * [sin](https://github.com/kastner/sin) - A mini blog engine in Sinatra with hAtom and MetaWeblog API and S3 upload support (~160 LOC). * [Sinandra](https://github.com/groupdock/sinandra) - A blog engine using Sinatra and Cassandra. * [Wind](https://github.com/wagnerandrade/wind) - HTML5 blog engine focused in a easy, extensible and fast admin. * [Yet-another-Sinatra-Blog-Engine](https://github.com/multikatt/Yet-another-Sinatra-Blog-Engine) - A simple blog engine written in Ruby using Sinatra. ## Boilerplate and Template * [Frank-Sinatra](https://github.com/Wixel/Frank-Sinatra) - A boilerplate for modular MVC style Sinatra (1.4.2^) applications. * [puresong](https://github.com/al-kivi/puresong) - A small Sinatra application that demonstrates use of Pure CSS with SQLite. * [ratpack](https://github.com/ashleygwilliams/ratpack) - Sinatra boilerplate using activerecord, sqlite, and twitter bootstrap. * [sinatra-boilerplate](https://github.com/karlcoelho/sinatra-boilerplate) - Starter Kit for Sinatra Apps. It uses [Twitter Bootstrap 3](http://getbootstrap.com/), [jQuery](http://jquery.com/) and [Modernizr](http://modernizr.com/) * [sinatra-boilerplate](https://github.com/evanleck/sinatra-boilerplate) - Another boilerplate combined with [HTML 5 Boilerplate](http://html5boilerplate.com/), [Compass](http://compass-style.org/), [CoffeeScript](http://coffeescript.org/) and [Sprockets](https://github.com/sstephenson/sprockets). * [sinatra-boilerplate](https://github.com/neverstopbuilding/sinatra-boilerplate) - Sinatra, Zurb Foundation, Guard, Slim, Compass, RSpec, Capybarra... All the bling ready to go. * [sinatra-boilerplate](https://github.com/mislav/sinatra-boilerplate) - Sinatra + Haml + Sass + Compass + Bourbon + CoffeeScript. * [sinatra-foundation-skeleton](https://github.com/jerodsanto/sinatra-foundation-skeleton) - A skeleton Sinatra application which utilizes Zurb's Foundation 3 framework. * [sinatra-template](https://github.com/zapnap/sinatra-template) - A base Sinatra application template with DataMapper, and RSpec. * [sinatra-twitter-bootstrap](https://github.com/mfojtik/sinatra-twitter-bootstrap) - Twitter Bootstrap Sinatra extension with HAML helpers. ## Community Platform * [sinforum](https://github.com/makevoid/sinforum) - Simple forum build with Sinatra, DataMapper, Haml, SASS and CoffeeScript. ## Continuous Integration * [Integrity](https://github.com/integrity/integrity) - A continuous integration server. * [Travis CI](https://github.com/travis-ci/travis-ci) - Free continuous integration platform for GitHub projects. Some sub-projects of Travis CI uses Sinatra, including [travis-api](https://github.com/travis-ci/travis-api), [travis-listener](https://github.com/travis-ci/travis-listener), [travis-logs](https://github.com/travis-ci/travis-logs) , [travis-build](https://github.com/travis-ci/travis-build) and [travis-web](https://github.com/travis-ci/travis-web) ## CMS * [Nesta](https://github.com/gma/nesta) - A lightweight CMS, implemented in Sinatra. Content can be written in Markdown or Textile and stored in text file * [Spontaneous](https://github.com/SpontaneousCMS/spontaneous) - An CMS with intuitive, attractive and responsive HTML5 interface ## Debugging and Profiling > For more, check the "Middlewares for Debugging or Profiling" section in [awesome-rack](https://github.com/coopermaa/awesome-rack) * [Better Errors](https://github.com/charliesome/better_errors) - Better Errors replaces the standard Rails error page with a much better and more useful error page. It is also usable outside of Rails in any Rack app as Rack middleware. * [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) - Middleware that displays speed badge for every html page. A simple but effective mini-profiler for .NET, Ruby, Go and Node.js. Introduced in [Railscasts #368 MiniProfiler](http://railscasts.com/episodes/368-miniprofiler) * [racksh](https://github.com/sickill/racksh) - Console for Rack based ruby web apps. It's like script/console in Rails (~ 100 LOC) or merb -i in Merb, but for any app built on Rack. Thanks to Rack::Test::Methods (from rack-test) and Ruby REPLs (pry and irb). * [tux](https://github.com/cldwalker/tux) - A sinatra shell to interacte with helpers, view rendering and to view your app's routes and settings. ## Email * [sinatra-email-services-server](https://github.com/linhchauatl/sinatra-email-services-server) - An email services server using Sinatra. * [sinatra-mailer](https://github.com/foca/sinatra-mailer) - Send emails from Sinatra in a very simple way. ## File Uploading * [CarrierWave](https://github.com/carrierwaveuploader/carrierwave) - A classier solution for file uploads for Rails, Sinatra and other Ruby web frameworks. ## Internet Application Clones * [chirp](https://github.com/sausheong/chirp) - Simple Sinatra-based micro-blog/Twitter clone. * [shorty](https://github.com/croaky/shorty) - URL shortener written in Sinatra & MongoDB. ## Micro Frameworks inspired by Sinatra * [Angelo](https://github.com/kenichi/angelo) - Sinatra-like DSL for Reel that supports WebSockets and SSE in their own thread, called "cells" (or actors). * [Dolly](https://github.com/coopermaa/dolly) - Minimal Ruby microframework inspired by Sinatra. * [Gin](https://github.com/jcasts/gin) - A small Ruby web framework, built on Rack, which borrows from Sinatra expressiveness, and targets larger applications. * [Hobbit](https://github.com/patriciomacadden/hobbit) - A minimalistic microframework built on top of Rack (thanks to `Rack::Builder`). Hobbit is a DSL inspired by Sinatra. (~ 150 LOC). * [Nancy](https://github.com/guilleiguaran/nancy) - Minimal Ruby microframework for web development inspired in `Sinatra` and `Cuba` (~150 LOC). * [padrino](https://github.com/padrino/padrino-framework) - Padrino is a full-stack ruby framework built upon Sinatra. * [Rack::App](https://github.com/rack-app/rack-app) - Bare bone minimalistic (masochistic) pico framework for building rack apps. Inspired by sinatra, grape and the pure use form of Rack. * [Sin](https://github.com/raggi/sin) - A multi-app web-app DSL derived from Sinatra, riding on rack. Sin is a rebuild of sinatra, splitting up the classes into files and going for a reusable application class. * [Scorched](https://github.com/Wardrop/Scorched) - Light-weight, DRY as a desert, web framework for Ruby. Simliar to Sinatra. Scorched is a true evolutionary enhancement of Sinatra, with more power, focus, and less clutter. ## Micro Frameworks inspired by Sinatra (Other Languages) * Bash: [Astley](https://github.com/matschaffer/astley), [sh.inatra](https://github.com/emasaka/sh.inatra) * C: [Bogart](https://github.com/tyler/Bogart) * C++: [Garland](https://github.com/MarMarAba/Garland) * Clojure: [Compojure](https://github.com/weavejester/compojure) * CoffeeScript: [Zappa](https://github.com/mauricemach/zappa) * Crystal: [frank](https://github.com/manastech/frank), [kemal](https://github.com/sdogruyol/kemal) * Dart: [Start](https://github.com/lvivski/start) * Elixir: [Plug](https://github.com/elixir-lang/plug), [Spirit](https://github.com/emancu/spirit) * Erlang: [Fresh](https://github.com/devinus/fresh), [Spooky](https://github.com/flashingpumpkin/spooky) * Haskell: [Bird](https://github.com/moonmaster9000/bird), [Miku](https://github.com/nfjinjing/miku), [Scotty](https://github.com/scotty-web/scotty) * Go: [Martini](https://github.com/go-martini/martini), [Spooky](https://github.com/flashingpumpkin/spooky) * Groovy: [Graffiti](https://github.com/webdevwilson/graffiti) * Java: [Spark](https://github.com/perwendel/spark) * JavaScript: [Express](https://github.com/expressjs/express), [Sammy](https://github.com/quirkey/sammy) * Julia: [Moresel.jl](https://github.com/JuliaArchive/Morsel.jl) * Lua: [Mercury](https://github.com/nrk/mercury), [Orbit](http://keplerproject.github.io/orbit/) * .NET: [Martini](https://github.com/thegrubbsian/Martin), [Nancy](https://github.com/NancyFx/Nancy), [Nina](https://github.com/jondot/Nina) * Perl: [Dancer](https://github.com/PerlDancer/Dancer2), [Mojolicious](https://github.com/kraih/mojo) * PHP: [FatFree](https://github.com/bcosca/fatfree), [Fitzgerald](https://github.com/gregmolnar/fitzgerald), [Klein](https://github.com/klein/klein.php), [Zaphpa](http://zaphpa.org/) * Python: [itty](https://github.com/toastdriven/itty), [Flask](https://github.com/pallets/flask) * Scala: [Finatra](https://github.com/twitter/finatra), [Scalatra](https://github.com/scalatra/scalatra) * Vala: [Valatra](https://github.com/erik/valatra) ## NoSQL > Column * [Sinandra](https://github.com/groupdock/sinandra) - A blog engine using Sinatra and Cassandra. > Document * [sinatra-mongo](https://github.com/technicalpickles/sinatra-mongo) - A light extension to sinatra for using mongo. * [sinatra-mongoid](https://github.com/croaky/sinatra-mongoid) - A Mongoid (ODM, Object-Document-Mapper for MongoDB) extension for Sinatra. > Key-value * [redis-sinatra](https://github.com/redis-store/redis-sinatra) - Redis stores for Sinatra. * [riak-browser](https://github.com/jlambert121/riak-browser) - A simple ruby/Sinatra Riak browser and editor. ## ORM * [bowtie](https://github.com/tomas/bowtie) - Simple admin interface generator for MongoMapper (mongo) & DataMapper (dm) models. * [sinatra-activerecord](https://github.com/janko-m/sinatra-activerecord) - Extends Sinatra with ActiveRecord helper methods and Rake tasks. * [sinatra-datamapper](https://github.com/jmkeyes/sinatra-datamapper) - A Sinatra extension for DataMapper ORM support. * [sinatra-sequel](https://github.com/rtomayko/sinatra-sequel) - Sinatra extension that adds Sequel ORM features, database config, and database migrations. ## Routers * [http_router_sinatra](https://github.com/joshbuddy/http_router_sinatra) - Kick ass router for Sinatra based on http_router. * [SimpleRouter](http://github.com/mynyml/simple_router) - Small and simple standalone router, meant for use with Rack applications. Familiar Sinatra-like DSL for defining actions. Modular architecture. * [sinatra-advanced-routes](https://github.com/rkh/sinatra-advanced-routes) - Make Sinatra routes first class objects (extracted from BigBand). * [sinatra-router](https://github.com/brandur/sinatra-router) - A tiny vendorable router that makes it easy to try routes from a number of different modular Sinatra applications ## Service Integration > Slack * [beach](https://github.com/willrax/beach) - Small Sinatra app to host web hooks for Slack. * [dogetip-slack](https://github.com/tenforwardconsulting/dogetip-slack) - Sinatra app to enable Dogecoin tipping via slack * [doorbell-server](https://github.com/Lostmyname/doorbell-server) - Simple Sinatra app which acts a bridge between Slack and the LMN doorbell. * [snarkov](https://github.com/gesteves/snarkov) - Sinatra-based Markov bot for Slack. > MISC * [frankie](https://github.com/deadprogram/frankie) - a Sinatra plugin allows you to easily create a Facebook application. * [shopify-sinatra-app](https://github.com/kevinhughes27/shopify-sinatra-app) - Lightweight extension for building Shopify apps using Sinatra ## Stylesheets * [sinatra-compass](https://github.com/rkh/sinatra-compass) - Integrates the Compass stylesheet framework with Sinatra. * [haml-more](https://github.com/rkh/haml-more) - Adds more functionality to Haml and Sass. ## Testing * [cucumber-sinatra](https://github.com/bernd/cucumber-sinatra) - Help you to initialize a cucumber environment for a sinatra application. It will generate the required files from templates. * [mumuki-ruby-server](https://github.com/mumuki/mumuki-ruby-server) - Sinatra server for running Rspec tests within [Mumuki](https://github.com/mumuki/mumukit). Mumukit is a Test Server Development Kit. * [mock_server](https://github.com/mvemjsun/mock_server) - A lightweight Sinatra application backed by sqlite that can mock ReST responses. Has interface to easily create, search & maintain mocks. * [rspec-sinatra](https://github.com/tansaku/rspec-sinatra) - Help you to initialize a RSpec environment for a sinatra application. It will generate the required files from templates. ## Wiki Engine * [bliki](https://github.com/bomberstudios/bliki) - A small blog + wiki engine built on Sinatra + Stone. * [git-wiki](https://github.com/sr/git-wiki) - A quick & dirty git-powered Sinatra wiki (~200 LOC). * [lilwiki](https://gist.github.com/erikpukinskis/363190) - A small wiki backed by sqlite. * [rikiki](https://github.com/yarmand/rikiki) - Tiny wiki engine using in browser markdown and Sinatra. * [Weaky](https://github.com/benatkin/weaky) - A basic CouchDB/Sinatra wiki. ## Writing APIs * [API-mock-server](https://github.com/zlx/API-mock-server) - A Full-Featured API Mock Server built with Sinatra and MongoDB. * [Pliny](https://github.com/interagent/pliny) - Pliny helps Ruby developers write and maintain excellent APIs. * [pliny-template](https://github.com/interagent/pliny-template) - Base Sinatra app for writing excellent APIs in Ruby * [sinatra-hat](https://github.com/nakajima/sinatras-hat) - Easy REST-ful apps with Sinatra. Mount models as web services. * [sinatra-reset](https://github.com/blindgaenger/sinatra-rest) - Generates RESTful routes for the models of a Sinatra application (ActiveRecord, DataMapper, Stone) ## License [![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/) To the extent possible under law, [coopermaa](http://coopermaa2nd.blogspot.tw/) has waived all copyright and related or neighboring rights to this work. [sinatra.md Github](https://github.com/coopermaa/awesome-sinatra )