ã¯ã˜ã‚ã«
 PHPã§Webアプリケーションを作æˆã™ã‚‹éš›ã€ãƒ•ãƒ¬ãƒ¼ãƒ ワークLaravelを利用ã™ã‚‹ã“ã¨ãŒãƒ‡ãƒ•ã‚¡ã‚¯ãƒˆã‚¹ã‚¿ãƒ³ãƒ€ãƒ¼ãƒ‰ã«ãªã£ã¦ã„ã¾ã™ã€‚ãã®Laravelã«ã¯ã€ç”»é¢ã‚’作æˆã™ã‚‹éš›ã«ã€ã‚ªãƒ¼ã‚½ãƒ‰ãƒƒã‚¯ã‚¹ãªã‚µãƒ¼ãƒã‚µã‚¤ãƒ‰ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã«åˆ©ç”¨ã™ã‚‹ãƒ†ãƒ³ãƒ—レートエンジンã¨ã—ã¦ã€BladeãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚
 一方ã§ã€ãƒ•ãƒãƒ³ãƒˆã‚¨ãƒ³ãƒ‰çš„ãªç”»é¢ã‚’作æˆã™ã‚‹æ–¹æ³•ã¨ã—ã¦ã€ä»¥ä¸‹ã®2ã¤ã®æ–¹æ³•ã‚‚サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚ã“れらを利用ã™ã‚‹å ´åˆã€ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆãƒ™ãƒ¼ã‚¹ã®ã‚¤ãƒ™ãƒ³ãƒˆé§†å‹•ã®ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã¨ãªã‚Šã¾ã™ã€‚
- Livewireを利用ã—ãŸPHPコーディングã«ã‚ˆã‚‹ç”»é¢ä½œæˆ
- Inertiaã«ã‚ˆã‚‹Vue/Reactを利用ã—ãŸç”»é¢ä½œæˆ
 本連載ã¯å…¨4回を予定ã—ã¦ãŠã‚Šã€ç¬¬1回ã¨ç¬¬2回ã§Livewireã‚’ã€ç¬¬3回ã¨ç¬¬4回ã§Inertiaã«ã‚ˆã‚‹Vueを利用ã—ãŸæ–¹æ³•ã‚’紹介ã—ã¾ã™ã€‚ã“ã®4回ã®é€£è¼‰ã§ã€Laravelã«ã‚ˆã‚‹ãƒ•ãƒãƒ³ãƒˆã‚¨ãƒ³ãƒ‰çš„ãªç”»é¢ä½œæˆã®åŸºæœ¬çš„ãªæ–¹æ³•ã‚’ç†è§£ã—ã¦ã„ãŸã ã‘ã‚‹ã¨æ€ã„ã¾ã™ã€‚
 ãªãŠã€æœ¬é€£è¼‰ã¯ã€ã‚ãã¾ã§Livewireã¨Inertia+Vueã®ä½¿ã„方を紹介ã™ã‚‹ãŸã‚ã®ã‚‚ã®ãªã®ã§ã€ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ç™»éŒ²ã‚’ã¯ã˜ã‚ã¨ã™ã‚‹Laravel自体ã®ä½¿ã„方やã€Vueã®ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°æ–¹æ³•ã®ç´¹ä»‹ã¯å‰²æ„›ã›ã–ã‚‹ã‚’å¾—ãªã„ã“ã¨ã‚’ã€ã‚らã‹ã˜ã‚ã”了承ãã ã•ã„。Laravelãã®ã‚‚ã®ã®ä½¿ã„æ–¹ã¯ã“ã¡ã‚‰ã®é€£è¼‰ã‚’ã€Vueã«é–¢ã—ã¦ã¯ã“ã¡ã‚‰ã®é€£è¼‰ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
 ※本連載ã®ã‚µãƒ³ãƒ—ルデータã¯ã€GitHubã‹ã‚‰å‚ç…§ã§ãã¾ã™ã€‚
æ–°ã—ã„Laravelã®ã‚¹ã‚¿ãƒ¼ã‚¿ã‚ット
 早速ã€Livewireã®è§£èª¬ã«å…¥ã‚ŠãŸã„ã¨ã“ã‚ã§ã™ãŒã€Laravel本体ã®æœ€æ–°ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã‚ã‚‹Laravel 12ãŒã€2025å¹´2月24æ—¥ã«ãƒªãƒªãƒ¼ã‚¹ã•ã‚Œã¾ã—ãŸã€‚ã“ã®æœ€æ–°ãƒªãƒªãƒ¼ã‚¹ã§ã®ä¸€ç•ªã®æ³¨ç›®ç‚¹ã¯ã€æ–°ã—ã„スタータã‚ットã§ã™ã€‚
