

Show HN: React Resolver – Async Rendering and Data-Fetching for React - ericclemmons
https://github.com/ericclemmons/react-resolver

======
syedatif
This is nice but I can imagine it would still require a lot of boilerplate
code in order to integrate nicely into a flux architecture in a production
app. Comparatively, I think Fluxible does a good job in separating the async
logic while providing you with clean Flux terms. Would be interested to see
some higher-level integration library with Redux, Alt or a flux library.

~~~
ericclemmons
It's not much more than an additional 1 or 2 decorators, & even those can be a
local file specific to how you write your app. In my experience, I only add a
`@dispatcher()` decorator above it, and use `@resolve` as normal. 1 line
doesn't constitute "a lot of boilerplate" in my opinion :)

I intentionally didn't couple this with a specific Flux lib since _this solves
an entirely different problem_ than maintaining application state.

Look forward the Redux & Alt example, though, as those will have a very terse,
so you won't have to use your imagination anymore!

------
elierotenberg
Is React Resolver related to React Nexus[1]?

[1] [https://github.com/elierotenberg/react-
nexus](https://github.com/elierotenberg/react-nexus)

~~~
ericclemmons
Hey Elie! Not directly, no. It looks like both of our projects originated from
"real world apps" (as you say) with SEO requirements and, in my case in
particular, ensuring mobile users get a response ASAP before React
progressively enhances the page.

It looks like we've landed on about the same architectural solution given
React's synchronous nature.

I'll have to check it out in more detail as, to be honest, I was more aware of
the Nexus Flux library.

------
mtschopp
Nice to see some effort in this area. How is it compatible with the flux
architecure?

~~~
mike-cardwell
Seems incompatible to me. You don't fetch data inside the components when
you're using Flux.

~~~
idibidiart
but isn't the plan with Relay to do just that? or not?

~~~
ericclemmons
You're correct in that Relay correctly identified the same architectural
problem with having data requirements _far away_ from the components that
actually need it.

This is why React Resolver was created, and from what I've seen, also spurred
React Nexus & React Transmit as well.

On an related note, v1 of React Resolver explicitly stated how it was similar
to Relay with regards to fetching data for components. I've since dropped that
messaging to avoid confusion since Relay isn't even available yet :)

