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
ain't giving up type-safe Express
Search
andoshin11
May 19, 2020
Technology
2
420
ain't giving up type-safe Express
andoshin11
May 19, 2020
Tweet
Share
More Decks by andoshin11
See All by andoshin11
Envoy External AuthZとgRPC Extensionを利用した「頑張らない」Microservices認証認可基盤
andoshin11
0
500
カーナベル株式会社2024年2月 エンジニアイベント資料
andoshin11
0
290
Private Cloudを支える最高のユーザーガイド運用技術
andoshin11
0
280
TS CompilerがVueを喋れても良いじゃないか
andoshin11
0
710
Type Safe "Everything"
andoshin11
0
240
Hack your Nuxt router!
andoshin11
0
1.2k
GatewayパターンとSchema駆動開発
andoshin11
7
1.4k
Catch up Nuxt.js 2019.02
andoshin11
0
2k
The future of Nuxt.js with TypeScript
andoshin11
0
92
Other Decks in Technology
See All in Technology
Culture Deck
optfit
0
420
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
140
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
160
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
130
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
3k
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.4k
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
690
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
410
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
35
1.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Building an army of robots
kneath
303
45k
Building Adaptive Systems
keathley
40
2.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Transcript
ain’t giving up type-safe Express @andoshin11 19. 5. 2020 #隅田川.js
Who am I ? hin Ando (a.k.a Andy) @andoshin11 -
Freelance Full- tack Developer - ype cript / Vue.js / eact / Go / uby / erraform / etc… - ❤ Code Generation!
ecent Works: typescript-error-reporter-action
ecent Works: vue-type-audit
Express with ype cript
What’s new with @types/express • Generic eq/ es ype •
H Methods Awareness (← my first contribution!!) • Generic uery arameter ype • Enhanced Middleware ype • Improved ame- ite Cookie options • and more...
oute handlers
None
oute handlers Dictionary ype bject ype any Can send anything
Mapping Handler ypes
Mapping Handler ypes
eparating Declaration Multiple handler types can be defined for different
paths
H Method Distinction eceives Method type as a Generic input
Am I really doing this...
Let the tools do their jobs!!
typed-oax
typed-oax Open API Open API AST TypeScript AST Handler Types(d.ts)
Generate Handler ypes using pen A I & A arser
typed-oax DEM