スタータã‚ットã®ç”¨æ„
 Laravelを利用ã™ã‚‹å ´åˆã€Laravelプãƒã‚¸ã‚§ã‚¯ãƒˆã‚’作æˆã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ãã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’作æˆã™ã‚‹ã‚¹ã‚¿ãƒ¼ã‚¿ã‚ットãŒåˆ·æ–°ã•ã‚Œã€ã‚¦ã‚£ã‚¶ãƒ¼ãƒ‰ã«ç”ãˆãªãŒã‚‰ã€æœ€é©ãªãƒ„ールをé¸ã¹ã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚
 ãã®éš›ã«ã€æœ¬é€£è¼‰ãŒãƒ†ãƒ¼ãƒžã¨ã™ã‚‹ç”»é¢ä½œæˆã«ãŠã„ã¦ã€Bladeã€Inertia+Reactã€Inertia+Vueã€Livewireã‚’é¸æŠžã§ãるよã†ã«ãªã£ã¦ãŠã‚Šã€ãã‚Œãžã‚Œã«åˆã‚ã›ãŸé©åˆ‡ãªæ§‹æˆã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãŒä½œæˆã§ãるよã†ã«ãªã£ã¦ã„ã¾ã™ã€‚
 ã“ã†ã—ãŸã‚¹ã‚¿ãƒ¼ã‚¿ã‚ットを利用ã™ã‚‹ãŸã‚ã«ã¯ã€Composerを利用ã—ãŸä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã€Laravelインストーラをインストールã—ã¦ãŠãå¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚
composer global require laravel/installer
 インストールãŒå®Œäº†ã™ã‚‹ã¨ã€laravelコマンドãŒåˆ©ç”¨ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚ãŸã ã—ã€ãã®ãŸã‚ã«ã¯Composerã®å…¬å¼ãƒ‰ã‚ュメントã«ã‚るよã†ã«ã€ã‚°ãƒãƒ¼ãƒãƒ«ãƒ™ãƒ³ãƒ€ãƒ¼ãƒã‚¤ãƒŠãƒªãƒ•ã‚©ãƒ«ãƒ€ã«ãƒ‘スを通ã—ã¦ãŠãå¿…è¦ãŒã‚ã‚‹ã®ã§æ³¨æ„ã—ã¦ãã ã•ã„。
スタータã‚ットを利用ã—ãŸLivewireプãƒã‚¸ã‚§ã‚¯ãƒˆã®ä½œæˆ
 LaravelインストーラãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚ŒãŸçŠ¶æ…‹ãªã‚‰ã°ã€ä»»æ„ã®ãƒ•ã‚©ãƒ«ãƒ€ä¸Šã§æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’実行ã™ã‚‹ã¨ã€ãã®ãƒ•ã‚©ãƒ«ãƒ€å†…ã«æŒ‡å®šã•ã‚ŒãŸãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆå(ï¼ã‚¢ãƒ—リå)ã§Laravelプãƒã‚¸ã‚§ã‚¯ãƒˆã‚’作æˆã§ãã¾ã™ã€‚
laravel new プãƒã‚¸ã‚§ã‚¯ãƒˆå
 ãã®éš›ã€ã‚¹ã‚¿ãƒ¼ã‚¿ã‚ットã®ã‚¦ã‚£ã‚¶ãƒ¼ãƒ‰ã«ã‚ˆã£ã¦ã„ãã¤ã‹è³ªå•ã•ã‚Œã¾ã™ã€‚ãã®è³ªå•1ãŒã€å›³1ã®å†…容ã§ã™ã€‚ãªãŠã€æœ¬ç¨¿ã§ä½œæˆã™ã‚‹ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆåã¯ã€first-livewireã¨ã—ã¦ã„ã¾ã™ã€‚

 「Which starter kit would you like to install?ã€ã¨ã„ã†è³ªå•ã§ã€é¸æŠžè‚¢ã®Noneã€Reactã€Vueã€Livewireã‹ã‚‰é¸ã¶å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ã“ã‚ŒãŒç”»é¢ã‚’ã©ã®ã‚ˆã†ã«ä½œæˆã™ã‚‹ã‹ã®é¸æŠžè‚¢ã§ã™ã€‚
 Noneã‚’é¸æŠžã™ã‚‹ã¨ã€ã“ã‚Œã¾ã§é€šã‚Šã®Bladeを利用ã—ãŸã‚µãƒ¼ãƒã‚µã‚¤ãƒ‰ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¨ãªã‚Šã¾ã™ã€‚一方ã€ReactãŠã‚ˆã³Vueã‚’é¸æŠžã™ã‚‹ã¨Inertiaを利用ã—ãŸã‚‚ã®ã¨ãªã‚Šã€ã“ã®ã†ã¡ã®Vueを利用ã—ãŸã‚‚ã®ã‚’ã€é€£è¼‰ç¬¬3回ã¨ç¬¬4回ã§ç´¹ä»‹ã—ã¾ã™ã€‚
 今回ã¯æœ€å¾Œã®é¸æŠžè‚¢ã§ã‚ã‚‹ï¼»Livewire]をé¸æŠžã—ã¾ã™ã€‚ãã®å¾Œã¯ã€è¡¨1ã®è³ªå•ãŒç¶šãã¾ã™ã€‚
