Rake est un logiciel libre. C'est un « moteur de production », semblable à SCons et make. Il est écrit en Ruby et les Rakefiles (équivalents des makefiles) sont écrits en Ruby. Il a été créé par Jim Weirich.
Rake utilise le concept de block de fonction anonymes de Ruby pour définir les tâches. Il y a une bibliothèque de tâches courantes, par exemple, pour nettoyer les fichier compilés (clean).
Rake est largement utilisé dans Ruby on rails. Il fait maintenant partie de la bibliothèque standard de Ruby 1.9.
Voici un exemple simple de script Rake permettant de construire un programme HelloWorld en C
file 'hello.o' => ['hello.c'] do sh 'cc -c -o hello.o hello.c' end file 'hello' => ['hello.o'] do sh 'cc -o hello hello.o' end