gitmyhub

You-Dont-Need

★ 3.7k updated 4y ago

People choose popular projects, often not because it applies to their problems

This repository is a curated index of resources that challenge the habit of reaching for a popular third-party library or framework when a simpler built-in alternative already exists. The central idea is that developers often choose well-known packages because those packages are familiar or recommended by others, even when a project does not actually need them.

The collection groups its links into a few categories. Under JavaScript packages, it points to guides showing that tools like Lodash, Moment.js, jQuery, and Axios can often be replaced with methods already built into the browser or the JavaScript language itself. A link on React Router notes that most projects at Facebook do not even use it. The Redux entry cautions that people new to React should not treat Redux as a default starting point.

The languages section includes a guide on what CSS alone can accomplish without any JavaScript, and an article questioning whether TypeScript and static types are always necessary.

The programming practices section covers topics like avoiding unnecessary loops in favor of a different programming style, a React team post on when not to use derived state, and a piece on skipping the step of converting modern JavaScript to an older format when your target browsers already support the current version.

The miscellaneous section has a guide on using the command line instead of graphical tools for certain tasks.

This is primarily a link list, not a library or tool. It does not contain runnable code. Its value is as a reference for developers who want to question whether a dependency they are about to add is truly needed.