Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
relic-20220420-lt-makino
Search
art0512
April 20, 2022
Programming
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
relic-20220420-lt-makino
art0512
April 20, 2022
Other Decks in Programming
See All in Programming
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
3.9k
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
5.2k
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
180
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
160
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
110
残高管理から台帳サービスへの進化
artoy
1
200
AWSに止められる覚悟してますか?
morizo_1984
2
540
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
380
JIS keyboard support in Omarchy
lef237
0
130
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Done Done
chrislema
187
17k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
370
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
Building AI with AI
inesmontani
PRO
1
1.3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Bash Introduction
62gerente
615
220k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
260
Transcript
ChakraUI の魅力 © Copyright 2022 Relic Inc. All rights reserved.
牧野 新
目次 1 自己紹介 2 ChakraUI って何? 3 実際の導入事例 4 推しポイント
まとめ 5 おわりに
1 自己紹介 牧野 新(まきの あらた) 株式会社Relic プロダクトイノベーション事業本部 サービスデザイン事業部 所属 フロントエンドエンジニア
2021年11月入社 趣味:楽器演奏、筋トレ、映画鑑賞 https://qiita.com/mackie0122
2 ChakraUIって何?
2 ChakraUIって何? → CSSフレームワーク / UIライブラリ です。 いい感じにデザインが組まれたUIコンポーネントを組み合わせることで CSSを1から記述することなく、効率的にサイト・アプリケーションを構築することができます。 スタイルに一貫性を持たせたUIを楽に実装できるのが、
CSSフレームワークを使用するメリットです。 ChakraUIの特徴 デフォルトデザインが汎用的、カスタマイズしやすい スタイルの指定方法が直感的で分かりやすい・入力補完してくれる Utility Firstな設計なので、CSSのクラス名に悩まなくていい レイアウトに便利な機能が備わっている
2 ChakraUIって何? ▼ メニュー ▼ フォーム ▼ アコーディオン デフォルトデザインが汎用的、カスタマイズしやすい
2 ChakraUIって何? ▼ フォーム デフォルトデザインが汎用的、カスタマイズしやすい
2 ChakraUIって何? ▼ フォーム UIコンポーネントの調整が直感的にできる デフォルトデザインが汎用的、カスタマイズしやすい
2 ChakraUIって何? コンポーネントにpropsでCSSスタイルを記述していく形です。 また、コンポーネントにスタイルを記述する際、当てられるスタイルの入力補完が出るため 開発者体験GOODです。 スタイル指定が直感的で分かりやすい・入力補完してくれる
2 ChakraUIって何? 一般的には以下のように、CSSのクラス名をつけて そのスタイルをHTMLに当てていきます。 対して、ChakraUIのコンポーネントにpropsとしてスタイルを記述していきます。 Utility Firstな設計なので、CSSのクラス名に悩まない
2 ChakraUIって何? ↑ 通常の HTML / CSS ← ChakraUI での書き方
Utility Firstな設計なので、CSSのクラス名に悩まない 直接スタイルを適用していくので、 クラス名を考える必要がない。 コンポーネント化は必須。
2 ChakraUIって何? 例えば、以下なようなレイアウトも簡単に調整できます。 ChakraUIには stack というレイアウトに便利な機能があり、 横並び・縦並びとそのスペースをコントロールできます。 Stack:縦並び / 左寄せ
VStack:縦並び / 横中央寄せ HStack:横並び / 横中央寄せ レイアウトに便利な機能が備わっている
2 ChakraUIって何? レイアウトに便利な機能が備わっている
2 ChakraUIって何? レイアウトに便利な機能が備わっている
2 ChakraUIって何? レイアウトに便利な機能が備わっている
3 実際の導入事例
3 実際の導入事例 RTK Query ー データ取得・キャッシュ管理ツール Redux + Redux Toolkit
ー 状態管理ツール/フレームワーク ChakraUI ー CSSフレームワーク/UIライブラリ Next.js ー Reactフレームワーク とあるプロジェクトでのフロントエンド技術スタック
3 実際の導入事例 RTK Query ー データ取得・キャッシュ管理ツール Redux + Redux Toolkit
ー 状態管理ツール/フレームワーク ChakraUI ー CSSフレームワーク/UIライブラリ Next.js ー Reactフレームワーク とあるプロジェクトでのフロントエンド技術スタック ChakraUIはReactの環境上で使われることを前提としています。 Next.jsとの相性はとても良いです。
3 実際の導入事例 RTK Query ー データ取得・キャッシュ管理ツール Redux + Redux Toolkit
ー 状態管理ツール/フレームワーク ChakraUI ー CSSフレームワーク/UIライブラリ Next.js ー Reactフレームワーク とあるプロジェクトでのフロントエンド技術スタック SPAを実装する上で大変なコンポーネント間のデータのやりとりや キャッシュ管理を楽にしてくれます。
3 実際の導入事例 プロジェクト構成から見た、ChakraUI のメリット フロントエンドエンジニアが多い時で9人体制 開発期間・工数の関係で内部レビューを満足に入れられなかった 人数が多いとその分コーディングルールを準拠してキレイなコードに保つハードルも高くなる。 ChakraUIは UtilityFirst なため、CSSに関しては設計を気にする必要がなくなる。
0 → 1 の新規開発 デザインと並行してマークアップを進めるプラン デザインの一貫性を保ちやすいので、デザイナーさんとの共通認識が取りやすい。 部分的に既存デザインが使われているところはマークアップ工数が削減された。
3 実際の導入事例 ChakraUI の デメリット 学習コストがそれなりにかかる 独自のモジュール・メソッドなどもあるので、習熟にはそれなりに時間がかかる。 ・DrawerやModal、Toastなどの機能付きコンポーネント ・文書構造に則してマークアップする際の適切なコンポーネント選び ・paginationなど、用意されていないものは独自で作成する必要がある
コンポーネント設計をきちんとしないと同じようなコードがどんどん増えていく Utility-Firstでスタイルを指定していくため、同じ見た目のコンポーネントは きちんと設計して切り出していかないと、コードが増えていく一方となる。
4 推しポイント まとめ
4 推しポイント まとめ Class名を考えなくてよい 人数が多いとその分コーディングルールを準拠してキレイなコードに保つハードルも高くなる。 ChakraUIは UtilityFirst なため、CSSに関しては設計を気にする必要がなくなる。 デザイナーさんとの共通認識が取りやすい Figmaでは
ChakraUI のテンプレートを使用したデザインも可能なので、 既存デザインを活かせば、実装の際にもエンジニア・デザイナー間で連携が取りやすい。 開発者体験が中々よい レイアウトのための機能が備わっていたり、使えるスタイル指定のサジェストが効くため 開発を進める上でのストレスが軽減される。
5 おわりに 今回ご紹介した他にも・・・ ダークモードが導入されている アクセシビリティが考慮されたコンポーネントになっている 便利なHooksが用意されている Theme機能で、コンポーネント自体のデザインのカスタマイズも可能 Pure TypeScript なので、TypeScriptでの開発の相性が良い
5 おわりに 今回ご紹介した他にも・・・ \ ぜひ使ってみてください! / ダークモードが導入されている アクセシビリティが考慮されたコンポーネントになっている 便利なHooksが用意されている Theme機能で、コンポーネント自体のデザインのカスタマイズも可能
Pure TypeScript なので、TypeScriptでの開発の相性が良い
© C o p y r i g h t
2 0 2 2 R e l i c I n c . A l l r i g h t s r e s e r v e d . ご清聴ありがとうございました。