It is one of the few component libraries I like. There are a lot of component libraries in react having a wide variety of components but this one is very simple. The tables evergreen provide are rich in features and easy to use and it is my favourite component. This library has almost all the components that I use and nothing more. The documentation is also very simple. I have also read the source code and it is easy to understand from the source also.
A very well architectured drag and drop list for react. I have used it in one of my projects and the animation and performance are the things that impressed me a lot. I read a lot about the struggles and decisions made by the developer during the development of the package. The thinking they have put in the development of this project is amazing. Another good thing about the project is accessibility. It is hard to implement accessibility in drag and drops. This library is limited to creating dnd lists but it had the potential to become the best react drag and drop library.
Cypress is the best e2e testing framework. I don’t write a lot of end to end tests but when I write I use cypress. It is very easy to install and you don’t have to worry about any driver issues, cypress installs it when you install the package. The UI that cypress shows while running the tests is also a very good and unique feature, this helps to easily navigate through the tests and also figure out why it failed. The error logs are also easy to read. I use jest for all my other testing and using cypress and jest result in a conflict in the globals in linters. I could fix it but it was a little hard. Another issue is it doesn’t have support for all browsers.
json web tokens make it easier to handle authentication in your web app. They are easy to work with. I use jwt authentication for most of the apps I write and my goto library for generating and verifying jwts in nodejs is json-web-tokens package. This package is super simple to use and have a good documentation. The only drawback I found using jwt tokens for authentication is expiring them when the user log out.
I have been using react router in all my react projects. I never had to look for any alternatives, I don’t even know whether there are any. I think this is the router almost everyone in react uses. One of the well updated and well maintained libraries in react. I think it is one of the first libraries made for react. They are also one of the first packages that migrated to hooks when react released hooks. I love it more when they released the hooks version. The package is also very easy to customise you switch from browser router to hash router very easily. The maintainers are amazing. I have seen a lot of talks from them. They are really inspiring.
Must have a library if you are building a react application. React helmet helps you to add meta tags, customize title etc on your react application with simple apis. The package is very easy to use with react and has very good documentation. I use it to manage my meta tags and custom title on each page. Very easy to update those values from data you get from an http endpoint.
Chakra is one of the very few component libraries I like. I use this in most the newer projects I work on. The library is entirely written in typescript and supports hooks very well. The project is fairly new so it does provide a lot of newer features in react and typescript. It is accessible and is a goto if you care about accessibility in your project. Chakra helps you build accessible frontends. The theming in chakra is good but I find it hard to customize. There are a lot of customisation chakra provides, but there is no proper documentation to customize it. It is a part which they can improve. Apart from that chakra has an amazing documentation and very good maintainers.