La première version de Ruby on Rails date de juillet 2004. Le framework a été extrait de Basecamp, un outil de gestion de projets développé par David Heinemeier Hansson.
La première version stable (1.0) est sortie le 14 décembre 2005.
A partir de cette date Ruby on Rails a marqué le monde du développement web. On a vu pousser un ensemble de Framework Web Rails-like (Notamment CakePHP, Symfony et CodeIgniter rien que pour le langage PHP)
Une preview release de la version 2.0 a été annoncée le 30 septembre 2007. Rails 2.0 apporte principalement :
- les resources qui fournissent une architecture REST ;
- une différenciation plus claire entre les formats et les convertisseurs (un fichier .rhtml devient un fichier .html.erb, c'est-à-dire un fichier interprété par eruby et dont le résultat est de l'HTML) ;
- la possibilité d'utiliser des modèles comme URL (par exemple redirect_to(person)) ;
- la gestion d'authentification HTTP basique ;
- une protection contre les attaques CSRF ;
- l'interception plus simple d'exceptions génériques ;
- le cache du résultat de certaines requêtes SQL ;
- une simplification de l'écriture de migration ;
- le déplacement dans des plugins de tous les act_as_* et des modules de base de données propriétaires ;
- le début de l'abandon de SOAP au profit de REST ;
- un nouveau système pour le déboguer qui remplace les breakpoints ;
- et beaucoup d'autres petites modifications.
La dernière version , RoR 2.3.8 est sortie le 25 mai 2010. Rails 2.3 apporte l'usage du middleware Rack : qui permet de gérer des requêtes de niveau serveur, et intègre un reverse proxy. Une autre modification importante est la gestion des formulaires enfants d'un objet parent (nested form)
Rails-3 est en fait la rencontre entre Rails et Merb. Suite à une réécriture complète, agnostique (l'API générale est déconnectée d'une bibliothèque particulière). Une sortie béta date du 5 février 2010.