I want to add some criticism to this article, I do not know you experience in software engineering, especially in front-end, but here are a few notes you or other readers could take into account:
1. Stop using so many libraries, in most cases, they are unoptimized, vulnerable crap with another list of dependencies, which has another list of dependencies, and so on. If this is a 0 dependency package, yes, it can be ok, but investigate what you are going to use, except that, a popular library doesn't mean written by smart people.
2. Stop using redux in 2024, it is an absolute disaster, it is incredibly hard to manage in a project growth lifecycle, which causes even more disaster when you are using side effects.
3. Reac helmet, do you really need it? You can solve the problem of setting some data in your head using a few lines of code, wanna have this in a different place, use a custom hook that will set it for you, you do not need to install a massive library for that
4. Dotenv? please consider to use remix or any other ready to use build system for you react application, you do not need to set up it by yourself
5. react-error-boundaries? you have build in system for catching error, why library?
6. sweetalert? Consider if you really need to have all of that functionality in your app and making other developer learn about tens different libraries instead of using native features
7. styled-components, it look cool, but when you are trying to build a big project, too many things go wrong: a) most people do not understand what they should do, and what they should be aware of, CSS modules is more than enough + it force you to write better code b) performance issue due to inability to precompile css
8. React spinner? Just use svg with built-in animation, or do one by yourself, too many online tools gives you that ability