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
frourioがとりあえずすごかった話
Search
Kurogoma4D
December 20, 2020
Programming
0
630
frourioがとりあえずすごかった話
Kurogoma4D
December 20, 2020
Tweet
Share
More Decks by Kurogoma4D
See All by Kurogoma4D
2019-12-08 学生LT in Tokyo
kurogoma4d
0
640
初参加なので就活の話をします
kurogoma4d
1
240
Other Decks in Programming
See All in Programming
チームでモデリングを育てるうえで 考えたこと・気づいたこと / Cultivating Modeling in Teams: Thoughts and Insights
mackey0225
5
1.7k
Honoとhtmx
yusukebe
6
1.2k
Data Contracts In Practice With Debezium and Apache Flink (Kafka Summit London)
gunnarmorling
2
270
PHP で読む楽しいコアダンプ
sji
0
240
OpenTelemetry のサービスという概念について
azukiazusa1
1
380
phpunit/php-code-coverageって何をしてるんだ #phperkaigi
o0h
PRO
2
210
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
7
2.1k
CSRF対策のやり方、そろそろアップデートしませんか / Update your knowledge of CSRF protection
hiro_y
25
13k
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
3
830
クソコード動画『カプセル化 Mk-II』 で考える 上手くカプセル化できない理由 / encapsulation2
minodriven
11
7.1k
TCAの Shared Stateって どういう仕組みになってんの?
yimajo
0
330
ONE WEDGE_Company_Information
1wedge
0
160
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
781
250k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
Rebuilding a faster, lazier Slack
samanthasiow
72
8.2k
The Brand Is Dead. Long Live the Brand.
mthomps
48
21k
Agile that works and the tools we love
rasmusluckow
323
20k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
319
20k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
67
38k
Building Effective Engineering Teams - LeadDev
addyosmani
25
1.8k
Web development in the modern age
philhawksworth
201
10k
Large-scale JavaScript Application Architecture
addyosmani
501
110k
Testing 201, or: Great Expectations
jmmastey
27
6.3k
Code Reviewing Like a Champion
maltzj
512
39k
Transcript
frourioが とりあえずすごかった話 Kurogoma4D
鈴木 崇史 / Kurogoma4D @Krgm4D 木更津高専出身 Flutterメインのモバイルアプリエンジニア 一人暮らし,エアコンしかなくて足元が寒いです
✗ 業務の話 ✗ Flutterの話
ある日友人が言ってたこと • メモ帳にテンプレ的な項目が設定できて • 後から項目が追加できて • すでにあるメモに追加した項目が 反映される そんなメモ帳ほしいなぁ
※要約
None
None
何を使ったか
https://frourio.io/
frourio is 何 • “Fast and type-safe full stack framework,
for TypeScript” • 早い話Ruby on RailsのTypeScript版
prisma + aspidaがすごい! ORM HTTPクライアント 形を共有
schema.prisma にスキーマを定義して `prisma generate` すると node_modules/配下に型が作られる これ
aspida側 aspidaのリクエスト/レスポンス型定義 (ルーティングはディレクトリ構成と同 じになる) GET /api/memos?post_id=1
prismaの型定義が使える
aspidaのコントローラー やってることはRoRの コントローラーと同じ
prismaでクエリを書く様子
サーバーサイドTS,良い…
ちなみにクライアントでは aspida用のSWR React Hook `useAspidaSWR` フックを使えば 型定義を参照することなくレスポンスの型をそのまま使える ※SWR(stale-while-revalidate)
: データフェッチ用のHook Next.jsではただ使うだけならクライアントサイドからリクエストが送れる便利なやつ https://swr.vercel.app/
快適
Thanks!