Ruby on Rails is a full-stack web application framework written in Ruby and released under the MIT licence. Created by David Heinemeier Hansson and extracted from the Basecamp project, it has been developed continuously for more than two decades by a core team and more than six thousand contributors, and its current stable release is 8.1.4.1, published on 4 November 2026. Rails implements the model-view-controller pattern: Active Record holds the domain model, Action Pack routes and dispatches requests, and Action View renders the templates. Its defining idea is convention over configuration — table names, file paths and routes follow defaults, so a new application starts from a generator that already works instead of from a folder of empty configuration files.
rails new, rails generate model and rails generate scaffold produce a working model, controller and set of views in seconds.bin/rails console for a live application shell, bin/rails db:migrate for schema changes, and a Minitest suite driven by bin/rails test.Rails is built to keep a web product small in the head. A single application holds the routes, the database schema, the HTML templates, the background jobs and the mailers, and the conventions mean two developers who have never met can read each other’s code without a style guide. That is why Rails has carried companies from a first prototype to millions of users and billions in market value — the same framework that scaffolds a weekend idea also runs large commerce and subscription platforms. The RubyGems ecosystem supplies the missing pieces without a build step: adding a gem is a line in the Gemfile and one bundle install. Security defaults matter as much as speed — CSRF tokens, escaped output, SQL injection protection through parameterised queries, signed cookies and encrypted credentials are on from the first commit, not bolted on later. Documentation is unusually complete, with the official guides, a maintained API reference and a large body of book and video material behind it.
rails new myapp --api.Install Ruby first — the 8.x line needs Ruby 3.2 or newer — then run gem install rails. Create an application with rails new myapp, change into it and start the server with bin/rails server; opening http://localhost:3000 shows the Rails bootscreen with the exact Rails and Ruby versions in use. A new application uses SQLite by default, so no database server has to be installed before the first page renders. The official guides at guides.rubyonrails.org walk through the first application, Active Record, routing and testing, and api.rubyonrails.org documents every class. Keep an application’s configuration in config/, secrets in encrypted credentials rather than in source control, and run bin/rails test before every deploy.