Drop any file to identify it
No upload. No signup. No sending your file halfway across the internet.
We tell you what it is, right here in your browser.
Drop it!
Let go to identify this file.
Couldn't identify this file
Need to convert it? fwip it →
Rake is Make for Ruby. Created by Jim Weirich in 2003 as a port of the Make build system into Ruby's task-runner idiom, it's now the standard way to define repeatable commands in Ruby projects. The Rakefile sits at the project root and contains task definitions — `rake test` to run tests, `rake db:migrate` to migrate a database, `rake build` to package a gem.
The syntax is Ruby with Rake's DSL. `task :name do ... end` defines a task; tasks can declare dependencies on other tasks (`task :build => :test`) so Rake automatically runs prerequisites first. Namespaces group related tasks (`namespace :db do task :migrate ... end` becomes `rake db:migrate`). Rails ships with over a hundred built-in rake tasks for routine project work — list them all with `rake -T`.
Beyond Ruby projects, Rakefiles work as general-purpose task runners but make most sense in Ruby contexts where Bundler is already loading the runtime. Most modern Ruby projects use both Rake (for tasks) and Bundler (for dependencies). When you see a project with both a Rakefile and a Gemfile, you're looking at standard-shape Ruby tooling.