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
npm
Search
Denis
October 10, 2019
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
npm
How to build npm
Denis
October 10, 2019
More Decks by Denis
See All by Denis
Refactoring
denredsky
0
230
2fast2furios
denredsky
0
110
Other Decks in Programming
See All in Programming
Event is what happens
moro
2
780
R8 の設定見直しでアプリサイズ削減
andpad
0
220
contenteditable と日本語入力に向き合う
colorful12
0
200
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
610
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
0
1.3k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
280
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
380
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.2k
パスワード再設定メールのURLについて知っておこう
uyuki234
0
160
Rでドレミ/Do-Re-Mi_with_R
florets1
0
130
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
570
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Building Applications with DynamoDB
mza
96
7.2k
4 Signs Your Business is Dying
shpigford
187
23k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Mind Mapping
helmedeiros
1
400
Navigating Team Friction
lara
192
16k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
990
Side Projects
sachag
456
43k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
Transcript
Как правильно собирать -пакеты в 2к19 году Красновский Денис ДомКлик
2 Красновский Денис Технический руководитель разработки ДомКлик speakerdeck.com/denredsky/npm telegram: @jquery_dlya_slabih
3 Why it’s important? 194.6kB Another one super cool something
for React/Angular/Vue
None
5 developers.google.com/web/tools/lighthouse
6 Performance is about retaining users improving conversions the user
experience people seo hard skills developers.google.com/web/fundamentals/performance/why- performance-matters/
7 «…отсекаю всё лишнее» ― Микеланджело Буонарроти
8 CommonJS AMD UMD ES-modules JS MODULE SYSTEM package.json
9 OR
10 Webpack Initial commit 10 Mar 2012 ~ 3,498,984 repositories
on GitHub Can do all, but ES-modules For example let’s build simple UI-lib
11 Import BAD webpack.prod.js
12 Import GOOD webpack.prod.js
13 Library target webpack.prod.js
14 Dependencies dependencies devDependencies peerDependencies
15 Externals package.json webpack.prod.js WEBPACK-NODE-EXTERNALS OR
16 Gotcha!
17 How to reduce JS via Webpack config I am
super super serious webpack.prod.js
18 ⚠ DANGER ⚠ webpack.js.org/configuration/optimization/#optimizationminimizer webpack.prod.js
19 .browserslistrc Useful for autoprefixer and @babel/preset-env
20 How to reduce CSS via Webpack mini-css-extract-plugin optimize-css-assets-webpack-plugin
21 Transpile JS via Babel 2ality.com/2015/12/babel6-loose-mode.html babel.config.js
22 npm publish package.json
23 Rollup Initial commit 17 May 2015 ~ 221,206 repositories
on GitHub Can build ES-modules For example let’s build simple utils-lib
24 That’s all rollup.config.js
25 ES6 syntax import/export preserveModules: true sideEffects: false Conditions for
tree-shaking
26 Win
27
28 Import cost Display import package size in the editor
29 bundlephobia.com
30 bundlephobia.com
31 Finally duplicate-package-checker-webpack-plugin or inspectpack check bundles weight after build
32 Dynamic import webpack.js.org/guides/code-splitting/
33 Typical situation
34 Blockchain NPM-chain
35 Step 1: we need a shared npm-package for …
36 Step 2: npm-package so cool let’s create more npm
37 Step 3: this was bad idea
speakerdeck.com/denredsky/npm Спасибо за внимание, вопросы? telegram: @jquery_dlya_slabih