Rails7, Hotwire, ViewComponent, TailwindCSS でのサンプルプロジェクト.
Hotwire + ViewComponent + TailwindCSS の組み合わせにより、/componentsでコンポーネント指向な実装を目指す.
- Ruby 3.2.2
- Rails 7.0.4
- Tailwind CSS
Docker Componse で node_modules ボリュームをバインドするために必要.
./
├─ app
├─ ...
├─ node_modules // このフォルダを作成
└─ ....envに記述したクレデンシャルは、docker-compose.yml経由でプロジェクト内に環境変数として登録される.(※本プロジェクトでは未使用)
./
├─ app
├─ ...
├─ .env // このファイルを作成
└─ ...docker compose builddocker compose run web rails db:create && rails db:migratedocker compose run web rails db:seeddocker compose up| id | pass |
|---|---|
| current_user@example.com | example |
| other_user@example.com | example |
ブラウザから各画面にアクセスして表示されることを確認.
| 画面名 | URL |
|---|---|
| タスク一覧画面 | http://localhost:3000/tasks |
| ログイン画面 | http://localhost:3000/sign_in |
- view_component と stimulus コントローラをジェネレート
rails generate component Hoge::Fuga --stimulus --preview
- stimulus コントローラを index.js に登録(rake コマンドで拡張したもの)
rails view_component:stimulus_manifest:update
/rails/view_componentsからコンポーネント単位でのプレビューを確認できる