NPM Packages
Suggestions for NPM packages that can be used in projects.
πΒ Date FNSβ
Modern JavaScript date utility library, supports typescript and uses native modules. It is a great alternative to Moment.js as it is smaller and more performant.
| Header | Description | 
|---|---|
| Repository | github.com/date-fns/date-fns (βοΈ 32.2k) | 
| Preferred over | Moment.js | 
| Licence | MIT | 
π Collect.jsβ
A JavaScript library that provides a fluent, convenient wrapper for working with arrays and objects.
| Header | Description | 
|---|---|
| Repository | github.com/ecrmnn/collect.js (βοΈ 6.3k) | 
| Preferred over | Underscore.js, Lodash | 
| Licence | MIT | 
π» Zustandβ
A tiny (400B) state management library with a React hook API. Don't require a context provider, and can be used with any React version.
| Header | Description | 
|---|---|
| Repository | github.com/pmndrs/zustand (βοΈ 28.7k) | 
| Preferred over | Redux, MobX, Recoil, React Context | 
| Licence | MIT | 
π React Springβ
Spring-physics based animation library for React.
| Header | Description | 
|---|---|
| Repository | github.com/pmndrs/react-spring (βοΈ 28.7k) | 
| Preferred over | React Transition Group, React Motion, React Move | 
| Licence | MIT | 
π React Use Gestureβ
Set of gestures that let you bind mouse and touch events to any node to set up complex gestures like dragging and pinching with a few lines of code.
| Header | Description | 
|---|---|
| Repository | github.com/pmndrs/use-gesture (βοΈ 7.5k) | 
| Preferred over | Hammer.js | 
| Licence | MIT | 
π¨ Mantineβ
React UI library with a focus on developer experience and accessibility.
| Header | Description | 
|---|---|
| Repository | github.com/mantinedev/mantine (βοΈ 18.3k) | 
| Preferred over | Material UI, Chakra UI, React Bootstrap | 
| Licence | MIT | 
βοΈ SVGRβ
Transform SVGs into React components.
| Header | Description | 
|---|---|
| Repository | github.com/gregberge/svgr (βοΈ 9.5k) | 
| Preferred Over | N/A | 
| Licence | MIT |