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
680
frourioがとりあえずすごかった話
Kurogoma4D
December 20, 2020
Tweet
Share
More Decks by Kurogoma4D
See All by Kurogoma4D
2019-12-08 学生LT in Tokyo
kurogoma4d
0
660
初参加なので就活の話をします
kurogoma4d
1
330
Other Decks in Programming
See All in Programming
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
250
Kotlin2でdataクラスの copyメソッドを禁止する/Data class copy function to have the same visibility as constructor
eichisanden
1
130
PagerDuty を軸にした On-Call 構築と運用課題の解決 / PagerDuty Japan Community Meetup 4
horimislime
1
110
GCCのプラグインを作る / I Made a GCC Plugin
shouth
1
150
From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism- An Example
philipschwarz
PRO
0
170
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
6
2.2k
Nuxtベースの「WXT」でChrome拡張を作成する | Vue Fes 2024 ランチセッション
moshi1121
1
510
2万ページのSSG運用における工夫と注意点 / Vue Fes Japan 2024
chinen
3
1.3k
Kubernetes for Data Engineers: Building Scalable, Reliable Data Pipelines
sucitw
1
200
のびしろを広げる巻き込まれ力:偶然を活かすキャリアの作り方/oso2024
takahashiikki
1
410
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
910
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
440
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
51
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
Adopting Sorbet at Scale
ufuk
73
9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Code Review Best Practice
trishagee
64
17k
Music & Morning Musume
bryan
46
6.1k
Navigating Team Friction
lara
183
14k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
How STYLIGHT went responsive
nonsquared
95
5.2k
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!