Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Formの複雑さに立ち向かう
Search
じょうげん
February 14, 2025
Programming
3.4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Formの複雑さに立ち向かう
Conformを使った実装の紹介を交えつつ、Formの複雑さを軽減する手法を提案します。
じょうげん
February 14, 2025
More Decks by じょうげん
See All by じょうげん
値・型・名前空間の「三重定義」で Reactコンポーネントをより柔軟に設計する TypeScript コンパニオンオブジェクト活用術
bmthd
0
46
読みやすいコードとはなにか? 未来の自分とチームへの思いやり
bmthd
0
470
Yamada UIドキュメント v2紹介
bmthd
0
720
TanStack DB ~状態管理の新しい考え方~
bmthd
2
1.1k
コールバックchildrenでロジックの見通しを改善する
bmthd
0
34
Other Decks in Programming
See All in Programming
Webフレームワークの ベンチマークについて
yusukebe
0
180
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
180
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.8k
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
600
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.5k
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
220
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
280
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.3k
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
160
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.8k
Inside Stream API
skrb
1
780
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
120
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
How to Ace a Technical Interview
jacobian
281
24k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Optimizing for Happiness
mojombo
378
71k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
380
Transcript
Formの複雑さに立ち向かう
自己紹介 HN じょうげん Github bmthd X(Twitter) @j_ktwr スタック TS, Go,
Javaなど
Agenda • Formの悩み • Conformのご紹介 • 実装吸収層で実現するシンプルなform実装
Formの悩み
従来のHTMLにおけるFormといえば…
React Hook Formの場合
None
Conformのご紹介 Conformは、Server Actionsを前提に設計された新世代の フォームライブラリです。
Conformを使うとここまで削れます!
None
実装吸収層で実現する、シンプルなform実装
None
None
None
その他のConformの嬉しみ • Selectコンポーネント、動的入力欄、チェックボックスグループな どの複雑なUIにも対応 • FormData経由で同期的アクセス • リアクティブな状態へのアクセスももちろん可能! • アクセシビリティ属性を自動でセット
• サーバー側検証対応。フロントとバックでスキーマ共有や、バンド ルサイズ圧縮が可能 • Progressive Enhancement • サーバーでしか行えない検証をシームレスに実装可能 • SPAでの利用ももちろん可能
まとめ • Conformは、フォームの複雑さに立ち向かうための新しい選択 肢です。 • 実装がシンプルであり、UIの構築に集中することができます。 • Conformドキュメント • 紹介した実装の動作サンプル
exp.bmth.dev