Too many dependencies in package.json

I agree with your solution, if we decide to improve this, it will be a great starting point.

But my point of view is not how to do it, but what we should learn ourselves besides what other people can do for us.

Maybe I’m too aggressive on this, I apologize to those who were offended by me.

1 Like

I agree, really, people must learn and ember is not a learning platform, that’s clear. Somewhere earlier in this discussion I wrote:

I mean that I don’t think anyone should make a big job, maybe just expand this page to give a prompt, generic, explanation to the newbie reader about the default packages, why they are app’s dependencies, an maybe, why not, an hint about how to discover more about them. I guess the impact over docs maintenance will be zero, the number of questions about this matter will decrease and the learning path of the average newbie user will improve.

We don’t agree about this and that’s fine.

Here is a PR for the welcome-page idea.

Screenshot

6 Likes

Sorry for my misunderstanding but are you proposing that this be added to the welcome page addon because that addon is the only thing that requires all these default packages when an entirely new Ember app is built? Or because there is no other place for it?

The specific problem is for new commers with little knowledge of the JavaScript or Ember ecosystems. The welcome page is also for the exact same deographic. Therefor it made sense that the automated listing of deppendencies be a part of the optional addon that would render for new apps and tutorial users but removable for production apps. The assumptin is that by the time a new developer has removed the welcome page addon (which is there by default) they will have likely reached a level of experience to no longer need the friendlly dependency list.

1 Like

I see. But aren’t some of these deps required even without the welcome page addon?

You’ve missed the point of the original poster’s request. The dependency list has nothing to do with the welcome page addon other then that is the most appropriate place to put it for both the needs of seasoned emberinos and new comer demographics.

The ask was to have a curated list of dependencies that a new app has in its package.json This is because JSON can not have comments. Seasoned JS devs know to search npmjs.org to gain information on a single dependency. New developers are simply presented with a list and are left confused as to why that list is there and what it does.

The problem with a curated list on say emberjs.com is that it needs to be maintained.

The solution I presented was to offer a curated list that was built programmatically. It reads the package.json builds a list of dependency packages and links to their npm site. This way a new user can ember new, run the app, and see the welcome page along with a friendly list of dependencies the new project is using. Once the user is satisfied the addon is removed and development continues like normal. The curation is automated which means no maintenance is required.

This also has the added benefit of making the welcome page addon just that much more useful then just a place to put a cool picture of Tomseter.

I hope that clears up some confusion on the motivation.

@sukima, sorry but I think you may be missing the point. :slightly_smiling_face: The original ask was why all of those dependencies need to be added to the project directly, when the only thing that seems technically necessary to run a bare Ember app is ember-cli, ember-data, and ember-source. Then @rwjblue responded suggesting for us to try to remove the other dependencies and we will see how important they are.

@rwjblue can correct me if I’m wrong here, but I took @rwjblue’s response to mean that some of them are actually required to run a full Ember app (even without the welcome page addon).

The welcome page addon additions are great, but I’m still waiting to see if anyone can actually answer the original question of whether or not an Ember app will work with just the three addons.

Hmm, well I don’t know that that’s what I meant. I think some of my earlier replies were a bit dumb. :stuck_out_tongue_winking_eye:

I honestly think that this thread is pretty muddy and hard to get a good picture of. Some folks seem to have the position that most of the deps in a new project shouldn’t be there (and instead should be deps if ember-cli), others are saying it’s hard for someone quite new to programming to get a handle on all the moving parts (what’s needed, what’s not, how it all works), and still more are focused on teaching folks how to figure out what things do as that skill will likely have a larger impact on folks than just explaining a specific set of dependencies.

I’m not terribly qualified to answer all of these questions (I’d suggest perhaps none of us are), and I definitely don’t want to get mired in an unresolvable argument. :smiley:

I really don’t know, but I certainly wouldn’t want to work in an app like this. Being either completely locked in (if the other deps were hoisted and always forced on you) or having so little out of the box capabilities (no transpilation, no fingerprinting, no minification, etc).

Can someone explain why the count of dependencies matters?

1 Like