infinitered / infinitered/phoenix_base
Large node_modules folder with bare install
Nobody has claimed this yet.
- Dominant language
- Elixir
- Stars
- 65
- Forks
- 16
- PR merge metrics
- No merged PRs in 30d
Description
A brand-new `mix phoenix.new ` generates a 18.6 MB, 321 item `node_modules` folder.
PhoenixBase generates a 143 MB, 647 item `node_modules` folder. :-(
We should take a good look at all these dependencies and figure out a better way.
Here are the worst offenders (> 100k, ascending order).
```
100K boom/
100K jodid25519/
104K dashdash/
104K eslint-plugin-standard/
104K events/
104K har-validator/
104K postcss-merge-longhand/
112K kew/
116K es6-map/
116K es6-promise/
116K fstream/
120K standard-format/
124K gauge/
124K url/
128K babel-generator/
128K qs/
136K q/
140K bourbon-neat/
144K detective/
148K babel-core/
152K postcss-selector-parser/
156K enhanced-resolve/
156K es6-set/
156K mkdirp/
156K postcss-modules-local-by-default/
164K commoner/
168K babel-types/
168K normalize-package-data/
172K mime-db/
172K stream-browserify/
176K disparity/
176K doctrine/
176K readable-stream/
180K argparse/
184K ast-types/
184K concat-stream/
184K tweetnacl/
188K coa/
188K fs-extra/
188K watchpack/
192K node-libs-browser/
192K shelljs/
196K hoek/
200K browserify-zlib/
204K source-list-map/
208K babel-traverse/
212K babel-plugin-transform-regenerator/
216K bcrypt-pbkdf/
216K is-my-json-valid/
216K optimist/
220K extract-zip/
224K bl/
224K extract-text-webpack-plugin/
224K json-schema/
224K sass-loader/
228K rocambole-linebreak/
232K esprima/
240K request/
240K tar/
240K yargs/
244K tough-cookie/
252K resolve/
256K sshpk/
276K babylon/
280K webpack-core/
296K eslint-plugin-react/
340K autoprefixer/
360K bourbon/
368K js-yaml/
376K buffer/
392K iconv-lite/
420K rx-lite/
424K csso/
424K hawk/
436K rocambole/
444K nan/
452K source-map-support/
456K svgo/
536K bluebird/
592K acorn/
604K json5/
676K async/
776K pako/
784K postcss/
784K source-map/
860K editorconfig/
888K escope/
928K uglify-js/
932K babel-runtime/
1.2M js-beautify/
1.2M regenerator/
1.3M esformatter-literal-notation/
1.3M recast/
1.4M crypto-browserify/
1.5M sha.js/
1.7M esformatter/
1.8M defs/
1.8M eslint/
1.9M node-gyp/
2.1M babel-plugin-proto-to-assign/
2.1M copy-webpack-plugin/
2.2M inquirer/
2.2M mout/
2.3M rocambole-indent/
2.8M webpack/
2.9M handlebars/
3.1M es5-ext/
4.4M globule/
4.7M lodash/
6.6M core-js/
7.1M fsevents/
7.4M caniuse-db/
11M esformatter-jsx/
```
cc @danielberkompas @darinwilson @zberkom @codeithuman @yulianglukhenko @ryanlntn
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce a bare `mix phoenix.new ` and compare its generated `node_modules` size with PhoenixBase, using the dependency list in the issue as the starting inventory. Inspect the generated dependency manifests and identify which packages can be removed or replaced; done means a materially smaller install without breaking the generated application.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- elixir, node.js
- Domain
- build-system, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100