Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite understanding client-side tools section #34017

Merged
merged 8 commits into from
Jun 11, 2024

Conversation

Josh-Cena
Copy link
Member

@Josh-Cena Josh-Cena requested a review from a team as a code owner June 8, 2024 12:11
@Josh-Cena Josh-Cena requested review from bsmth and removed request for a team June 8, 2024 12:11
@Josh-Cena Josh-Cena marked this pull request as draft June 8, 2024 12:11
@github-actions github-actions bot added Content:Learn:Client-side Content under “Client-side JavaScript frameworks” (Svelte, React, Angular, Vue) and related subtrees size/l [PR only] 501-1000 LoC changed labels Jun 8, 2024
Copy link
Contributor

github-actions bot commented Jun 8, 2024

Preview URLs (6 pages)
External URLs (49)

URL: /en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Package_management
Title: Package management basics


URL: /en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Overview
Title: Client-side tooling overview


URL: /en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Deployment
Title: Deploying our app


URL: /en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Introducing_complete_toolchain
Title: Introducing a complete toolchain


URL: /en-US/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Command_line
Title: Command line crash course

(comment last updated: 2024-06-11 15:35:22)

@Josh-Cena Josh-Cena marked this pull request as ready for review June 8, 2024 15:25
@github-actions github-actions bot added size/xl [PR only] >1000 LoC changed and removed size/l [PR only] 501-1000 LoC changed labels Jun 8, 2024
@Josh-Cena
Copy link
Member Author

Content is mostly ready, pending the part of GitHub Pages deployment because I need @bsmth's help

…tools/package_management/index.md

Co-authored-by: Brian Thomas Smith <[email protected]>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We mention in L66:

Note: npm is not the only package manager available. A successful and popular alternative package manager is Yarn. Yarn resolves the dependencies using a different algorithm that can mean a faster user experience. There are also a number of other emerging clients, such as pnpm.

I'm not sure this is true anymore in recent years. Are there still benefits to Yarn over npm? We should still mention it because readers are very likely to encounter it in projects.

Also later in the initialize phase, we're running npm and yarn commands sequentially without explaining that you shouldn't mix these in projects, and it's either-or.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure this is true anymore in recent years. Are there still benefits to Yarn over npm? We should still mention it because readers are very likely to encounter it in projects.

There are many ways in which Yarn is faster than npm.

  • In a monorepo, Yarn offers the best experience with precise hoisting.
  • Yarn PnP wraps its own Node runtime that is faster than node_modules resolution.
  • Zero-installs allows you to commit node_modules (basically, but compressed of course) and others won't even need to ever install
  • Yarn and pnpm both have faster disk operations than npm.

I'm not sure if we should describe in such detail. We just picked tools that work, not saying there's anything worse about other tools.

Also later in the initialize phase, we're running npm and yarn commands sequentially without explaining that you shouldn't mix these in projects, and it's either-or.

Good idea 👍

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Super, thanks for the info!

I'm not sure if we should describe in such detail.

No that's fine, thanks.

Copy link
Member

@bsmth bsmth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we're all good to go. In general, I'm trying to avoid adding screenshots because of the maintenance cost, if you think we can go without them using links instead, that would be great. Otherwise, leaving a +1 on this. Well done 👍🏻

@Josh-Cena
Copy link
Member Author

Great! Yeah I think the remaining screenshots are necessary.

@Josh-Cena Josh-Cena merged commit b771ad0 into mdn:main Jun 11, 2024
8 checks passed
@Josh-Cena Josh-Cena deleted the rewrite-client-side-tools branch July 8, 2024 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Content:Learn:Client-side Content under “Client-side JavaScript frameworks” (Svelte, React, Angular, Vue) and related subtrees size/xl [PR only] >1000 LoC changed
Projects
None yet
2 participants