| 1 | rack (1.4.1) Rack provides a minimal, modular and adaptable interface for developing web applications in Ruby.... | 17,231,306 |
| 2 | activesupport (3.2.8) A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich ... | 14,857,613 |
| 3 | rake (0.9.2.2) Rake is a Make-like program implemented in Ruby. Tasks and dependencies arespecified in standard ... | 14,775,442 |
| 4 | activerecord (3.2.8) Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. S... | 12,759,779 |
| 5 | actionpack (3.2.8) Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web application... | 12,551,914 |
| 6 | actionmailer (3.2.8) Email on Rails. Compose, deliver, receive, and test emails using the familiar controller/view pat... | 12,232,818 |
| 7 | activeresource (3.2.8) REST on Rails. Wrap your RESTful web app with Ruby classes and work with them like Active Record ... | 12,102,355 |
| 8 | rails (3.2.8) Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable pr... | 11,780,719 |
| 9 | json (1.7.5) This is a JSON implementation as a Ruby extension in C. | 11,727,594 |
| 10 | mime-types (1.19) This library allows for the identification of a file's likely MIME content type. This is release ... | 11,477,148 |
| 11 | builder (3.1.3) Builder provides a number of builder objects that make creating structured data simple to do. Cu... | 10,875,602 |
| 12 | i18n (0.6.1) New wave Internationalization support for Ruby. | 10,494,077 |
| 13 | activemodel (3.2.8) A toolkit for building modeling frameworks like Active Record and Active Resource. Rich support f... | 9,979,564 |
| 14 | tzinfo (0.3.33) TZInfo is a Ruby library that uses the standard tz (Olson) database to provide daylight savings a... | 9,778,312 |
| 15 | erubis (2.7.0) Erubis is an implementation of eRuby and has the following features: * Very fast, almost thr... | 9,456,904 |
| 16 | rack-test (0.6.1) Rack::Test is a small, simple testing API for Rack apps. It can be used on its own or as a reusab... | 9,234,479 |
| 17 | mail (2.4.4) A really Ruby Mail handler. | 9,219,889 |
| 18 | polyglot (0.3.3) The Polyglot library allows a Ruby module to register a loader for the file type associated with... | 9,153,759 |
| 19 | arel (3.0.2) Arel is a SQL AST manager for Ruby. It 1. Simplifies the generation of complex SQL queries 2. Ad... | 9,145,349 |
| 20 | treetop (1.4.10) A Ruby-based text parsing and interpretation DSL | 9,088,013 |
| 21 | thor (0.16.0) A scripting framework that replaces rake, sake and rubigen | 8,845,773 |
| 22 | railties (3.2.8) Rails internals: application bootup, plugins, generators, and rake tasks. | 8,841,302 |
| 23 | multi_json (1.3.6) A gem to provide easy switching between different JSON backends, including Oj, Yajl, the JSON gem... | 8,091,272 |
| 24 | bundler (1.2.1) Bundler manages an application's dependencies through its entire life, across many machines, syst... | 7,599,212 |
| 25 | tilt (1.3.3) Generic interface to multiple Ruby template engines | 7,304,051 |
| 26 | rdoc (3.12) RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the +rdoc+ an... | 6,367,997 |
| 27 | nokogiri (1.5.5) Nokogiri (é¸) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's many features is the ab... | 6,258,721 |
| 28 | rack-mount (0.8.3) A stackable dynamic tree based Rack router. | 6,086,782 |
| 29 | sprockets (2.6.0) Sprockets is a Rack-based asset packaging system that concatenates and serves JavaScript, CoffeeS... | 5,071,664 |
| 30 | rspec (2.11.0) BDD for Ruby | 4,966,127 |
| 31 | sass (3.2.1) Sass makes CSS fun again. Sass is an extension of CSS3, adding nested rules, variable... | 4,872,988 |
| 32 | net-ssh (2.6.0) Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs... | 4,829,406 |
| 33 | rack-cache (1.2) Rack::Cache is suitable as a quick drop-in component to enable HTTP caching for Rack-based applic... | 4,719,831 |
| 34 | jquery-rails (2.1.3) This gem provides jQuery and the jQuery-ujs driver for your Rails 3 application. | 4,523,495 |
| 35 | diff-lcs (1.1.3) Diff::LCS is a port of Perl's Algorithm::Diff that uses the McIlroy-Hunt longest common subsequen... | 4,404,346 |
| 36 | sinatra (1.3.3) Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort. | 4,330,793 |
| 37 | hike (1.2.1) A Ruby library for finding files in a set of paths. | 4,303,737 |
| 38 | addressable (2.3.2) Addressable is a replacement for the URI implementation that is part of Ruby's standard library. ... | 4,237,190 |
| 39 | rspec-core (2.11.1) BDD for Ruby. RSpec runner and example groups. | 4,172,111 |
| 40 | highline (1.6.15) A high-level IO library that provides validation, type conversion, and more for command-line inte... | 4,137,550 |
| 41 | rack-ssl (1.3.2) Rack middleware to force SSL/TLS. | 4,124,776 |
| 42 | rspec-expectations (2.11.3) rspec expectations (should[_not] and matchers) | 4,110,391 |
| 43 | rspec-mocks (2.11.3) RSpec's 'test double' framework, with support for stubbing and mocking | 4,098,675 |
| 44 | abstract (1.0.0) 'abstract.rb' is a library which enable you to define abstract method in Ruby. | 4,011,383 |
| 45 | haml (3.1.7) Haml (HTML Abstraction Markup Language) is a layer on top of XHTML or XML that's desi... | 4,007,195 |
| 46 | execjs (1.4.0) ExecJS lets you run JavaScript code from Ruby. | 3,874,290 |
| 47 | daemons (1.1.9) Daemons provides an easy way to wrap existing ruby scripts (for example a self-written server) t... | 3,831,000 |
| 48 | sqlite3 (1.3.6) This module allows Ruby programs to interface with the SQLite3 database engine (http://www.sqlite... | 3,768,728 |
| 49 | rest-client (1.6.7) A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifyin... | 3,605,107 |
| 50 | ffi (1.1.5) Ruby-FFI is a ruby extension for programmatically loading dynamic libraries, binding functions wi... | 3,538,638 |
| 51 | coffee-script-source (1.3.3) CoffeeScript is a little language that compiles into JavaScript. Underneath all of th... | 3,509,211 |
| 52 | rubyzip (0.9.9) rubyzip is a ruby module for reading and writing zip files | 3,499,544 |
| 53 | uglifier (1.3.0) Ruby wrapper for UglifyJS JavaScript compressor | 3,465,187 |
| 54 | bcrypt-ruby (3.0.1) bcrypt() is a sophisticated and secure hash algorithm designed by The OpenBSD project for... | 3,435,781 |
| 55 | systemu (2.5.2) description: systemu kicks the ass | 3,415,879 |
| 56 | json_pure (1.7.5) This is a JSON implementation in pure Ruby. | 3,202,276 |
| 57 | sass-rails (3.2.5) Sass adapter for the Rails asset pipeline. | 3,190,159 |
| 58 | coffee-script (2.2.0) Ruby CoffeeScript is a bridge to the JS CoffeeScript compiler. | 3,088,249 |
| 59 | rspec-rails (2.11.0) RSpec for Rails | 3,087,291 |
| 60 | eventmachine (1.0.0) EventMachine implements a fast, single-threaded engine for arbitrary network communications. It's... | 3,023,841 |
| 61 | rubygems-update (1.8.24) RubyGems is a package management framework for Ruby. This gem is an update for the RubyGems soft... | 2,858,638 |
| 62 | net-ssh-gateway (1.1.0) A simple library to assist in establishing tunneled Net::SSH connections | 2,857,873 |
| 63 | coffee-rails (3.2.2) Coffee Script adapter for the Rails asset pipeline. | 2,838,885 |
| 64 | selenium-webdriver (2.25.0) WebDriver is a tool for writing automated tests of websites. It aims to mimic the behaviour of a ... | 2,800,596 |
| 65 | mysql2 (0.3.11) A simple, fast Mysql library for Ruby, binding to libmysql | 2,782,985 |
| 66 | mysql (2.8.1) This is the MySQL API module for Ruby. It provides the same functions for Ruby programs that the ... | 2,772,768 |
| 67 | journey (1.0.4) Journey is a router. It routes requests. | 2,741,786 |
| 68 | will_paginate (3.0.3) will_paginate provides a simple API for performing paginated queries with Active Record, DataMapp... | 2,697,592 |
| 69 | net-scp (1.0.4) A pure Ruby implementation of the SCP client protocol | 2,690,560 |
| 70 | uuidtools (2.1.3) A simple universally unique ID generation library. | 2,667,611 |
| 71 | childprocess (0.3.5) This gem aims at being a simple and reliable solution for controlling external programs running i... | 2,655,109 |
| 72 | devise (2.1.2) Flexible authentication solution for Rails with Warden | 2,615,325 |
| 73 | warden (1.2.1) Rack middleware that provides authentication for rack applications | 2,613,521 |
| 74 | term-ansicolor (1.0.7) Ruby library that colors strings using ANSI escape sequences | 2,454,716 |
| 75 | pg (0.14.1) Pg is the Ruby interface to the {PostgreSQL RDBMS}[http://www.postgresql.org/]. It works with {P... | 2,437,712 |
| 76 | capistrano (2.13.4) Capistrano is a utility and framework for executing commands in parallel on multiple remote machi... | 2,418,114 |
| 77 | xml-simple (1.1.1) A simple API for XML processing. | 2,361,690 |
| 78 | factory_girl (4.1.0) factory_girl provides a framework and DSL for defining and using factories ... | 2,338,429 |
| 79 | gherkin (2.11.2) A fast Gherkin lexer/parser based on the Ragel State Machine Compiler. | 2,279,697 |
| 80 | net-sftp (2.0.5) A pure Ruby implementation of the SFTP client protocol | 2,222,437 |
| 81 | sqlite3-ruby (1.3.3) This module allows Ruby programs to interface with the SQLite3 database engine (http://www.sqlite... | 2,142,551 |
| 82 | cucumber (1.2.1) Behaviour Driven Development with elegance and joy | 2,118,983 |
| 83 | fastthread (1.0.7) Optimized replacement for thread.rb primitives | 2,063,701 |
| 84 | httparty (0.9.0) Makes http fun! Also, makes consuming restful web services dead easy. | 2,042,246 |
| 85 | launchy (2.1.2) Launchy is helper class for launching cross-platform applications in a fire and forget manner. Th... | 2,002,701 |
| 86 | orm_adapter (0.4.0) Provides a single point of entry for using basic features of ruby ORMs | 1,981,564 |
| 87 | capybara (1.1.2) Capybara is an integration testing tool for rack based web applications. It simulates how a user ... | 1,962,024 |
| 88 | faraday (0.8.4) HTTP/REST API client library. | 1,920,469 |
| 89 | columnize (0.3.6) In showing a long lists, sometimes one would prefer to see the value arranged aligned in columns... | 1,911,532 |
| 90 | fastercsv (1.5.5) FasterCSV is intended as a complete replacement to the CSV standard library. It is significantly ... | 1,910,911 |
| 91 | multipart-post (1.1.5) Use with Net::HTTP to do multipart form posts. IO values that have #content_type, #original_file... | 1,878,860 |
| 92 | thin (1.5.0) A thin and fast web server | 1,867,576 |
| 93 | yajl-ruby (1.1.0) Ruby C bindings to the excellent Yajl JSON stream-based parser library. | 1,824,073 |
| 94 | paperclip (3.2.0) Easy upload management for ActiveRecord | 1,797,240 |
| 95 | crack (0.3.1) Really simple JSON and XML parsing, ripped from Merb and Rails. | 1,749,542 |
| 96 | hoe (3.1.0) Hoe is a rake/rubygems helper for project Rakefiles. It helps you manage, maintain, and release y... | 1,711,168 |
| 97 | bson (1.7.0) A Ruby BSON implementation for MongoDB. For more information about Mongo, see http://www.mongodb.... | 1,703,739 |
| 98 | mongo (1.7.0) A Ruby driver for MongoDB. For more information about Mongo, see http://www.mongodb.org. | 1,685,636 |
| 99 | redis (3.0.1) A Ruby client that tries to match Redis' API one-to-one, while still providing an idiomat... | 1,678,500 |
| 100 | oauth (0.4.7) OAuth Core Ruby implementation | 1,668,686 |
| 101 | hpricot (0.8.6) a swift, liberal HTML parser with a fantastic library | 1,665,579 |
| 102 | xpath (0.1.4) XPath is a Ruby DSL for generating XPath expressions | 1,662,144 |
| 103 | multi_xml (0.5.1) A gem to provide swappable XML backends utilizing LibXML, Nokogiri, Ox, or REXML. | 1,650,047 |
| 104 | database_cleaner (0.8.0) Strategies for cleaning databases. Can be used to ensure a clean state for testing. | 1,643,314 |
| 105 | newrelic_rpm (3.4.2.1) New Relic is a performance management system, developed by New Relic, Inc (http://www.newrelic.co... | 1,594,522 |
| 106 | bson_ext (1.7.0) C extensions to accelerate the Ruby BSON serialization. For more information about BSON, see http... | 1,567,521 |
| 107 | therubyracer (0.10.2) Call javascript code and manipulate javascript objects from ruby. Call ruby code and manipulate r... | 1,497,641 |
| 108 | passenger (3.0.17) Easy and robust Ruby web application deployment. | 1,478,024 |
| 109 | "ruby-hmac (0.4.0) This module provides common interface to HMAC functionality. HMAC is a kind of ""Message Authentic..." | 1,465,845 |
| 110 | factory_girl_rails (4.1.0) factory_girl_rails provides integration between factory_girl and rails 3 (currently just auto... | 1,460,926 |
| 111 | mocha (0.12.5) Mocking and stubbing library with JMock/SchMock syntax, which allows mocking and stubbing of meth... | 1,443,899 |
| 112 | libv8 (3.11.8.3) Distributes the V8 JavaScript engine in binary and source forms in order to support fast builds o... | 1,422,207 |
| 113 | bunny (0.8.0) A synchronous Ruby AMQP client that enables interaction with AMQP-compliant brokers. | 1,402,528 |
| 114 | rack-protection (1.2.0) You should use protection! | 1,369,433 |
| 115 | compass (0.12.2) Compass is a Sass-based Stylesheet Framework that streamlines the creation and maintainance of CSS. | 1,359,590 |
| 116 | hashie (1.2.0) Hashie is a small collection of tools that make hashes more powerful. Currently includes Mash (Mo... | 1,348,575 |
| 117 | chronic (0.8.0) Chronic is a natural language date/time parser written in pure Ruby. | 1,337,311 |
| 118 | rmagick (2.13.1) RMagick is an interface between Ruby and ImageMagick. | 1,319,050 |
| 119 | unicorn (4.3.1) \Unicorn is an HTTP server for Rack applications designed to only serve fast clients on low-laten... | 1,316,437 |
| 120 | aws-s3 (0.6.3) Client library for Amazon's Simple Storage Service's REST API | 1,276,904 |
| 121 | heroku (2.32.4) Client library and command-line tool to deploy and manage apps on Heroku. | 1,267,498 |
| 122 | excon (0.16.4) EXtended http(s) CONnections | 1,265,933 |
| 123 | oauth2 (0.8.0) A Ruby wrapper for the OAuth 2.0 protocol built with a similar style to the original OAuth gem. | 1,257,445 |
| 124 | chef (10.14.2) A systems integration framework, built to bring the benefits of configuration management to your ... | 1,222,926 |
| 125 | cucumber-rails (1.3.0) Cucumber Generator and Runtime for Rails | 1,216,134 |
| 126 | kgio (2.7.4) kgio provides non-blocking I/O methods for Ruby without raising exceptions on EAGAIN and EINPROGR... | 1,215,453 |
| 127 | RedCloth (4.2.9) Textile parser for Ruby. | 1,199,004 |
| 128 | rubyforge (2.0.4) A script which automates a limited set of rubyforge operations. * Run 'rubyforge help' for compl... | 1,188,650 |
| 129 | cascading.jruby (0.0.9) cascading.jruby is a small DSL above Cascading, written in JRuby | 1,159,093 |
| 130 | ansi (1.4.3) The ANSI project is a superlative collection of ANSI escape code related libraries enabling ANSI ... | 1,132,586 |
| 131 | ohai (6.14.0) Ohai profiles your system and emits JSON | 1,114,676 |
| 132 | cancan (1.6.8) Simple authorization solution for Rails which is decoupled from user roles. All permissions are s... | 1,112,382 |
| 133 | redis-namespace (1.2.1) Adds a Redis::Namespace class which can be used to namespace calls to Redis. This is useful when ... | 1,108,007 |
| 134 | mixlib-log (1.4.1) A gem that provides a simple mixin for log functionality | 1,069,339 |
| 135 | mixlib-cli (1.2.2) A simple mixin for CLI interfaces, including option parsing | 1,057,138 |
| 136 | fog (1.6.0) The Ruby cloud services library. Supports all major cloud providers including AWS, Rackspace, Lin... | 1,055,269 |
| 137 | linecache (0.46) LineCache is a module for reading and caching lines. This may be useful for example in a debugger... | 1,052,307 |
| 138 | mixlib-config (1.1.2) A class based config mixin, similar to the one found in Chef. | 1,048,426 |
| 139 | ZenTest (4.8.2) ZenTest provides 4 different tools: zentest, unit_diff, autotest, and multiruby. zentest scans y... | 1,042,070 |
| 140 | mongrel (1.1.5) A small fast HTTP library and server that runs Rails, Camping, Nitro and Iowa apps. | 1,041,906 |
| 141 | chunky_png (1.2.6) This pure Ruby library can read and write PNG images without depending on an external im... | 1,038,572 |
| 142 | open4 (1.3.0) description: open4 kicks the ass | 1,029,319 |
| 143 | rvm (1.11.3.5) RVM ~ Ruby Environment Manager ~ Ruby Gem Library. | 1,020,042 |
| 144 | mixlib-authentication (1.3.0) Mixes in simple per-request authentication | 1,015,493 |
| 145 | gem_plugin (0.2.3) A plugin system based on rubygems that uses dependencies only | 1,012,619 |
| 146 | guard (1.3.3) Guard is a command line tool to easily handle events on file system modifications. | 989,982 |
| 147 | resque (1.22.0) Resque is a Redis-backed Ruby library for creating background jobs, placing those jobs on... | 989,386 |
| 148 | spork (0.9.2) A forking Drb spec server | 989,152 |
| 149 | archive-tar-minitar (0.5.2) Archive::Tar::Minitar is a pure-Ruby library and command-line utility that provides the ability t... | 983,194 |
| 150 | moneta (0.6.0) A unified interface to key/value stores | 981,568 |
| 151 | kaminari (0.14.1) Kaminari is a Scope & Engine based, clean, powerful, agnostic, customizable and sophisticated pag... | 979,539 |
| 152 | ruby-debug-base (0.10.4) ruby-debug is a fast implementation of the standard Ruby debugger debug.rb. It is implemented by ... | 979,236 |
| 153 | formtastic (2.2.1) A Rails form builder plugin/gem with semantically rich and accessible markup | 975,458 |
| 154 | vegas (0.1.11) Vegas aims to solve the simple problem of creating executable versions of Sinatra/Rack apps. It i... | 974,176 |
| 155 | coderay (1.0.7) Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth in... | 964,091 |
| 156 | cocaine (0.3.1) A small library for doing (command) lines | 958,259 |
| 157 | sexp_processor (4.0.1) sexp_processor branches from ParseTree bringing all the generic sexp processing tools with it. Se... | 956,301 |
| 158 | fssm (0.2.9) The File System State Monitor keeps track of the state of any number of paths and will fire event... | 955,725 |
| 159 | faker (1.1.2) Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, p... | 950,218 |
| 160 | daemon_controller (1.0.0) A library for robust daemon management. | 932,100 |
| 161 | ruby-debug (0.10.4) A generic command line interface for ruby-debug. | 920,749 |
| 162 | rcov (1.0.0) rcov is a code coverage tool for Ruby. | 918,568 |
| 163 | formatador (0.2.3) STDOUT text formatting | 911,734 |
| 164 | memcache-client (1.8.5) A Ruby library for accessing memcached. | 906,007 |
| 165 | ruby-openid (2.2.0) A library for consuming and serving OpenID identities. | 864,977 |
| 166 | webrat (0.7.3) Webrat lets you quickly write expressive and robust acceptance tests for a Ruby web application. ... | 864,798 |
| 167 | libxml-ruby (2.3.3) The Libxml-Ruby project provides Ruby language bindings for the GNOME Libxml2 XML toolkit... | 857,113 |
| 168 | ruby_parser (2.3.1) ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which does by default use... | 856,866 |
| 169 | raindrops (0.10.0) Raindrops is a real-time stats toolkit to show statistics for Rack HTTP servers. It is designed ... | 850,098 |
| 170 | net-ssh-multi (1.1) Control multiple Net::SSH connections via a single interface. | 846,776 |
| 171 | capistrano-ext (1.2.1) Useful task libraries and methods for Capistrano | 841,625 |
| 172 | delayed_job (3.0.3) Delayed_job (or DJ) encapsulates the common pattern of asynchronously executing longer tasks in t... | 829,942 |
| 173 | minitest (3.5.0) minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchm... | 823,114 |
| 174 | macaddr (1.6.1) description: macaddr kicks the ass | 823,093 |
| 175 | configuration (1.3.2) description: configuration kicks the ass | 816,741 |
| 176 | right_http_connection (1.3.0) Rightscale::HttpConnection is a robust HTTP/S library. It implements a retry algorithm for low-l... | 816,140 |
| 177 | right_aws (3.0.4) == DESCRIPTION: The RightScale AWS gems have been designed to provide a robust, fast, and secure... | 805,424 |
| 178 | hoptoad_notifier (2.4.11) Send your application errors to our hosted service and reclaim your inbox. | 804,683 |
| 179 | uuid (2.3.5) UUID generator for producing universally unique identifiers based on RFC 4122 (http://www.ietf.or... | 798,024 |
| 180 | omniauth (1.1.1) A generalized Rack framework for multiple-provider authentication. | 789,197 |
| 181 | cgi_multipart_eof_fix (2.5.0) Fix an exploitable bug in CGI multipart parsing. | 786,380 |
| 182 | mongoid (3.0.6) Mongoid is an ODM (Object Document Mapper) Framework for MongoDB, written in Ruby. | 784,609 |
| 183 | authlogic (3.1.3) A clean, simple, and unobtrusive ruby authentication solution. | 783,840 |
| 184 | SystemTimer (1.2.3) Set a Timeout based on signals, which are more reliable than Timeout. Timeout is based on green t... | 772,050 |
| 185 | mechanize (2.5.1) The Mechanize library is used for automating interaction with websites. Mechanize automatically s... | 769,149 |
| 186 | Platform (0.4.0) Hopefully robust platform sensing | 756,424 |
| 187 | whenever (0.7.3) Clean ruby syntax for writing and deploying cron jobs. | 752,313 |
| 188 | libwebsocket (0.1.5) Universal Ruby library to handle WebSocket protocol | 748,706 |
| 189 | awesome_print (1.1.0) Great Ruby dubugging companion: pretty print Ruby objects to visualize their structure. Supports ... | 744,501 |
| 190 | sequel (3.39.0) The Database Toolkit for Ruby | 743,321 |
| 191 | shoulda (3.1.1) Making tests easy on the fingers and eyes | 741,578 |
| 192 | state_machine (1.1.2) Adds support for creating state machines for attributes on any Ruby class | 731,654 |
| 193 | turn (0.9.6) Turn provides a set of alternative runners for MiniTest, both colorful and informative. | 724,258 |
| 194 | httpclient (2.2.7) gives something like the functionality of libwww-perl (LWP) in Ruby | 721,479 |
| 195 | carrierwave (0.6.2) Upload files in your Ruby applications, map them to a range of ORMs, store them on different back... | 713,550 |
| 196 | ruby_core_source (0.1.5) Retrieve Ruby core source files | 710,780 |
| 197 | guard-rspec (1.2.1) Guard::RSpec automatically run your specs (much like autotest). | 703,447 |
| 198 | htmlentities (4.3.1) A module for encoding and decoding (X)HTML entities. | 698,673 |
| 199 | responders (0.9.2) A set of Rails 3 responders to dry up your application | 685,376 |
| 200 | extlib (0.9.15) Support library for DataMapper and Merb | 682,347 |
| 201 | pry (0.9.10) An IRB alternative and runtime developer console | 675,089 |
| 202 | linecache19 (0.5.12) Linecache is a module for reading and caching lines. This may be useful for example in a debugger... | 660,410 |
| 203 | curb (0.8.1) Curb (probably CUrl-RuBy or something) provides Ruby-language bindings for the libcurl(3), a full... | 660,264 |
| 204 | foreman (0.60.0) Process manager for applications with multiple components | 658,450 |
| 205 | yard (0.8.2.1) YARD is a documentation generation tool for the Ruby programming language. It enables the... | 655,252 |
| 206 | log4r (1.1.10) See also: http://logging.apache.org/log4j | 654,281 |
| 207 | net-ldap (0.3.1) Net::LDAP for Ruby (also called net-ldap) implements client access for the Lightweight Directory ... | 651,039 |
| 208 | simplecov (0.6.4) Code coverage for Ruby 1.9 with a powerful configuration library and automatic merging of coverag... | 649,780 |
| 209 | rdiscount (1.6.8) Fast Implementation of Gruber's Markdown in C | 648,792 |
| 210 | aws-sdk (1.6.6) AWS SDK for Ruby | 646,949 |
| 211 | rubygems-bundler (1.1.0) Stop using bundle exec. Integrate Rubygems and Bundler. Make rubygems generate bundler aware exec... | 642,813 |
| 212 | yui-compressor (0.9.6) A Ruby interface to YUI Compressor for minifying JavaScript and CSS assets. | 642,205 |
| 213 | culerity (0.2.15) Culerity integrates Cucumber and Celerity in order to test your application's full stack. | 635,022 |
| 214 | haml-rails (0.3.5) Haml-rails provides Haml generators for Rails 3. It also enables Haml as the templating engine fo... | 634,685 |
| 215 | inherited_resources (1.3.1) Inherited Resources speeds up development by making your controllers inherit all restful actions ... | 623,264 |
| 216 | twitter (3.7.0) A Ruby wrapper for the Twitter API. | 621,831 |
| 217 | data_objects (0.10.8) Provide a standard and simplified API for communicating with RDBMS from Ruby | 621,164 |
| 218 | rufus-scheduler (2.0.17) job scheduler for Ruby (at, cron, in and every jobs). | 613,829 |
| 219 | simplecov-html (0.5.3) Default HTML formatter for SimpleCov code coverage tool for ruby 1.9+ | 607,047 |
| 220 | slop (3.3.3) A simple DSL for gathering options and parsing the command line | 606,532 |
| 221 | has_scope (0.5.1) Maps controller filters to your resource scopes | 602,269 |
| 222 | puppet (2.7.19) Puppet, an automated configuration management tool | 599,888 |
| 223 | test-unit (2.5.2) Ruby 1.9.x bundles minitest not Test::Unit. Test::Unit bundled in Ruby 1.8.x had not been improve... | 590,106 |
| 224 | method_source (0.8) retrieve the sourcecode for a method | 587,496 |
| 225 | dm-core (1.2.0) Faster, Better, Simpler. | 579,045 |
| 226 | metaclass (0.0.1) Adds a metaclass method to all Ruby objects | 575,969 |
| 227 | dalli (2.2.1) High performance memcached client for Ruby | 572,740 |
| 228 | simple_form (2.0.2) Forms made easy! | 566,739 |
| 229 | jruby-openssl (0.7.7) JRuby-OpenSSL is an add-on gem for JRuby that emulates the Ruby OpenSSL native library. | 558,671 |
| 230 | airbrake (3.1.4) Send your application errors to our hosted service and reclaim your inbox. | 558,600 |
| 231 | stringex (1.4.0) Some [hopefully] useful extensions to Ruby's String class. Stringex is made up of three libraries... | 558,268 |
| 232 | hirb (0.7.0) Hirb provides a mini view framework for console applications and uses it to improve ripl(irb)'s d... | 556,657 |
| 233 | ci_reporter (1.7.2) CI::Reporter is an add-on to Test::Unit, RSpec and Cucumber that allows you to generate XML repor... | 553,945 |
| 234 | activemerchant (1.28.0) Active Merchant is a simple payment abstraction library used in and sponsored by Shopify. It is w... | 545,417 |
| 235 | POpen4 (0.1.4) Open4 cross-platform | 542,827 |
| 236 | braintree (2.17.0) Ruby library for integrating with the Braintree Gateway | 542,098 |
| 237 | typhoeus (0.4.2) Like a modern code version of the mythical beast with 100 serpent heads, Typhoeus runs HTTP reque... | 541,435 |
| 238 | rack-openid (1.3.1) Provides a more HTTPish API around the ruby-openid library | 537,637 |
| 239 | money (5.0.0) This library aids one in handling money and different currencies. | 536,593 |
| 240 | trollop (2.0) Trollop is a commandline option parser for Ruby that just gets out of your way. One line of code ... | 535,902 |
| 241 | ruby-debug-base19 (0.11.25) ruby-debug is a fast implementation of the standard Ruby debugger debug.rb. It is implemented by ... | 534,445 |
| 242 | "timecop (0.5.2) A gem providing ""time travel"" and ""time freezing"" capabilities, making it dead simple to test tim..." | 529,898 |
| 243 | rb-fsevent (0.9.2) FSEvents API with Signals catching (without RubyCocoa) | 529,314 |
| 244 | simple_oauth (0.1.9) Simply builds and verifies OAuth headers | 528,877 |
| 245 | "acts_as_list (0.1.8) This ""acts_as"" extension provides the capabilities for sorting and reordering a number of objects..." | 527,050 |
| 246 | webmock (1.8.10) WebMock allows stubbing HTTP requests and setting expectations on HTTP requests. | 525,603 |
| 247 | dm-migrations (1.2.0) DataMapper plugin for writing and speccing migrations | 523,885 |
| 248 | celerity (0.9.2) Celerity is a JRuby wrapper around HtmlUnit â a headless Java browser with JavaScript support. ... | 515,540 |
| 249 | ipaddress (0.8.0) IPAddress is a Ruby library designed to make manipulation \ of IPv4 and IPv6 addresse... | 510,237 |
| 250 | acts-as-taggable-on (2.3.3) With ActsAsTaggableOn, you can tag a single model on several contexts, such as skills, interests,... | 503,635 |
| 251 | spreadsheet (0.7.3) The Spreadsheet Library is designed to read and write Spreadsheet Documents. As of version 0.6.0,... | 497,821 |
| 252 | rbx-require-relative (0.0.9) Ruby 1.9's require_relative for Rubinius and MRI 1.8. We also add abs_path which is like __FILE... | 497,234 |
| 253 | less (2.2.2) Invoke the Less CSS compiler from Ruby | 497,029 |
| 254 | jammit (0.6.5) Jammit is an industrial strength asset packaging library for Rails, providing both the CS... | 493,886 |
| 255 | "friendly_id (4.0.8) FriendlyId is the ""Swiss Army bulldozer"" of slugging and permalink plugins for Ruby on Rails. It ..." | 490,080 |
| 256 | net-http-persistent (2.7) Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8. It's thread-safe to... | 485,953 |
| 257 | git (1.2.5) Ruby/Git is a Ruby library that can be used to create, read and manipulate Git repositories by wr... | 483,551 |
| 258 | ruby-prof (0.11.2) ruby-prof is a fast code profiler for Ruby. It is a C extension and therefore is many times faste... | 483,331 |
| 259 | meta_search (1.1.3) Allows simple search forms to be created against an AR3 model and its associations, ... | 482,888 |
| 260 | riddle (1.5.3) A Ruby API and configuration helper for the Sphinx search service. | 482,005 |
| 261 | ruby-ole (1.2.11.4) A library for easy read/write access to OLE compound documents for Ruby. | 479,080 |
| 262 | ruby-debug19 (0.11.6) A generic command line interface for ruby-debug. | 478,969 |
| 263 | mini_magick (3.4) Manipulate images with minimal use of memory via ImageMagick / GraphicsMagick | 476,485 |
| 264 | "bouncy-castle-java (1.5.0146.1) Gem redistribution of ""Legion of the Bouncy Castle Java cryptography APIs"" jars at http://www.bou..." | 475,691 |
| 265 | amqp (0.9.7) Widely used, feature-rich asynchronous AMQP 0.9.1 client with batteries included. | 469,842 |
| 266 | do_sqlite3 (0.10.8) Implements the DataObjects API for Sqlite3 | 466,227 |
| 267 | dm-do-adapter (1.2.0) DataObjects Adapter for DataMapper | 462,912 |
| 268 | facter (1.6.12) You can prove anything with facts! | 454,423 |
| 269 | fakeweb (1.3.0) FakeWeb is a helper for faking web requests in Ruby. It works at a global level, without modifyin... | 453,044 |
| 270 | faraday_middleware (0.8.8) Various middleware for Faraday | 451,891 |
| 271 | escape (0.0.4) ... | 448,694 |
| 272 | prawn (0.12.0) Prawn is a fast, tiny, and nimble PDF generator for Ruby | 443,713 |
| 273 | subexec (0.2.2) Subexec spawns a subprocess with an optional timeout | 442,603 |
| 274 | oa-core (0.3.2) Core strategies for OmniAuth. | 438,008 |
| 275 | spruz (0.2.13) All the stuff that isn't good/big enough for a real library. | 436,562 |
| 276 | geokit (1.6.5) Geokit provides geocoding and distance calculation in an easy-to-use API | 436,050 |
| 277 | savon (1.2.0) Delicious SOAP for the Ruby community | 433,391 |
| 278 | syntax (1.0.0) Syntax is Ruby library for performing simple syntax highlighting. | 433,062 |
| 279 | em-http-request (1.0.3) EventMachine based, async HTTP Request client | 428,263 |
| 280 | thinking-sphinx (2.0.13) A concise and easy-to-use Ruby library that connects ActiveRecord to the Sphinx search daemon, ma... | 420,763 |
| 281 | shoulda-matchers (1.3.0) Making tests easy on the fingers and eyes | 419,589 |
| 282 | oa-oauth (0.3.2) OAuth strategies for OmniAuth. | 418,817 |
| 283 | fattr (2.2.1) description: fattr kicks the ass | 418,568 |
| 284 | lockfile (2.1.0) description: lockfile kicks the ass | 415,147 |
| 285 | http_parser.rb (0.5.3) Ruby bindings to http://github.com/ry/http-parser and http://github.com/a2800276/http-parser.java | 415,034 |
| 286 | autotest (4.4.6) This is a stub gem to fix the confusion caused by autotest being part of the ZenTest suite. | 414,357 |
| 287 | wirble (0.1.3) Handful of common Irb features, made easy. | 405,505 |
| 288 | rsolr (1.0.8) RSolr aims to provide a simple and extensible library for working with Solr | 399,606 |
| 289 | fxruby (1.6.25) FXRuby is the Ruby binding to the FOX GUI toolkit. | 398,271 |
| 290 | httpi (1.1.1) HTTPI provides a common interface for Ruby HTTP libraries. | 395,789 |
| 291 | gemcutter (0.7.1) Provides the `gem yank` and `gem webhook` commands to RubyGems. | 395,372 |
| 292 | parallel (0.5.18) Run any kind of code in parallel processes | 393,534 |
| 293 | ruby-openid-apps-discovery (1.2.0) Extension to ruby-openid that enables discovery for Google Apps domains | 389,290 |
| 294 | jasmine (1.2.1) Test your JavaScript without any framework dependencies, in any environment, and with a nice desc... | 386,946 |
| 295 | bootstrap-sass (2.1.0.0) Twitter's Bootstrap, converted to Sass and ready to drop into Rails or Compass | 382,223 |
| 296 | email_spec (1.2.1) Easily test email in rspec and cucumber | 379,569 |
| 297 | em-resolv-replace (1.1.3) EventMachine-aware DNS lookup for Ruby | 374,284 |
| 298 | dm-sqlite-adapter (1.2.0) Sqlite3 Adapter for DataMapper | 374,217 |
| 299 | closure-compiler (1.1.7) A Ruby Wrapper for the Google Closure Compiler. | 373,008 |
| 300 | rr (1.0.4) RR (Double Ruby) is a double framework that features a rich selection of double techniques and a ... | 372,164 |
| 301 | Ascii85 (1.0.2) Ascii85 provides methods to encode/decode Adobe's binary-to-text encoding of the same name. | 372,120 |
| 302 | sanitize (2.0.3) Whitelist-based HTML sanitizer. | 370,253 |
| 303 | ruby2ruby (1.3.1) ruby2ruby provides a means of generating pure ruby code easily from RubyParser compatible Sexps. ... | 369,820 |
| 304 | pdf-reader (1.2.0) The PDF::Reader library implements a PDF parser conforming as much as possible to the PDF specifi... | 364,354 |
| 305 | polyamorous (0.5.0) This is just an extraction from Ransack/Squeel. You probably don't want to use this dire... | 360,552 |
| 306 | babosa (0.3.8) A library for creating slugs. Babosa an extraction and improvement of the string code fro... | 356,569 |
| 307 | omniauth-oauth2 (1.1.1) An abstract OAuth2 strategy for OmniAuth. | 355,903 |
| 308 | "colored (1.2) >> puts ""this is red"".red >> puts ""this is red with a blue background (read: ugly)"".red_on_..." | 355,144 |
| 309 | ruby-progressbar (1.0.1) Ruby/ProgressBar is an extremely flexible text progress bar library for Ruby. The output can be c... | 353,348 |
| 310 | liquid (2.4.1) A secure, non-evaling end user template engine with aesthetic markup. | 353,153 |
| 311 | hmx_client (0.1.0) Gives a client the ability to interact fully with the API for HMX | 353,044 |
| 312 | guard-spork (1.2.0) Guard::Spork automatically manage Spork DRb servers. | 348,933 |
| 313 | jeweler (1.8.4) Simple and opinionated helper for creating Rubygem projects on GitHub | 345,101 |
| 314 | redcarpet (2.1.1) A fast, safe and extensible Markdown to (X)HTML parser | 343,469 |
| 315 | rubyntlm (0.1.1) Ruby/NTLM provides message creator and parser for the NTLM authentication. | 340,516 |
| 316 | gyoku (0.4.6) Gyoku converts Ruby Hashes to XML | 336,681 |
| 317 | rb-inotify (0.8.8) A Ruby wrapper for Linux's inotify, using FFI | 335,733 |
| 318 | pyu-ruby-sasl (0.0.3.3) Simple Authentication and Security Layer (RFC 4422) | 333,543 |
| 319 | oa-openid (0.3.2) OpenID strategies for OmniAuth. | 333,151 |
| 320 | amazon-ec2 (0.9.17) A Ruby library for accessing the Amazon Web Services EC2, ELB, RDS, Cloudwatch, and Autoscaling A... | 332,656 |
| 321 | aasm (3.0.9) AASM is a continuation of the acts as state machine rails plugin, built for plain Ruby objects. | 331,458 |
| 322 | net-http-digest_auth (1.2.1) An implementation of RFC 2617 - Digest Access Authentication. At this time the gem does not drop... | 328,311 |
| 323 | aws (2.5.7) AWS Ruby Library for interfacing with Amazon Web Services including EC2, S3, SQS, SimpleDB and mo... | 320,253 |
| 324 | haml-edge (3.1.79) Haml (HTML Abstraction Markup Language) is a layer on top of XHTML or XML that's desi... | 318,618 |
| 325 | activerecord-jdbc-adapter (1.2.2) activerecord-jdbc-adapter is a database adapter for Rails\' ActiveRecord component that can be us... | 316,781 |
| 326 | webrobots (0.0.13) This library helps write robots.txt compliant web robots in Ruby. | 314,764 |
| 327 | commonjs (0.2.6) Host CommonJS JavaScript environments in Ruby | 314,435 |
| 328 | annotate (2.5.0) Annotates Rails/ActiveRecord Models, routes, fixtures, and others based on the database schema. | 313,507 |
| 329 | rspec-instafail (0.2.4) Show failing specs instantly | 313,032 |
| 330 | oa-enterprise (0.3.2) Enterprise strategies for OmniAuth. | 312,446 |
| 331 | oa-basic (0.3.2) HTTP Basic strategies for OmniAuth. | 311,379 |
| 332 | jwt (0.1.5) JSON Web Token implementation in Ruby | 311,131 |
| 333 | less-rails (2.2.3) The dynamic stylesheet language for the Rails asset pipeline. Allows other gems to extend Less lo... | 310,930 |
| 334 | dynamic_form (1.1.4) DynamicForm holds a few helper methods to help you deal with your Rails3 models. It includes the ... | 307,014 |
| 335 | six-updater-web (0.24.15) Your summary here | 306,106 |
| 336 | win32-api (1.4.8) The Win32::API library is meant as a replacement for the Win32API library that ships as p... | 306,033 |
| 337 | em-websocket (0.3.8) EventMachine based WebSocket server | 303,454 |
| 338 | file-tail (1.0.11) Library to tail files in Ruby | 301,217 |
| 339 | listen (0.5.2) The Listen gem listens to file modifications and notifies you about the changes. Works everywhere! | 299,653 |
| 340 | netrc (0.7.7) This library can read and update netrc files, preserving formatting including comments and whites... | 299,642 |
| 341 | god (0.13.1) An easy to configure, easy to extend monitoring framework written in Ruby. | 299,263 |
| 342 | taps (0.3.24) A simple database agnostic import/export app to transfer data to/from a remote database. | 296,250 |
| 343 | geoip (1.1.2) GeoIP searches a GeoIP database for a given host or IP address, and returns information about the... | 295,766 |
| 344 | flog (2.5.3) Flog reports the most tortured code in an easy to read pain report. The higher the score, the mor... | 293,561 |
| 345 | omniauth-facebook (1.4.1) Facebook strategy for OmniAuth | 291,142 |
| 346 | rmail (1.0.0) RMail is a lightweight mail library containing various utility classes and modules that allow rub... | 290,491 |
| 347 | mongo_mapper (0.12.0) A Ruby Object Mapper for Mongo | 288,211 |
| 348 | paper_trail (2.6.3) Track changes to your models' data. Good for auditing or versioning. | 285,949 |
| 349 | sunspot (1.3.3) Sunspot is a library providing a powerful, all-ruby API for the Solr search engine. Sunspot m... | 281,413 |
| 350 | blankslate (3.1.2) BlankSlate provides a base class where almost all of the methods from Object and Kernel have been... | 279,911 |
| 351 | dragonfly (0.9.12) Dragonfly is a framework that enables on-the-fly processing for any content type. It is especia... | 279,223 |
| 352 | exception_notification (2.6.1) Exception notification by email for Rails apps | 278,960 |
| 353 | zip (2.0.2) zip is a Ruby library for reading and writing Zip files. Unlike the official rubyzip, zip is comp... | 277,785 |
| 354 | RubyInline (3.11.3) Inline allows you to write foreign code within your ruby code. It automatically determines if the... | 277,514 |
| 355 | backports (2.6.4) Essential backports that enable some of the really nice features of ruby 1.8.7, ruby 1.9 an... | 277,141 |
| 356 | msgpack (0.4.7) MessagePack, a binary-based efficient data interchange format. | 276,258 |
| 357 | dm-validations (1.2.0) Library for performing validations on DM models and pure Ruby object | 275,015 |
| 358 | nori (1.1.3) XML to Hash translator | 274,402 |
| 359 | librex (0.0.68) Rex provides a variety of classes useful for security testing and exploit development. Based on S... | 274,263 |
| 360 | rails_best_practices (1.11.1) a code metric tool for rails codes, written in Ruby. | 273,896 |
| 361 | nifty-generators (0.4.6) A collection of useful Rails generator scripts for scaffolding, layout files, authentication, and... | 273,048 |
| 362 | machinist (2.0) Fixtures aren't fun. Machinist is. | 272,828 |
| 363 | koala (1.5.0) Koala is a lightweight, flexible Ruby SDK for Facebook. It allows read/write access to the socia... | 272,283 |
| 364 | dm-timestamps (1.2.0) DataMapper plugin for magical timestamps | 271,544 |
| 365 | jasmine-core (1.2.0) Test your JavaScript without any framework dependencies, in any environment, and with a nice desc... | 268,093 |
| 366 | resque-scheduler (2.0.0) Light weight job scheduling on top of Resque. Adds methods enqueue_at/enqueue_in to schedule ... | 266,782 |
| 367 | memcached (1.4.5) An interface to the libmemcached C client. | 266,763 |
| 368 | httpauth (0.2.0) Library for the HTTP Authentication protocol (RFC 2617) | 266,623 |
| 369 | mixlib-shellout (1.1.0) Run external commands on Unix or Windows | 265,118 |
| 370 | dm-aggregates (1.2.0) DataMapper plugin providing support for aggregates on collections | 264,924 |
| 371 | parseconfig (1.0.2) ParseConfig provides simple parsing of standard configuration files in the form of 'param = value... | 264,321 |
| 372 | fuubar (1.0.0) the instafailing RSpec progress bar formatter | 261,165 |
| 373 | maruku (0.6.1) Maruku is a Markdown interpreter in Ruby. It features native export to HTML and PDF (via Latex).... | 260,729 |
| 374 | windows-pr (1.2.2) The windows-pr library is a collection of Windows functions and constants pre-defined for... | 260,525 |
| 375 | mustache (0.99.4) Inspired by ctemplate, Mustache is a framework-agnostic way to render logic-free views. As ctemp... | 260,118 |
| 376 | rpm_contrib (2.1.11) Community contributed instrumentation for various frameworks based on the New Relic Ruby monitori... | 257,624 |
| 377 | sunspot_rails (1.3.3) Sunspot::Rails is an extension to the Sunspot library for Solr search. Sunspot::Rails add... | 257,526 |
| 378 | aaronh-chronic (0.3.9) A natural language date parser with timezone support | 254,815 |
| 379 | http_connection (1.4.1) HTTP helper library | 254,522 |
| 380 | sup (0.12.1) Sup is a console-based email client for people with a lot of email. It supports tagging, very fas... | 254,055 |
| 381 | escape_utils (0.2.4) Faster string escaping routines for your web apps | 253,905 |
| 382 | stomp (1.2.5) Ruby client for the Stomp messaging protocol. Note that this gem is no longer supported on rubyf... | 253,841 |
| 383 | flay (1.4.3) Flay analyzes code for structural similarities. Differences in literal values, variable, class, m... | 253,049 |
| 384 | logging (1.8.0) Logging is a flexible logging library for use in Ruby programs based on the design of Java's log4... | 252,142 |
| 385 | dm-types (1.2.2) DataMapper plugin providing extra data types | 249,217 |
| 386 | plucky (0.5.2) Thin layer over the ruby driver that allows you to quickly grab hold of your data (pluck it!). | 247,834 |
| 387 | ttfunk (1.0.3) Get Ya TrueType Funk On! (Font Metrics Parser for Prawn) | 245,528 |
| 388 | selenium-client (1.2.18) Official Ruby Client for Selenium RC. | 242,809 |
| 389 | wasabi (2.5.1) A simple WSDL parser | 242,654 |
| 390 | rails3-generators (0.17.6) Rails 3 compatible generators for gems that don't have them yet | 242,365 |
| 391 | searchlogic (2.5.8) Searchlogic makes using ActiveRecord named scopes easier and less repetitive. | 240,188 |
| 392 | ruby-debug-ide (0.4.16) An interface which glues ruby-debug to IDEs like Eclipse (RDT), NetBeans and RubyMine. | 238,670 |
| 393 | alpha_omega (1.0.1) Common reciples for persistent capistrano releases | 237,917 |
| 394 | growl (1.0.3) growlnotify bindings | 237,281 |
| 395 | vcr (2.2.5) VCR provides a simple API to record and replay your test suite's HTTP interactions. It works wit... | 236,432 |
| 396 | oa-more (0.3.2) Additional strategies for OmniAuth. | 236,159 |
| 397 | thrift (0.8.0) Ruby bindings for the Apache Thrift RPC system | 235,827 |
| 398 | capybara-webkit (0.12.1) Headless Webkit driver for Capybara | 235,496 |
| 399 | akami (1.2.0) Building Web Service Security | 235,314 |
| 400 | pr_geohash (1.0.0) GeoHash encode/decode library for pure Ruby. It's implementation of http://en.wikipedia.org/wiki... | 233,452 |
| 401 | rb-fchange (0.0.6) A Ruby wrapper for Windows Kernel functions for monitoring the specified directory or subtree | 232,118 |
| 402 | bourbon (2.1.1) The purpose of Bourbon Vanilla Sass Mixins is to provide a comprehensive framework of sass mixins... | 232,014 |
| 403 | compass-rails (1.0.3) Integrate Compass into Rails 2.3 and up. | 230,842 |
| 404 | pony (1.4) Send email in one command: Pony.mail(:to => 'someone@example.com', :body => 'hello') | 229,868 |
| 405 | plist (3.1.0) Plist is a library to manipulate Property List files, also known as plists. It can parse plist f... | 227,801 |
| 406 | kramdown (0.14.0) kramdown is yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and... | 227,483 |
| 407 | awesome_nested_set (2.1.4) An awesome nested set implementation for Active Record | 227,376 |
| 408 | main (5.1.0) description: main kicks the ass | 227,171 |
| 409 | hiredis (0.4.5) Ruby extension that wraps Hiredis (blocking connection and reply parsing) | 227,017 |
| 410 | icalendar (1.2.0) This is a Ruby library for dealing with iCalendar files. Rather than explaining myself, here is ... | 226,764 |
| 411 | autotest-rails (4.1.2) This is an autotest plugin to provide rails support. It provides basic rails support and extra pl... | 226,618 |
| 412 | six-updater (0.22.5) Your summary here | 225,039 |
| 413 | posix-spawn (0.3.6) posix-spawn uses posix_spawnp(2) for faster process spawning | 224,889 |
| 414 | bluecloth (2.2.0) BlueCloth is a Ruby implementation of John Gruber's Markdown[http://daringfireball.net/projects/m... | 223,719 |
| 415 | rake-compiler (0.8.1) Provide a standard and simplified way to build and package Ruby extensions (C, Java) using Rake a... | 223,520 |
| 416 | activeadmin (0.5.0) The administration framework for Ruby on Rails. | 222,340 |
| 417 | truncate_html (0.5.5) Truncates html so you don't have to | 221,097 |
| 418 | jruby-jars (1.6.8) This gem includes the core JRuby code and the JRuby 1.8 stdlib as jar files. It provides a way to... | 220,088 |
| 419 | little-plugger (1.1.3) LittlePlugger is a module that provides Gem based plugin management. By extending your own class ... | 219,900 |
| 420 | fb_graph (2.5.0) A full-stack Facebook Graph API wrapper in Ruby. | 219,595 |
| 421 | em-socksify (0.2.1) EventMachine SOCKSify shim: adds SOCKS support to any protocol | 219,464 |
| 422 | twitter-bootstrap-rails (2.1.3) twitter-bootstrap-rails project integrates Bootstrap CSS toolkit for Rails 3.1 Asset Pipeline | 217,976 |
| 423 | progressbar (0.11.0) Ruby/ProgressBar is a text progress bar library for Ruby. It can indicate progress with percentag... | 217,582 |
| 424 | system_timer (1.2.4) Set a Timeout based on signals, which are more reliable than Timeout. Timeout is based on green t... | 216,905 |
| 425 | configatron (2.9.1) configatron was developed by: markbates | 216,183 |
| 426 | spider (0.4.4) A Web spidering library: handles robots.txt, scraping, finding more links, and doing it all over ... | 215,392 |
| 427 | dm-serializer (1.2.2) DataMapper plugin for serializing Resources and Collections | 215,342 |
| 428 | pdfkit (0.5.2) Uses wkhtmltopdf to create PDFs using HTML | 215,231 |
| 429 | rchardet (1.3) Character encoding auto-detection in Ruby. As smart as your browser. Open source. | 214,926 |
| 430 | rabl (0.7.2) General ruby templating with json, bson, xml and msgpack support | 212,598 |
| 431 | geocoder (1.1.3) Provides object geocoding (by street or IP address), reverse geocoding (coordinates to street add... | 212,078 |
| 432 | ruby-graphviz (1.0.8) Ruby/Graphviz provides an interface to layout and generate images of directed graphs in a variety... | 210,139 |
| 433 | bundle (0.0.1) You really mean `gem install bundler`. It's okay. I'll fix it for you this one last time... | 209,411 |
| 434 | heroku-api (0.3.5) Ruby Client for the Heroku API | 206,911 |
| 435 | bitly (0.8.0) Use the bit.ly API to shorten or expand URLs | 206,812 |
| 436 | jruby-launcher (1.0.15-java) Builds and installs a native launcher for JRuby on your system | 205,697 |
| 437 | http_router (0.11.0) This library allows you to recognize and build URLs in a Rack application. | 205,261 |
| 438 | after_commit (1.0.10) A Ruby on Rails plugin to add an after_commit callback. This can be used to trigger methods ... | 204,037 |
| 439 | foreigner (1.2.1) Adds helpers to migrations and dumps foreign keys to schema.rb | 203,885 |
| 440 | soap4r (1.5.8) An implementation of SOAP 1.1 for Ruby. | 202,746 |
| 441 | ffaker (1.15.0) Faster Faker, generates dummy data. | 201,760 |
| 442 | pickle (0.4.11) Easy model creation and reference in your cucumber features | 201,609 |
| 443 | refinerycms (2.0.8) A Ruby on Rails CMS that supports Rails 3.2. It's easy to extend and sticks to 'the Rails way' wh... | 201,163 |
| 444 | prawn-layout (0.8.4) An extension to Prawn that provides table support and other layout functionality | 201,076 |
| 445 | milia (0.3.30) Transparent Multi-tenanting for hosted Rails 3.1+/Ruby 1.9.2 applications | 200,984 |
| 446 | arrayfields (4.7.4) arrayfields | 200,429 |
| 447 | dm-constraints (1.2.0) DataMapper plugin constraining relationships | 200,287 |
| 448 | scout (5.5.9) Scout makes monitoring and reporting on your web applications as flexible and simple as possible. | 199,855 |
| 449 | bluepill (0.0.60) Bluepill keeps your daemons up while taking up as little resources as possible. After all you pro... | 199,476 |
| 450 | facets (2.9.3) Facets is the premier collection of extension methods for the Ruby programming language. Facets e... | 199,170 |
| 451 | slim (1.3.1) Slim is a template language whose goal is reduce the syntax to the essential parts without becomi... | 198,996 |
| 452 | prawn-core (0.8.4) Prawn is a fast, tiny, and nimble PDF generator for Ruby | 198,910 |
| 453 | windows-api (0.4.2) The windows-api library provides features over and above the basic interface provided by ... | 197,139 |
| 454 | omniauth-oauth (1.0.1) A generic OAuth (1.0/1.0a) strategy for OmniAuth. | 196,831 |
| 455 | active_utils (1.0.5) Common utils used by active_merchant, active_fulfillment, and active_shipping | 196,230 |
| 456 | attribute-kit (0.2.0) Tools for attribute tracking like Hashes with dirty tracking and events, for building hybrid mode... | 196,227 |
| 457 | mini_exiftool (1.6.0) This library is wrapper for the Exiftool command-line application (http://www.sno.phy.queensu.ca/... | 195,353 |
| 458 | jruby-rack (1.1.10) JRuby-Rack is a combined Java and Ruby library that adapts the Java Servlet API to Rack. For JRub... | 194,083 |
| 459 | routing-filter (0.3.1) Routing filters wraps around the complex beast that the Rails routing system is, allowing for uns... | 192,648 |
| 460 | flexmock (1.0.3) FlexMock is a extremely simple mock object class compatible with the Test::Unit fram... | 190,520 |
| 461 | color (1.4.1) The capabilities of the Color library are limited to pure mathematical manipulation of the colour... | 188,576 |
| 462 | vj-sdk (0.7.14) Videojuicer core-sdk | 188,267 |
| 463 | grit (2.5.0) Grit is a Ruby library for extracting information from a git repository in an object oriented man... | 186,424 |
| 464 | parallel_tests (0.8.12) Run Test::Unit / RSpec / Cucumber in parallel | 186,086 |
| 465 | temple (0.5.3) Template compilation framework in Ruby | 186,082 |
| 466 | win32-process (0.7.0) The win32-process library implements several Process methods that are either unimplemente... | 183,996 |
| 467 | omniauth-twitter (0.0.13) OmniAuth strategy for Twitter | 183,463 |
| 468 | reek (1.2.12) Reek is a tool that examines Ruby classes, modules and methods and reports any code smells it fin... | 182,305 |
| 469 | recaptcha (0.3.4) This plugin adds helpers for the reCAPTCHA API | 182,225 |
| 470 | exceptional (2.0.32) Exceptional is the Ruby gem for communicating with http://getexceptional.com (hosted error tracki... | 181,051 |
| 471 | watchr (0.7) Modern continious testing (flexible alternative to autotest). | 180,702 |
| 472 | activerecord-jdbcmysql-adapter (1.2.2) Install this gem to use MySQL with JRuby on Rails. | 178,736 |
| 473 | settingslogic (2.0.8) A simple and straightforward settings solution that uses an ERB enabled YAML file and a singleton... | 178,089 |
| 474 | dm-transactions (1.2.0) Makes transaction support available for adapters that support them | 177,184 |
| 475 | autotest-growl (0.2.16) This gem aims to improve support for Growl notifications by autotest. | 177,135 |
| 476 | activerecord-sqlserver-adapter (3.2.9) SQL Server 2005 and 2008 Adapter For ActiveRecord | 174,804 |
| 477 | viewcumber (0.3.1) Cucumber formatter for easily viewing each step of your scenarios | 174,577 |
| 478 | ghostplus (0.0.1) Allows you to create, list, and modify local hostnames | 173,061 |
| 479 | tmail (1.2.7.1) TMail is a Ruby-based mail handler. It allows you to compose stadards compliant emails in a very ... | 172,411 |
| 480 | roodi (2.1.0) Roodi stands for Ruby Object Oriented Design Inferometer. It parses your Ruby code and warns you... | 172,380 |
| 481 | SyslogLogger (1.4.1) SyslogLogger is a Logger replacement that logs to syslog. It is almost drop-in with a few differ... | 171,886 |
| 482 | jenkins (0.6.8) A suite of utilities for bringing continous integration to your projects (not the other way aroun... | 171,570 |
| 483 | prawn-security (0.8.4) Prawn/Security adds document encryption, password protection, and permissions to Prawn. | 170,816 |
| 484 | scale_down (0.7.3) A Sinatra based server for quickly scaling and serving images. Nothing more. | 170,445 |
| 485 | client_side_validations (3.1.4) Client Side Validations | 170,001 |
| 486 | yamler (0.1.0) yamler was developed by: markbates | 169,260 |
| 487 | padrino-core (0.10.7) The Padrino core gem required for use of this framework | 169,259 |
| 488 | declarative_authorization (0.5.6) declarative_authorization is a Rails plugin for maintainable authorization based on readable auth... | 168,467 |
| 489 | http_configuration (1.0.4) Gem that provides the ability to set defaults for proxies and timeouts for Net::HTTP. Simplifies ... | 168,374 |
| 490 | remotipart (1.0.2) Remotipart is a Ruby on Rails gem enabling remote multipart forms (AJAX style file uploads) with ... | 168,060 |
| 491 | ntlm-http (0.1.1) Ruby/NTLM HTTP provides NTLM authentication over http. | 167,913 |
| 492 | vagrant (1.0.5) Vagrant is a tool for building and distributing virtualized development environments. | 167,895 |
| 493 | routo (0.0.4) Sending sms with Routo Messaging HTTP API. | 167,665 |
| 494 | globalize3 (0.2.0) Rails I18n: de-facto standard library for ActiveRecord 3 model/data translation. | 167,405 |
| 495 | guard-cucumber (1.2.0) Guard::Cucumber automatically run your features (much like autotest) | 167,341 |
| 496 | churn (0.0.24) High method and class churn has been shown to have increased bug and error rates. This gem helps ... | 167,211 |
| 497 | do_mysql (0.10.8) Implements the DataObjects API for MySQL | 166,962 |
| 498 | garb (0.9.1) Google Analytics API Ruby Wrapper | 166,659 |
| 499 | rush (0.6.8) A Ruby replacement for bash+ssh, providing both an interactive shell and a library. Manage both ... | 166,575 |
| 500 | directory_watcher (1.4.1) The directory watcher operates by scanning a directory at some interval and generating a list of ... | 166,312 |
Wednesday, September 26, 2012
Top 500 Ruby Gems on RubyGems.org
Tuesday, September 25, 2012
General procedures for system feature enhancement
Feature Spec - Identify the goal.
Production Release
- Feature(s) request received.
- Breakdown requests into small request items.
- Clarity requirements if necessary.
- List out the required changes.
- List out new functionality/methods needed.
- List out side effects.
- Reuse existing functionalities if possible.
- Ensure DRY (Don't repeat yourself)
- Open for future changes.
- Double check all usage scenarios.
- Run new features on mind map.
- Feasibility studies if necessary.
- Division of Labour.
- Estimate schedule.
- Create test cases.
- Implementation.
- Refine the feature and details during implementation.
- QA test
- User Acceptance test
- User demo
- Get user feedback
- Go back to feature spec cycle upon user feedback.
- Deployment to stage server
- Pre-release final checks.
Production Release
- Release to production.
User Training
- Conduct user training on new features.
Sunday, September 23, 2012
Practices of Agile Development
Attitudes
- Blame doesn't fix bugs.
- Don't code in isolation, do code reviews.
- Use unit tests.
- Do not code in quick and dirty ways.
- No need to be specialized on every technologies. But need to known the industry trend.
- Share knowledge with the team. Let everyone learn from each other.
- Learning new technologies may have to give up the old ones.
- Ask why and dig into the root of solution.
- Keep development cycle in a good pace. Design -> Implementation -> Testing -> Code Review -> Release.
- Let customer do the business decisions. Understand customers needs.
- Design in two phrases:
- Macro design: Give the direction of implementations. Not down to the details.
- Micro design: Ways on solve problems during implementation.
- A good design should be correct but not precise.
- Blindly picking a framework is like having kids to save taxes.
- Don't build what you can download.
- Base on project requirement, select the right tools and technologies.
- Checked-in code (on master branch) is always ready for action.
- Never accept big-bang integration. Should integrate codes more often.
- Automate QA testing.
- Get continuous feedback from customers. Ensure the project is on the right direction.
- Release the smallest usable feature in project development life cycle.
- Use unit tests to provide coding feedback.
- TDD - Write tests before writing code.
- Good design doesn't mean more classes.
- Target for simple design.
- Ensure code works on different platform (if applicable).
- Write clean code when speaks its purpose or function.
- PIE - Program Intently and Expressively.
- Let code speak for itself. Comments only helps. Don't comment to cover up.
- DRY - Don't Repeat Yourself.
- Carefully pick meaningful variable and method names.
- No best solution.
- Always code in clean, simple and easy for maintenance way.
- Simple is not simplistic.
- Do not use complicated design pattern unless it's absolutely necessary and with good reasons.
- Use inheritance for is-a; Use delegation for has-a or uses-a.
- Don't get burn twice. Keep a log book.
- Treat warning as an error. Solve it.
- Daily short (stand) meeting (10 - 15 minutes).
- Always know what others are working on.
- Simple questions for everyone:
- What's yesterday achievements?
- What's today's plan?
- Any obstacles?
- Do not discuss the questions during meeting. Details should be discussed after meeting.
- Meeting holds in the morning after everyone settle down.
- Advantages of daily meetings:
- Know the existing problems and progress.
- May reallocate resources if needed.
- Let everyone know what others are doing.
- May know who can provide a quick solution to a problem.
- Keep everyone in a good working pace.
- You can't code in PowerPoint.
- Architect should be able to code.
- Code should be reviewed and refactored if necessary.
- Every project member should shift to handle different part of the project.
- Knowledge grows when given.
- Inspire rather than given instructions.
- Code review basic check points:
- Easily readable and understandable?
- Any obvious mistakes?
- Is the code give negative effect on other functionality?
- Any repeated code?
- Can be improved or refactored?
- Unless there's obvious improvement after refactoring, do not change others code.
- Report progress and problems.
Friday, September 21, 2012
Thursday, September 20, 2012
Rails paginate inner join and outer join
some_scope.paginate \
:per_page => 20, :page => page,
:joins => :table_A, # will be inner joined
:include => :table_B, # will be outer joined
:conditions => ...
:per_page => 20, :page => page,
:joins => :table_A, # will be inner joined
:include => :table_B, # will be outer joined
:conditions => ...
Wednesday, September 19, 2012
Behavior-driven development framework for testing Javascript code
Monday, September 17, 2012
bash customization
$PS1="\h:\W \u~[\A]\$" #prompt
alias ll='ls -alG'
(in .bash_login)
alias ll='ls -alG'
(in .bash_login)
Outlook 2010 on Windows 7 - Relocate gmail pst file
1. Close Outlook.
2. Copy the pst folder to target location.
3. Rename the origin pst outlook folder to outlook_2
4. Create a symbolic link from origin outlook to target location.
> mklink /D c:\...\Outlook D:\Outlook
5. Done.
Sunday, September 16, 2012
General steps to setup an existing Ruby on Rails project from Git repository
1. Git clone the source
2. Update configuration files, such as config/database.yml and/or config/config.yml
3. Create database accordingly.
4. Install project gems: $ bundle install
5. Install dependency packages. e.g. ImageMagick for paperclip gem.
$ brew install imagemagick
6. Prepare database: $ rake db:migrate
7. Prepare test: $ rake db:test:prepare
8. Run test: $ rake test
2. Update configuration files, such as config/database.yml and/or config/config.yml
3. Create database accordingly.
4. Install project gems: $ bundle install
5. Install dependency packages. e.g. ImageMagick for paperclip gem.
$ brew install imagemagick
6. Prepare database: $ rake db:migrate
7. Prepare test: $ rake db:test:prepare
8. Run test: $ rake test
Customize macvim/gvim for Ruby on Rails development
1. Install Janus - https://github.com/carlhuda/janus
2. Get color scheme. e.g. http://www.vim.org/scripts/script.php?script_id=1891
Copy vividchalk.vim to ~/.vim/colors
3. ~/.gvimrc.after
set guifont=Monaco:h13
set stal=2 " turn on tabs by default
set noanti
colorscheme vividchalk
4. ~/.vimrc.before
2. Get color scheme. e.g. http://www.vim.org/scripts/script.php?script_id=1891
Copy vividchalk.vim to ~/.vim/colors
3. ~/.gvimrc.after
set guifont=Monaco:h13
set stal=2 " turn on tabs by default
set noanti
colorscheme vividchalk
4. ~/.vimrc.before
nmap <F3> :vimgrep /<C-R><C-W>/ ./**/*.rb ./**/*.erb
Solve the pg_dump version mismatch error
After updating postgresql, the server runs on the latest version, 9.2.0.
Whilst, pg_dump in /usr/bin remains on version 9.1.4.
To solve this problem. Remove /usr/bin/pg_dump and create symbolic link
to new pg_dump in /usr/local/bin/pg_dump.
i.e. $ sudo ln -s /usr/local/bin/pg_dump /usr/bin/pg_dump
Done.
Whilst, pg_dump in /usr/bin remains on version 9.1.4.
To solve this problem. Remove /usr/bin/pg_dump and create symbolic link
to new pg_dump in /usr/local/bin/pg_dump.
i.e. $ sudo ln -s /usr/local/bin/pg_dump /usr/bin/pg_dump
Done.
Setup or update postgresql on Mac
Remove any previous version:
brew rm postgresql --force
Installation
brew update
brew install postgresql
Initialise a database.
initdb /usr/local/var/postgres
Set to start at login with (in one line below)
mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/postgresql/[x.x.x]/[....].postgres.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/org.postgresql.postgres.plist
OR
Add aliases to .bashrc to start and stop the server:
alias pgs='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start'
alias pgq='pg_ctl -D /usr/local/var/postgres stop -s -m fast'
Postgresql client verification:
$which psql
$ls -al /usr/local/bin/psql
/usr/local/bin/psql -> ../Cellar/postgresql/.../bin/psql
(Edit ~/.bash_profile : PATH=/usr/local/bin:$PATH)
Update postgresql tools versions
Tools like psql or pg_dump may not be update by the installations.
Just remove old version pg_* in /usr/bin, and create symbolic link to new ones in /usr/local/bin.
brew rm postgresql --force
Installation
brew update
brew install postgresql
Initialise a database.
initdb /usr/local/var/postgres
Set to start at login with (in one line below)
mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/postgresql/[x.x.x]/[....].postgres.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/org.postgresql.postgres.plist
OR
Add aliases to .bashrc to start and stop the server:
alias pgs='pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start'
alias pgq='pg_ctl -D /usr/local/var/postgres stop -s -m fast'
Postgresql client verification:
$which psql
$ls -al /usr/local/bin/psql
/usr/local/bin/psql -> ../Cellar/postgresql/.../bin/psql
(Edit ~/.bash_profile : PATH=/usr/local/bin:$PATH)
Update postgresql tools versions
Tools like psql or pg_dump may not be update by the installations.
Just remove old version pg_* in /usr/bin, and create symbolic link to new ones in /usr/local/bin.
Saturday, September 15, 2012
bash config startup sequence
For Login shells (subject to the -noprofile option):
On logging in:
If `/etc/profile' exists, then source it.
If `~/.bash_profile' exists, then source it,
else if `~/.bash_login' exists, then source it,
else if `~/.profile' exists, then source it.
On logging out:
If `~/.bash_logout' exists, source it.
For non-login interactive shells (subject to the -norc and -rcfile options):
On starting up:
If `~/.bashrc' exists, then source it.
For non-interactive shells:
On starting up:
If the environment variable `ENV' is non-null, expand the variable and source the file named by the value. If Bash is not started in Posix mode, it looks for `BASH_ENV' before `ENV'.
So, typically, your `~/.bash_profile' contains the line
`if [ -f `~/.bashrc' ]; then source `~/.bashrc'; fi' after (or before) any login specific initializations.
If Bash is invoked as `sh', it tries to mimic the behavior of `sh' as closely as possible. For a login shell, it attempts to source only `/etc/profile' and `~/.profile', in that order. The `-noprofile' option may still be used to disable this behavior. A shell invoked as `sh' does not attempt to source any other startup files.
When Bash is started in POSIX mode, as with the `-posix' command line option, it follows the Posix 1003.2 standard for startup files. In this mode, the `ENV' variable is expanded and that file sourced; no other startup files are read.
On logging in:
If `/etc/profile' exists, then source it.
If `~/.bash_profile' exists, then source it,
else if `~/.bash_login' exists, then source it,
else if `~/.profile' exists, then source it.
On logging out:
If `~/.bash_logout' exists, source it.
For non-login interactive shells (subject to the -norc and -rcfile options):
On starting up:
If `~/.bashrc' exists, then source it.
For non-interactive shells:
On starting up:
If the environment variable `ENV' is non-null, expand the variable and source the file named by the value. If Bash is not started in Posix mode, it looks for `BASH_ENV' before `ENV'.
So, typically, your `~/.bash_profile' contains the line
`if [ -f `~/.bashrc' ]; then source `~/.bashrc'; fi' after (or before) any login specific initializations.
If Bash is invoked as `sh', it tries to mimic the behavior of `sh' as closely as possible. For a login shell, it attempts to source only `/etc/profile' and `~/.profile', in that order. The `-noprofile' option may still be used to disable this behavior. A shell invoked as `sh' does not attempt to source any other startup files.
When Bash is started in POSIX mode, as with the `-posix' command line option, it follows the Posix 1003.2 standard for startup files. In this mode, the `ENV' variable is expanded and that file sourced; no other startup files are read.
Friday, September 14, 2012
Clean setup ruby ree on Mountain Lion
http://blog.teamtreehouse.com/installing-ruby-rails-and-mysql-on-os-x-lion
http://ryanbigg.com/2011/06/mac-os-x-ruby-rvm-rails-and-you/
http://coderwall.com/p/fywjrw
xcode - app store
(need to install after download completed: open xcode in application, ...)
xocde - go to preference -> download -> command line tools
(try $gcc -v to ensure it works.)
Install the followings using su login:
homebrew - http://mxcl.github.com/homebrew/
gcc (non-LLVM) -
brew tap homebrew/dupes
brew install apple-gcc42
xquartz - apple's X11
http://xquartz.macosforge.org/landing/
git - brew install git
Install the followings using local login:
rvm - $ curl -L https://get.rvm.io | bash -s stable --ruby
CPPFLAGS=-I/opt/X11/include CC=/usr/local/bin/gcc-4.2 rvm install --force ree
Install the followings using su login:
postgresql - brew install postgresql
or
mysql - brew install mysql
http://ryanbigg.com/2011/06/mac-os-x-ruby-rvm-rails-and-you/
http://coderwall.com/p/fywjrw
xcode - app store
(need to install after download completed: open xcode in application, ...)
xocde - go to preference -> download -> command line tools
(try $gcc -v to ensure it works.)
Install the followings using su login:
homebrew - http://mxcl.github.com/homebrew/
gcc (non-LLVM) -
brew tap homebrew/dupes
brew install apple-gcc42
xquartz - apple's X11
http://xquartz.macosforge.org/landing/
git - brew install git
Install the followings using local login:
rvm - $ curl -L https://get.rvm.io | bash -s stable --ruby
CPPFLAGS=-I/opt/X11/include CC=/usr/local/bin/gcc-4.2 rvm install --force ree
Install the followings using su login:
postgresql - brew install postgresql
or
mysql - brew install mysql
Tuesday, September 11, 2012
Ruby - Extends module class methods using 'extend self'
module A
extend self
def say_hello
'A say hello'
end
end
module B
extend A
end
A.say_hello # => "A say hello"
B.say_hello # => "A say hello"
extend self
def say_hello
'A say hello'
end
end
module B
extend A
end
A.say_hello # => "A say hello"
B.say_hello # => "A say hello"
Ruby - use include to append both class and instance methods
module B
def self.included(base)
base.extend ClassMethods
end
def say_hello
'instance hello'
end
module ClassMethods
def say_hello
'class hello'
end
end
end
class A
include B
end
A.say_hello # => "class hello"
A.new.say_hello # => "instance hello"
def self.included(base)
base.extend ClassMethods
end
def say_hello
'instance hello'
end
module ClassMethods
def say_hello
'class hello'
end
end
end
class A
include B
end
A.say_hello # => "class hello"
A.new.say_hello # => "instance hello"
Case study - Hardware for etsy.com
Source: http://codeascraft.etsy.com/2012/08/31/what-hardware-powers-etsy-com/
What Hardware Powers Etsy.com?
Traditionally, discussing hardware configurations when running a large website is something done inside private circles; and normally to discuss how vendor X did something very poorly, and vendor Y’s support sucks.
With the advent of the “cloud”, this has changed slightly. Suddenly people are talking about how big their instances are, and how many of them. And I think this is a great practice to get in to with physical servers in datacenters too. After all, none of this is intended to be some sort of competition; it’s about helping out people in similar situations as us, and broadcasting solutions that others may not know about… pretty much like everything else we post on this blog.
The great folk at 37signals started this trend recently by posting about their hardware configurations after attending Velocity conference… one of the aforementioned places where hardware gossiping will have taken place.
So, in the interest of continuing this trend here’s the classes of machine we use to power over $69.5 million of sales for our sellers in July
Database Class
As you may already know, we have quite a few pairs of MySQL machines to store our data, and as such we’re relying on them heavily for performance and (a certain amount of) reliability.
For any job that requires an all round performant box, with good storage, good processing power, and a good level of redundancy we utilise HP DL380 servers. These clock in at 2U of rack space, 2x 8 core Intel E5630 CPUs (@ 2.53ghz), 96GB of RAM (for that all important MySQL buffer cache) and 16x 15,000 RPM 146GB hard disks. This gives us the right balance of disk space to store user data, and spindles/RAM to retrieve it quickly enough. The machines have 4x 1gbit ethernet ports, but we only use one.
Why not SSDs?
We’re just starting to test our first round of database class machines with SSDs. Traditionally we’ve had other issues to solve first, such as getting the right balance of amount of user data (e.g. the amount of disk space used on a machine) vs the CPU and memory. However, as you’ll see in our other configs, we have plenty of SSDs throughout the infrastructure, so we certainly are going to give them a good testing for databases too.
A picture of our various types of hardware, with the HP to the left/middle and web/utility boxes on the right
Web/Gearman Worker/Memcache/Utility/Job Class
This is a pretty wide catch all, but in general we try and favour as few machine classes as possible, so a lot of our tasks from handling web traffic (Apache/PHP) to any box that performs a task where there are many of them/redundancy is solved at the app level we generally use one type of machine. This way hardware re-use is promoted and machines can change roles quickly and easily. Having said that, there are some slightly different configurations in this category for components that are easy to change, e.g. amount of memory and disks.
We’re pretty much in love with this 2U Supermicro chassis which allows for 4x nodes that share two power supplies and 12 3.5″ disks on the front of the chassis
A general configuration for these would be 2x 8 core Intel E5620 CPUs (@ 2.40ghz), 12GB-96GB of RAM, and either a 600GB 7200pm hard disk or an Intel 160GB SSD.
Note the lack of RAID on these configurations; We’re pretty heavily reliant on Cobbler and Chef, which means rebuilding a system from scratch takes just 10 minutes. In our view, why power two drives when our datacenter staff can replace the drive and rebuild the machine and have it back in production in under 20 minutes? Obviously this only works where it is appropriate; clusters of machines where the data on each individual machine is not important. Web servers, for example, have no important data since logs are sent constantly to our centralised logging host, and the web code is easily deployed back on to the machine.
We have Nagios checks to let us know when the filesystem becomes un-writeable (and SMART checks also), so we know when a machine needs a new disk.
Each machine has 2x 1gbit ethernet ports, in this case we’re only using one.
Hadoop
In the last 12 months we’ve been working on building up our Hadoop cluster, and after evaluating a few hardware configurations ended up with a very similar chassis design to the one used above. However, we’re using a chassis with 24x 2.5″ disk slots on the front, instead of the 12x 3.5″ design used above.
Each node (with 4 in a 2U chassis) has 2x 12 core Intel E5646 CPUs (@ 2.40ghz), 96GB of RAM, and 6x 1Tb 2.5″ 7200rpm disks. That’s 96 cores, 384GB of RAM and 24TB per 2U of rack space.
Our Hadoop jobs are very CPU heavy, and storage and disk throughput is less of an issue hence the small amount of disk space per node. If we had more I/O and storage requirements, we had also considered 2U Supermicro servers with 12x 3.5″ disks per node instead.
As with the above chassis, each node as 2x 1gbit ethernet ports, but we’re only utilising one at the minute.
This graph illustrates the power usage on one set of machines showing the difference between Hadoop jobs running and not
Search/Solr
Just a month ago, this would’ve been grouped into the general utility boxes above, but we’ve got something new and exciting for our search stack. Using the same chassis as in our general example, but this time using the awesome new Sandy Bridge line of Intel CPUs. We’ve got 2x 16 core Intel E5-2690 CPUs in these nodes, clocked at 2.90ghz, which gives us machines that can handle over 4 times the workload of the generic nodes above, whilst using the same density configuration and not that much more power. That’s 128x 2.9ghz CPU cores per 2U (granted, that includes HyperThreading).
This works so well because search is really CPU bound; we’ve been using SSDs to get around I/O issues in these machines for a few years now. The nodes have 96GB of RAM and a single 800GB SSD for the indexes. This follows the same pattern of not bothering with RAID; The SSD is perfectly fast enough on it’s own, and we haveBitTorrent index distribution which means getting the indexes to the machine is super fast.
Less machines = less to manage, less power, and less space.
Backups
Supermicro wins this game too. We’re using the catchily named 6047R-E1R36N. The 36 in this model number is the important part… this is a 4u chassis, with 36x 3.5″ disks. We load up these chassis with 2TB 7200rpm drives, which when coupled with an LSI RAID controller with 1gb of battery backed write back cache gives a blistering 1.2 gigabytes/second sequential write throughput and a total of 60TB of usable disk space across two RAID6 volumes.
36 disk Supermicro chassis. Note the disks crammed into the back of the chassis as well as the front!
Why two RAID6 volumes? Well, it means a little more waste (4 drives for parity instead of 2) but as a result of that you do get a bit more resiliency against losing a number of drives, and rebuild times are halved if you just lose a single drive. Obviously RAID monitoring is pretty important, and we have checks for either SMART (single disk machines) or the various RAID utilities on all our other machines in Nagios.
In this case we’re taking advantage of the 2x 1gbit ethernet connections, bonded together to the switch to give us redundancy and the extra bandwidth we need. In the future we may even run fiber to these machines, to get the full potential out of the disks, but right now we don’t get above a gigabit/second for all our backups.
Special cases
Of course there are always exception to the rules. The only other hardware profile we have is HP DL360 servers (1u, 4x 2.5″ 15,000rpm 146GB SAS disks) which is for roles that don’t need much horsepower, but we deem important enough to have RAID. For example, DNS servers, LDAP servers, and our Hadoop Namenodes are all machines that don’t require much disk space, but need RAID for extra data safety than our regular single disk configurations.
Networking
I didn’t go into too much detail on the networking side of things in this post. Consider this part 1, and watch this space for our networking gurus to take you through our packet shuffling infrastructure at a later date.
Monday, September 10, 2012
Case study - Ruby on Rails hardware spec
Source:http://37signals.com/svn/posts/3202-behind-the-scenes-the-hardware-that-powers-basecamp-campfire-and-highrise
Application Servers
All of our Ruby/Rails application roles run on Dell C Series 5220 servers. We chose C5220 servers because they provide high density, high performance, and low cost compute sleds at a decent cost point. The C5220 sleds replaced invidual Dell R710 servers which consumed a greater amount of power and rack space in addition to offering expandability we were not utilizing.
All of our Ruby/Rails application roles run on Dell C Series 5220 servers. We chose C5220 servers because they provide high density, high performance, and low cost compute sleds at a decent cost point. The C5220 sleds replaced invidual Dell R710 servers which consumed a greater amount of power and rack space in addition to offering expandability we were not utilizing.
We use an 8 sled configuration with E31270 3.40GHz processors, 32/16G of ram, an LSI raid card and 2 non Dell SSDs. (For those of you thinking of ordering these … get the LSI raid card. The built in Intel raid is unreliable.) Each chassis with 8 sleds takes up 4U of rackspace: 3 for the chassis and 1 for cabling.
Job / Utility Servers
We use a combination of C6100 and C6220 servers to power our utility/jobs and API roles. We exclusively use the 4 sled version (of each) which means we get 4 “servers” in 2U. Each sled has 2x X5650 processors, 48-96G of ram, 2-6 ssds, and 4×1G or 1×10G network interfaces. This design allows to have up to 24 disks in a single chassis while consuming the same space as a single R710server (which holds 8 disks max).
We use a combination of C6100 and C6220 servers to power our utility/jobs and API roles. We exclusively use the 4 sled version (of each) which means we get 4 “servers” in 2U. Each sled has 2x X5650 processors, 48-96G of ram, 2-6 ssds, and 4×1G or 1×10G network interfaces. This design allows to have up to 24 disks in a single chassis while consuming the same space as a single R710server (which holds 8 disks max).
Search
For Solr we run R710s filled with SSDs. Each instance varies, but a common configuration is 2x E5530 processors, 48G of ram, 4-8 ssds, and 4×1g network interfaces. For Elastic Search we run a mix of Poweredge 2950 servers and C 5220 sleds with 12-16G of ram and 2×400G ssds in a raid 1.
For Solr we run R710s filled with SSDs. Each instance varies, but a common configuration is 2x E5530 processors, 48G of ram, 4-8 ssds, and 4×1g network interfaces. For Elastic Search we run a mix of Poweredge 2950 servers and C 5220 sleds with 12-16G of ram and 2×400G ssds in a raid 1.
Database and Memcache/Redis Servers
For Database roles we use R710s with 2x X5670 processors, 1.2TB Fusion-IO duo cards and varying amounts of memory. (Varies based on the database size.) We also have a number of older R710s powering Memcache and Redis instances. Each of these has has 2x E5530 processors and 2-4 disks with 4×1G network interfaces.
For Database roles we use R710s with 2x X5670 processors, 1.2TB Fusion-IO duo cards and varying amounts of memory. (Varies based on the database size.) We also have a number of older R710s powering Memcache and Redis instances. Each of these has has 2x E5530 processors and 2-4 disks with 4×1G network interfaces.
Storage
We have around 400TB / 9 nodes of Isilon 36 and 72NL storage. We serve all of the user uploaded content off this storage with backups to S3.
We have around 400TB / 9 nodes of Isilon 36 and 72NL storage. We serve all of the user uploaded content off this storage with backups to S3.
OS Choice
Database servers run RHEL or Centos 6 while application and utility servers run Ubuntu LTS.
Database servers run RHEL or Centos 6 while application and utility servers run Ubuntu LTS.
Sunday, September 9, 2012
How to create a bootable USB stick on Windows
Source: http://www.ubuntu.com/download/help/create-a-usb-stick-on-windows
To run Ubuntu from a USB stick, the first thing you need to do is insert a USB stick with at least 2GB of free space into your PC.
The easiest way to put Ubuntu onto your stick is to use the USB installer provided at pendrivelinux.com. You’ll need to download and install and follow the instructions.
Download Pen Drive Linux's USB Installer
To run Ubuntu from a USB stick, the first thing you need to do is insert a USB stick with at least 2GB of free space into your PC.
The easiest way to put Ubuntu onto your stick is to use the USB installer provided at pendrivelinux.com. You’ll need to download and install and follow the instructions.
Download Pen Drive Linux's USB Installer
Log in with open accounts
Google: https://developers.google.com/accounts/docs/OpenID
Facebook: http://developers.facebook.com/docs/guides/web/
Twitter: https://dev.twitter.com/docs/auth/sign-twitter
OAuth - Open standard for authorization
Ruby Gem - https://github.com/intridea/omniauth
Facebook: http://developers.facebook.com/docs/guides/web/
Twitter: https://dev.twitter.com/docs/auth/sign-twitter
OAuth - Open standard for authorization
Ruby Gem - https://github.com/intridea/omniauth
Friday, September 7, 2012
Rails 3 - Model's nested attributes in form
When a rails form contain a model and its nested attributes, use "accepts_nested_attributes_for" to get parameter from the form.
e.g.
In a car model,
...
has_one :engine_spec
accepts_nested_attributes_for :engine_spec, allow_destroy => true
...
In a car form,
...
<%= form_for(@car, :multipart => true) do |f| %>
<%= f.text_field :model_name %>
...
<%= f.fields_for :engine_spec do |spec| %>
<%= spec.text_field :capacity %>
...
Note: Should declare engine_spec in car controller:
@car.engine_spec = EngineSpec.new
e.g.
In a car model,
...
has_one :engine_spec
accepts_nested_attributes_for :engine_spec, allow_destroy => true
...
In a car form,
...
<%= form_for(@car, :multipart => true) do |f| %>
<%= f.text_field :model_name %>
...
<%= f.fields_for :engine_spec do |spec| %>
<%= spec.text_field :capacity %>
...
Note: Should declare engine_spec in car controller:
@car.engine_spec = EngineSpec.new
Git re-initialize fix after corruption
Today, a project directory was somehow corrupted and cannot add new file nor commit modified files to the local repository.
With error like these:
$ git add .
error: insufficient permission for adding an object to repository database .git/objects
error: clickthecity.rb: failed to insert into database
error: unable to index file clickthecity.rb
fatal: updating files failed
It's found that some directories under .git/objects were owned by root. Maybe some commits were done under the root access.
After a few tries in vein, I do just re-initialize the local git repository.
$ sudo rm -rf .git
$ git init
$ git add .
$ git remote add origin [your_server]:[dir]
$ git commit -a -m "..."
$ git pull origin master
And do some code merging.
$ git push origin master
Done.
With error like these:
$ git add .
error: insufficient permission for adding an object to repository database .git/objects
error: clickthecity.rb: failed to insert into database
error: unable to index file clickthecity.rb
fatal: updating files failed
It's found that some directories under .git/objects were owned by root. Maybe some commits were done under the root access.
After a few tries in vein, I do just re-initialize the local git repository.
$ sudo rm -rf .git
$ git init
$ git add .
$ git remote add origin [your_server]:[dir]
$ git commit -a -m "..."
$ git pull origin master
And do some code merging.
$ git push origin master
Done.
Subscribe to:
Posts (Atom)



