Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern. Understanding the MVC pattern is key to understanding Rails. MVC divides your application into three layers: Model, View, and Controller, each with a specific responsibility. Active Record, Active Model, Action Pack, and Action View can each be used independently outside Rails. In addition to that, Rails also comes with: - Action Mailer, a library to generate and send emails - Action Mailbox, a library to receive emails within a Rails application - Active Job, a framework for declaring jobs and making them run on a variety of queuing backends - Action Cable, a framework to integrate WebSockets with a Rails application - Active Storage, a library to attach cloud and local files to Rails applications - Action Text, a library to handle rich text content - Active Support, a collection of utility classes and standard library extensions that are useful for Rails, and may also be used independently outside Rails