Ruby の文法から、Rails の MVC・Active Record・フォームと認証・RSpec でのテスト・Hotwire・Docker と Kamal でのデプロイまで。全50レッスンで「ログインできる会員制のブログを作って公開できる」ところまで進みます。コード・コマンドの出力・テストの結果は、すべて Ruby 3.4.10・Rails 8.1.3.1 で実際に動かしたものです。
全50レッスンを7つの章に分けています。第1章から順に進めるのがおすすめですが、 気になるところだけ拾い読みしてもかまいません。 ※ Ruby と Rails はブラウザ内で実行できないため、第2回で入れる Ruby 3.4 と、第9回で作る Rails 8.1 のアプリで試してください。
Rails に入る前に、Ruby そのものを書けるようにします。変数とメソッド・配列とハッシュ・ブロック・クラスとモジュール・例外まで、実際に ruby コマンドで動かしながら覚えます。
rails new でアプリを作り、ルーティング・コントローラ・ビューの 3 つがどうつながっているかを追います。この章を抜けると、URL を足して自分の画面を出せるようになります。
マイグレーションでテーブルを作り、モデル経由で読み書きします。バリデーション・関連・スコープまで進み、最後は N+1 をログで見つけて潰せるところまで行きます。
form_with で入力を受け取り、Strong Parameters で受け付ける項目を絞ります。has_secure_password で認証を手で書いてから Devise に置き換え、最後は「自分の記事しか編集できない」ところまで作ります。
壊れたらすぐ気付けるように、Minitest と RSpec の両方を動かします。FactoryBot でテストデータを作り、リクエストスペックで画面ごと確かめ、RuboCop と Brakeman で書き方と穴を機械に見てもらいます。
Hotwire で JavaScript をほとんど書かずに画面を部分更新し、Active Job で重い処理を後ろに回します。ファイルアップロードとメール、日本語化まで、業務で必ず出てくるものをそろえます。
credentials と環境変数・アセットのプリコンパイル・Docker と Kamal で、作ったアプリを公開できる形にします。最後に Laravel との違いを並べて、次にどこへ進むかの地図を渡します。
全50レッスンを終えたら、次は索引と実行計画をくわしく学ぶ PostgreSQL 入門コース や、同じフルスタックフレームワークを別の言語で見る PHP & Laravel 入門コース、公開したあとの運用を扱う サービス公開と運用入門コース へ。メンバーシップで全コースが解放されます。