フロントエンドの世界 2024: はじめに


## はじめに

はじめまして、WEB フロントエンドエンジニアの nuintee です。

この度かねてより関心があった 4 つのフロントエンドフレームワークに入門する覚悟が出来たので、
それらを用いてアプリケーションを開発しつつ理解を深める過程をアドベントカレンダーにしてみました。

少しでも興味のある方は、ぜひご覧ください。

## フロントエンドの世界 2024 について

「[フロントエンドの世界 2024](https://qiita.com/advent-calendar/2024/frontend-assort-2024)」は普段 [`Next.js`](https://nextjs.org/) を書いている筆者が、同じフロントエンドライブラリである [`Svelte(Kit)`](https://svelte.jp/docs/introduction), [`Remix`](https://remix.run/docs/en/main) ,[`SolidJS`](https://docs.solidjs.com/), [`Qwik(City)`](https://qwik.dev/)の 4 つにアソート形式で触れ、理解を深めていく様子を収めたアドベントカレンダーです。

![frontend-assort-2024-banner.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3294810/7666d209-1aef-9ce5-c298-d8e60847e830.png)

## もくじ

1. [フロントエンドの世界 2024: はじめに](https://qiita.com/nuinteedev/private/04feb7f81f7e2d8174c7)
2. [Svelte(Kit)の世界: Svelte とは？ #1](https://qiita.com/nuinteedev/private/876520b742d59d7bfba0)
3. [Svelte(Kit)の世界: プロジェクトのセットアップ #2](https://qiita.com/nuinteedev/private/c240b8f49f326ceea7e1)
4. [Svelte(Kit)の世界: UI 構築とトランジション #3](https://qiita.com/nuinteedev/private/151fc32522dc306df5d6)
5. [Svelte(Kit)の世界: データ取得と状態管理 #4](https://qiita.com/nuinteedev/private/82526d297b8fc113fed6)
6. [Svelte(Kit)の世界: ビルドとデプロイ #5](https://qiita.com/nuinteedev/private/5910cea8faa973a0a8dd)
7. [Svelte(Kit)の世界: Runes (おまけ) #6](https://qiita.com/nuinteedev/private/2511a43df8bd071f6854)
8. [Remix の世界: Remix とは？ #1](https://qiita.com/nuinteedev/private/cf4f63e6473c1c81a2e0)
9. [Remix の世界: プロジェクトのセットアップ #2](https://qiita.com/nuinteedev/private/f44b4a1ad5dcdf1c85af)
10. [Remix の世界: UI 構築とトランジション #3](https://qiita.com/nuinteedev/private/280b9ba9fe822d775d26)
11. [Remix の世界: データ取得と状態管理 #4](https://qiita.com/nuinteedev/items/3ec3b7e6ff6dab7bd884)
12. [Remix の世界: ビルドとデプロイ #5](https://qiita.com/nuinteedev/private/3489c2a60e162d56b8a9)
13. [SolidJS の世界: SolidJS とは？ #1](https://qiita.com/nuinteedev/private/ba0b6c49d448fdd3c0ea)
14. [SolidJS の世界: プロジェクトのセットアップ #2](https://qiita.com/nuinteedev/private/def6f2c7e6164b35b2de)
15. [SolidJS の世界: UI 構築とトランジション #3](https://qiita.com/nuinteedev/private/38909bb77ee6bb719854)
16. [SolidJS の世界: データ取得と状態管理 #4](https://qiita.com/nuinteedev/private/afda5d21108228b0bd26)
17. [Solid の世界: ビルドとデプロイ #5](https://qiita.com/nuinteedev/private/727a7ab11dbdf4636acf)
18. [Qwik(City)の世界: Qwik とは？ #1](https://qiita.com/nuinteedev/private/b9ae999aa1ea425f4ddc)
19. [Qwik(City)の世界: プロジェクトのセットアップ #2](https://qiita.com/nuinteedev/private/35ae7572f49062832baf)
20. [Qwik(City)の世界: UI 構築とトランジション #3](https://qiita.com/nuinteedev/items/fcf8b378addfdfd1ac9c)
21. [Qwik(City)の世界: データ取得と状態管理 #4](https://qiita.com/nuinteedev/items/eff50df91f90a5e3c0cf)
22. [Qwik(City)の世界: ビルドとデプロイ #5](https://qiita.com/nuinteedev/private/b9a304443e6b714ae5dd)
23. [フロントエンドの世界 2024: 4 つのフレームワークをモノレポ管理](https://qiita.com/nuinteedev/private/16e32b0518bf2409a2b7)
24. [フロントエンドの世界 2024: Qiita CLI を利用した執筆環境 (おまけ)](https://qiita.com/nuinteedev/private/ad236fbb33ee16bc1165)
25. [フロントエンドの世界 2024: フロントエンドフレームワークの比較 (おわり) Qiita](https://qiita.com/nuinteedev/private/82dff28712dd160ed587)

## モチベーション

本シリーズを執筆する事へのモチベーションとしては、巷で流行っているフロントエンドフレームワークに入門したかった事が大前提で、それを 1 日 1 記事 「**デ ○ ゴスティーニ**」や「[1 日 1 ページ、読むだけで身につく世界の教養 365](https://bunkyosha.com/books/9784866510552)」のような形式で投稿したら面白そうだなと思ったのが大きいです。(N 番煎じ)

また、それらと同じくらいモチベーションを占めているのが Qiita アドベントカレンダー 2024 の「完走賞」です。

なんと 25 記事を投稿した参加者全員に Qiitan ぬいぐるみ、Qiita T シャツやその他のグッズがもらえるのです！

これは良い機会だなと思い、ようやく重い腰を上げて記事を書く事を覚悟しました。

https://qiita.com/advent-calendar/2024/present-calendar

![スクリーンショット 2024-11-07 22.55.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3294810/d6f7ff23-b770-5f21-1a89-bae222cf4519.png)

## ゴール

各フレームワークを用いて基本的なアプリ開発が行えるようになるのは前提で、
それぞれの特性とトレードオフを理解し技術選定・設計フェーズで最低限の知見を活かせるようになる事が今回のゴールです。

## 制作物

進め方としては技術に触れつつ何かを作ってみるのが一番良いかなと思ったので、簡単なアプリケーションを開発することにしました。

今回開発したものは [PokeAPI](https://pokeapi.co/) を用いたポケモン当てクイズです。
このアプリに決めた背景としてはポケポケが流行っていた事と、各フレームワークの基本的な記述方法・構文をはじめとして、条件付きレンダリング、状態管理、非同期通信等の基礎分野が体系的に使えるかなと思ったためです。

**今回開発したもの**

- [このポケモンは誰? | Svelte](https://frontend-assort-2024.pages.dev/)
- [このポケモンは誰？ | Remix](https://frontend-assort-2024-remix.pages.dev/)
- [このポケモンは誰？ | SolidJS](https://frontend-assort-2024-solidjs.pages.dev/)
- [このポケモンは誰？ | Qwik](https://frontend-assort-2024-qwik.pages.dev/)

## 最後に

本シリーズを通してお気軽にコメントお待ちしております。
完走賞も目指しているので応援是非お願いします！

---

この記事は [フロントエンドの世界 Advent Calendar 2024](https://qiita.com/advent-calendar/2024/frontend-assort-2024)の 1 記事目です。
次の記事はこちら [Svelte(Kit)の世界: Svelte とは？ #1](https://qiita.com/nuinteedev/private/876520b742d59d7bfba0)