# Why does ember-source npm package have a lot of dependencies?

**URL:** <https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806>\
**Category:** Uncategorized\
**Created:** [May 22, 2018, 6:11am UTC](https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806 "2018-05-22T06:11:10Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![qjmiao](https://avatars.discourse-cdn.com/v4/letter/q/258eb7/32.png) [@qjmiao](https://discuss.emberjs.com/u/qjmiao)\
**Post date:** [May 22, 2018, 6:11am UTC](https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806/1 "2018-05-22T06:11:10Z")

</div>

It seems just jquery is required, but package.json contains a lot of others.

“dependencies”: { “broccoli-funnel”: “^2.0.1”, “broccoli-merge-trees”: “^2.0.0”, “chalk”: “^2.3.0”, “ember-cli-get-component-path-option”: “^1.0.0”, “ember-cli-is-package-missing”: “^1.0.0”, “ember-cli-normalize-entity-name”: “^1.0.0”, “ember-cli-path-utils”: “^1.0.0”, “ember-cli-string-utils”: “^1.1.0”, “ember-cli-valid-component-name”: “^1.0.0”, “ember-cli-version-checker”: “^2.1.0”, “ember-router-generator”: “^1.2.3”, “inflection”: “^1.12.0”, “jquery”: “^3.3.1”, “resolve”: “^1.6.0” },

I’m not going to use ember-cli and if I do “npm install ember-source --save-dev”, many packages are installed with ember-source and jquery.

- ember-source@3.1.2 added 63 packages in 4.109s

---

<div class="post-metadata">

**Author:** ![rwjblue](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.emberjs.com/rwjblue/32/9411_2.png) [@rwjblue](https://discuss.emberjs.com/u/rwjblue)\
**Post date:** [May 22, 2018, 10:50am UTC](https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806/2 "2018-05-22T10:50:42Z")

</div>

> [@qjmiao](#):
>
> I’m not going to use ember-cli and if I do “npm install ember-source --save-dev”

Using ember-source without using ember-cli is not a supported path (as of Ember 3.0.0).

> [@qjmiao](#):
>
> It seems just jquery is required

It is absolutely possible to use Ember without jQuery. There is still some amount of work to do to implement [this RFC](https://github.com/emberjs/rfcs/blob/master/text/0294-optional-jquery.md), but the work arounds mentioned in the RFC are functional.

> [@qjmiao](#):
>
> but package.json contains a lot of others.
> 
> “dependencies”: { “broccoli-funnel”: “^2.0.1”, “broccoli-merge-trees”: “^2.0.0”, “chalk”: “^2.3.0”, “ember-cli-get-component-path-option”: “^1.0.0”, “ember-cli-is-package-missing”: “^1.0.0”, “ember-cli-normalize-entity-name”: “^1.0.0”, “ember-cli-path-utils”: “^1.0.0”, “ember-cli-string-utils”: “^1.1.0”, “ember-cli-valid-component-name”: “^1.0.0”, “ember-cli-version-checker”: “^2.1.0”, “ember-router-generator”: “^1.2.3”, “inflection”: “^1.12.0”, “jquery”: “^3.3.1”, “resolve”: “^1.6.0” },

All of these packages are actually used when ember-source is consumed. Some are used by the blueprints (e.g. to support things like `ember generate route posts`), others are used for the build system, and others still are used to detect which version of other collaborating packages are in use (so that ember-source can work properly with them).

---

<div class="post-metadata">

**Author:** ![qjmiao](https://avatars.discourse-cdn.com/v4/letter/q/258eb7/32.png) [@qjmiao](https://discuss.emberjs.com/u/qjmiao)\
**Post date:** [May 22, 2018, 11:49am UTC](https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806/3 "2018-05-22T11:49:59Z")

</div>

I’m able to build a simple ember 3.0 app just by using webpack and not involving ember-cli stuff.

Is it better to place those packages except jquery into devDependencies and place jquery into optDependencies?

---

<div class="post-metadata">

**Author:** ![ef4](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.emberjs.com/ef4/32/13470_2.png) [@ef4](https://discuss.emberjs.com/u/ef4)\
**Post date:** [May 22, 2018, 1:32pm UTC](https://discuss.emberjs.com/t/why-does-ember-source-npm-package-have-a-lot-of-dependencies/14806/4 "2018-05-22T13:32:10Z")

</div>

> Is it better to place those packages except jquery into devDependencies and place jquery into optDependencies?

This would be hugely inconvenient for the 99.99% of Ember users who are using ember-cli. They _aren’t_ devDependencies. Apps that add ember-source need those packages. And they need specific matching versions of them.

Your custom setup is almost certainly broken for a large number of possible addons. If you want to package your app with webpack, that is actually already supported on the current master version of ember-cli via the [packager hook](https://github.com/ember-cli/rfcs/blob/567201627bcc6baa2d70103bd5b6f9e23e8ea0d9/active/0051-packaging.md).
