I’m not saying you should use libraries for everything. Especially at the beginning of your career, it’s good to code things yourself in order to learn. But in many projects, it’s a good strategy to use libraries where they make sense.
Key features are:
- Immutability and functions free from side effects
- Automatically curried functions
- Parameters arranged to Ramda functions for convenient currying
Useful features are:
- Iterating over strings, objects, and arrays
- Creating composite functions
- Manipulating and testing values
Here are a few examples of what you can do with Moment:
- moment().startOf('day').fromNow(); //8 hours ago
- moment('2019-15-11').isValid() //false
- moment('2019-02-21').isValid() //true
Hightlight.js is a library for syntax highlighting working both in the browser and on the server. It works with almost any markdown and comes with automatic language detection.
Highlight.js will search for programming code between code tags, try to detect the language automatically, and highlight the syntax. It also supports different color schemes.
It’s a useful library if you have a documentation site or a blog, for example.
D3 is the most popular library for Data Visualization with currently 89,500(!) Stars on GitHub. It uses web standards and helps you bring data to life with HTML, SVG, and CSS, making use of the power of modern browsers.
Here are a few example categories for what you can do with D3.js:
It has a steep learning curve, but if you have the discipline to learn it, you can do awesome things with D3.
Other features are:
- Complete set of functions to manipulate, chop, format, escape and query strings
- An easy-to-read and searchable documentation
- Supports a wide range of environments, e. g., Chrome, Firefox, Node.js
- 100% code coverage and no dependencies
Working with immutable data structures has some major advantages like simplified application development, no defensive copying, and advanced memoization concepts.
Immutable.js gives you immutable data structures like List, Stack, Map, Set and more.
Here is an example for singleTap and doubleTap:
See the Pen <a href='https://codepen.io/jtangelder/pen/pBuIw'>RecognizeWith and requireFailure Hammer.js taps example</a> by jtangelder (<a href='https://codepen.io/jtangelder'>@jtangelder</a>) on <a href='https://codepen.io'>CodePen</a>.
It works on all major mobile and desktop platforms out of the box, can be extended through plugins, and has a well-documented, simple API.
Here is an example in combination with OpenStreetMap:
I hope you like these libraries and can use them in one of your projects!
If you like what I write and want to support me and my work, please follow me on Twitter to learn more about programming, making, writing & careers🥰