Learn Ruby on Rails and ship your first app
A working Ruby on Rails application deployed to a real hosting platform, with fundamental understanding of MVC, Active Record migrations, routing, views, authentication, and tests — built and shipped in about 6–8 weeks of part-time work.
One-time payment — yours to keep forever
Included with every copy
- Your own copy — keep it forever
- Gets better over time — free updates included
- Run it on web and mobile
- Invite a partner to go through it with you — you share the same progress
- 5 knowledge checks to test what you've learned
- The playbook's community — ask questions, get additions, and see how other buyers improve it, right on the step
Who it's for
Programmers who know variables, functions, and conditionals but have never shipped a web app. You're comfortable in a terminal and want to build real features, not follow another todo-list tutorial.
Who it's NOT for
Experienced Rails developers or anyone who needs an API-only backend or a React frontend. If you've already deployed a Rails app, you're past this.
About this playbook
A practical path from zero to a deployed Rails app for people who know basic programming but have never built a web application. You set up the environment, build a real project step by step, add authentication with Rails's built-in tools, write tests that actually catch bugs, and deploy without a DevOps degree. No JavaScript framework, no container magic — just Rails as it ships.
What you'll do, step by step
5 phases · 16 steps
Free preview — these steps are open to read in full before you buy.
Most beginners burn their first session on environment chaos — wrong Ruby version, missing build tools, a broken gem install. This phase gets you past that in a single focused session, with a Rails app running in your browser before you close the laptop.
- 1Install Mise, the Ruby version managerFree preview10 min
Run the Mise installer:
macOS:
brew install mise(orcurl https://mise.run | sh) Ubuntu/WSL:curl https://mise.run | shThen add
eval "$(mise activate bash)"to your~/.bashrc(or~/.zshrcif you use Zsh) and restart your terminal. Runmise --versionto confirm it works.That's it. Five minutes of work and you have the tool that will manage every Ruby version you'll ever need.
You're done when
mise --versionprints a version number with no errors.Tip
If you're on macOS and the
curlinstall fails, runxcode-select --installfirst to install the Command Line Tools — mise needs them to compile Ruby later.Watch out
Don't skip the shell configuration step. Without it,
misewon't activate automatically and your next terminal session won't find it. - 2Install Rails and generate your first appFree preview30 min
With Ruby ready, install Rails:
gem install railsThis pulls the Rails gem and every dependency. Then generate your project:
rails new myappThis creates a full Rails 8 application with SQLite3, Propshaft for assets, and Importmap for JavaScript — no Node.js required with the default setup.
Open the generated
myapp/in your editor and look around. The file structure is confusing at first; that's normal.You're done when
A
myapp/directory with Rails code inside it.rails --versionin that directory printsRails 8.1.x.Tip
If you want to follow the official Getting Started guide alongside this playbook, create your project with
rails new storeinstead — the guide uses that name. The concepts are identical.Watch out
If
gem install railsfails with a permissions error, you're using the system Ruby. Go back and install Mise first —sudo gem installis a sign you skipped it. - 3Create the database and see it runningFree preview20 min
Still in
myapp/, run:bin/rails db:createSQLite3 needs no configuration — it just works. Then start the server:
bin/rails serverOpen
http://localhost:3000in your browser. You should see the Rails welcome page.Close the terminal. Then open a new one and start the server again — prove it's not magic. If you can do it twice from memory, it's yours.
You're done when
The Rails welcome page visible at localhost:3000 in two independent terminal sessions.
Tip
Always use
bin/rails(notrails) — it guarantees you're using the local project's version, not whatever is installed globally.Watch out
Don't close the terminal without pressing
Ctrl+Cfirst — the server keeps running on port 3000 and the nextrails serverwill fail with 'address already in use'.
Details
What you need first
Basic programming literacy — you understand what a variable, a function, and an if-statement do. A computer with macOS, Ubuntu, or Windows (with WSL2). Ability to follow terminal instructions.
Tags
What people who used it say
Only buyers who got through at least half the steps can leave a review.
No reviews yet. The first ones appear once buyers get through at least half the steps.
Common questions
About the creator
8 years of Rails development, led a PHP-to-Rails migration, mentor at developer bootcamps
Creating since 2026
Ruby on Rails developer who's shipped 7+ production apps and taught Rails to junior developers for years. I write the playbooks I wish I'd had when I was learning — no fluff, just the path that actually works.