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
eslintのプラグインを作成した話
Search
hirasa
February 08, 2022
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
eslintのプラグインを作成した話
eslintのプラグインを作成した話
hirasa
February 08, 2022
More Decks by hirasa
See All by hirasa
redux使うのやめました
hirasa
1
620
dev_server_proxyのススメ
hirasa
0
170
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
We Have a Design System, Now What?
morganepeng
55
8.4k
Designing for Timeless Needs
cassininazir
1
530
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
530
YesSQL, Process and Tooling at Scale
rocio
174
15k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
4 Signs Your Business is Dying
shpigford
187
23k
Transcript
Eslintのプラグインを 作成した話 平崎 葵(ひらさき まもる) 2022/02/08 Saitama.js vol.2発表資料 https://saitamajs.connpass.com/event/233089/
⾃⼰紹介 平崎葵(ひらさきまもる) クーガー株式会社 所属 https://couger.co.jp u フロントエンド、サーバサイドエンジニア u バーチャルヒューマンエージェントの開発 趣味:
ドラム、作曲
発表内容 Eslintのプラグインを作成して、npmパッケージとして公開した話 u どういうものを作ったのか u なぜ作ったのか u どう使うのか u どう作ったのか
どういうものを作ったのか コーディングルールをeslintでチェック ▪npmパッケージ https://www.npmjs.com/package/@hirasaki/eslint-plugin-coding-rules ▪github https://github.com/hirasaki1985/eslint-plugin-coding-rules
なぜ作ったのか コードレビューを⾃動化したい ▪⼀例で、フロント側の設計例 • ServiceやRepository, WebAPIを直接componentから呼び出されたくない • Organisms〜Atomのコンポーネントでreduxを直接使われたくない
どう使うのか u https://github.com/hirasaki1985/eslint-plugin-coding-rules#rule-details Pathの書き⽅はmicromatchを選択。 https://github.com/micromatch/micromatch
どう作ったのか u Typescriptで実装。 u テストはjestを使⽤。 u Buildはtsupを使⽤。 ▪Eslintのプラグインの構成について • metaとcreateから構成されている。
• meta: ルールのメタ情報 • Create: ルールを実装したオブジェクトを返す。 ▪参考 https://eslint.org/docs/developer-guide/working-with-rules
参考 u https://speakerdeck.com/texmeijin/eslintfalsedu-zi-ruruzuo-cheng- nitiyarenzisitahua u https://techblog.yahoo.co.jp/javascript/how-to-create-eslint-rules/ u https://azu.github.io/JavaScript-Plugin-Architecture/ja/ESLint/ 公式 u
https://eslint.org/docs/developer-guide/architecture
エンジニア募集中 https://couger.co.jp/news/career/ カジュアル⾯談実施中︕ u フロントエンドエンジニア u DevOpsエンジニア u AI/機械学習エンジニア u
サーバアプリケーションエンジニア