ç•ªå· | è³ªå• | é¸æŠžè‚¢ | 内容 | 通常ã®é¸æŠžè‚¢ |
---|---|---|---|---|
2 | Which authentication provider do you prefer? | Laravels built-in authentication / WorkOS | ユーザーèªè¨¼æ©Ÿèƒ½ã¨ã—ã¦ä½•ã‚’利用ã™ã‚‹ã‹ | Laravels built-in authentication |
3 | Would you like to use Laravel Volt? | Yes / No | Livewireã®ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆè¨˜è¿°ã‚’関数的ã«è¨˜è¿°ã§ãるライブラリã§ã‚ã‚‹Voltを利用ã™ã‚‹ã‹ã©ã†ã‹ | ã©ã¡ã‚‰ã§ã‚‚よã„ãŒæœ¬ç¨¿ã§ã¯åˆ©ç”¨ã—ãªã„ã®ã§Noã‚’é¸æŠž |
4 | Which testing framework do you prefer? | Pest / PHPUnit | テストツールã¨ã—ã¦ä½•ã‚’利用ã™ã‚‹ã‹ | ã©ã¡ã‚‰ã§ã‚‚よã„(本稿ã§ã¯åˆ©ç”¨ã—ãªã„) |
 質å•4ã¾ã§é¸æŠžã™ã‚‹ã¨ã€è‡ªå‹•çš„ã«ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãŒä½œæˆã•ã‚Œã€å¿…è¦ãªãƒ©ã‚¤ãƒ–ラリ類ã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ãŒå§‹ã¾ã‚Šã¾ã™ã€‚一通りã€PHPã«é–¢é€£ã™ã‚‹ãƒ©ã‚¤ãƒ–ラリã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã€ãŠã‚ˆã³ãã®è¨å®šãŒçµ‚了ã™ã‚‹ã¨ã€å›³2ã®è³ªå•ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚ã“ã®è³ªå•ã¯npm関連ã€ã™ãªã‚ã¡ã€JavaScript関連ã®ãƒ©ã‚¤ãƒ–ラリ類ã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã¨ãã®è¨å®šã‚’è¡Œã†ã‹ã©ã†ã‹ã®è³ªå•ã§ã™ã€‚

 ã“ã®è³ªå•ã«ã¯ï¼»Yes]をé¸æŠžã—ã¦ãã ã•ã„。最終的ã«ãƒ—ãƒãƒ³ãƒ—トãŒè¿”ã£ã¦ãã‚Œã°ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã®ä½œæˆã¯çµ‚了ã—ã¦ã„ã¾ã™ã€‚ãã®å¾Œã€æ¬¡ã®ã‚³ãƒžãƒ³ãƒ‰ã§Laravelプãƒã‚¸ã‚§ã‚¯ãƒˆã‚’èµ·å‹•ã—ã¦ãã ã•ã„。図3ã®ç”»é¢ãŒè¡¨ç¤ºã•ã‚Œã¦ã„ã‚Œã°ã€æˆåŠŸã§ã™ã€‚
php artisan serve

ï¼»NOTEï¼½Laravelプãƒã‚¸ã‚§ã‚¯ãƒˆèµ·å‹•ã‚³ãƒžãƒ³ãƒ‰
 Laravelプãƒã‚¸ã‚§ã‚¯ãƒˆã®èµ·å‹•ã‚³ãƒžãƒ³ãƒ‰ã¯ã€php artisan serveã§ã‚ã‚‹ã¨ç´¹ä»‹ã—ã¾ã—ãŸãŒã€ã“ã‚Œã¯æ—§æ¥ã‹ã‚‰å˜åœ¨ã™ã‚‹èµ·å‹•æ–¹æ³•ã§ã™ã€‚一方ã€Laravelã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³11.28ã§ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã‚‚èµ·å‹•ã§ãるよã†ã«æ©Ÿèƒ½ãŒè¿½åŠ ã•ã‚Œã¦ã„ã¾ã™ã€‚ã“ã‚Œã«ä¼´ã„ã€ãƒãƒ¼ã‚¸ãƒ§ãƒ³12ã®å…¬å¼ãƒ‰ã‚ュメントã§ã¯ã€ä»¥ä¸‹ã®ã‚³ãƒžãƒ³ãƒ‰ã§ã®èµ·å‹•ãŒè¨˜è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚
composer run dev