What libraries are we using in our front end projects?
If you are not familiar with JS tooling at all, this blog post will be the best starting point for you.
Routing in SPA
When developing SPA (single page application), we need to use some kind of router. We are using Backbone’s router with some tweaks for the job. However, we are looking envy at router5 — it looks like a great alternative.
There is quite a popular solution called React Router, but we found it hard to test and leaking across abstraction layers. We cannot recommend it in any way.
If you don’t need anything complex, it may be a good idea to wait a bit before jumping into Immutable.js.
I made a lot of mistakes setting up some test stacks. Over-powered setups make it hard to test in some cases. This causes people in your team to hate testing. Therefore, test stack should be as simple as possible. No globals, no DSL for doing BDD.
Transpilation & Module bundling
I don’t want to go into details here. Both these libraries are great topics for another blog post and both of them have great documentations.
Your convenience as a developer is also very important. I highly recommend setting up ESLinter. It lets you catch common mistakes, even before you refresh your browser. Airbnb config is a great set of rules for the beginning. You may want to tune down their styling rules — they are quite aggressive. Not all team members may like that.
If you will use React, check-out eslint-plugin-react. It is simply amazing.
Is that all?
No, not really. These libraries are only the basic ones we would always use.
Thanks for reading! Feel free to comment and drop me a line on Twitter.