Ruby on Rails, por vezes conhecido como "RoR" ou apenas "Rails", é um framework de código aberto para desenvolvimento Web em Ruby, uma linguagem de programação orientada a objectos (OOP) semelhante a Perl e Python.
A principal diferença entre Ruby on Rails e outros frameworks para desenvolvimento reside na velocidade e facilidade de utilização que os programadores que trabalham dentro do ambiente apreciam. Alterações feitas em aplicações são imediatamente aplicadas, evitando os passos morosos normalmente associados com o ciclo de desenvolvimento web. De acordo com David Geary, um especialista em Java, o framework baseado em Ruby é cinco a 10 vezes mais rápido do que frameworks comparáveis baseados em Java. Em um post de blog, Geary previu que Rails seria amplamente adotado em um futuro próximo.
Rails é composto de vários componentes, além do próprio Ruby, incluindo:
- Active record, an object-relational mapping layer
- Action pack, a manager of controller and view functions
- Action mailer, a handler of email
- Action web services
- Prototype, um implementador de drag and drop e funcionalidade Ajax
Rails pode rodar na maioria dos servidores Web que suportam CGI. O framework também suporta MySQL, PostgreSQL, SQLite, SQL Server, DB2 e Oracle. Rails também é um framework MVC (model, view, controller) onde todas as camadas são fornecidas por Rails, ao contrário de confiar em outros frameworks adicionais para alcançar o suporte total a MVC. Inventado por David Heinemeier Hanss, Ruby On Rails foi desenvolvido como um projeto open-source, com distribuições disponíveis através do rubyonrails.org.