I used slate in one of my projects but replaced it eventually with draft.js.
The biggest pain points were:
- Not stable yet. A lot of breaking changes between releases, so you have to update your code frequently
- Breaking changes often introduced new bugs
- Big in size (even bigger than draft.js)
redux-first-router removes unnecessary complexity from redux-simple-router (which is my current choice) and embraces a more redux barebone workflow as you already know it.
It's a pretty new library but as the author mentions here, give it a try and see if it fits your needs.
Formik uses a high order component to collect form data. redux-form has own input, select, textarea etc components which are directly connected to the redux store.
Without having tried formik, it looks simpler and much more flexible. You can use it without redux, but if you do, writing your own actions for storing the model state should be trivial.
The learning curve for reactive programming is a little steep compared to react, so it takes a while to actually wrap your head around cycle.js and the underlaying rxjs/xstream/most library. It can be worthwile exploring, but at this point the ecosystem is still too small to consider using it in production.
Really good guidelines, worth reading! Another way to solve tedious passing of the same props to children consists of passing down fully fledged components instead. Read more about this pattern here: https://medium.com/@RubenOostinga/avoiding-deeply-nested-component-trees-973edb632991
Hasn't this already been solved by using a bundler which supports tree shaking? Performance improvements sound great but i don't think they are noticeable in our real world apps. What do you do if you suddenly realize you need one of the not included ramda functions? Write them yourself? I guess not, so why bother using it?