Content pfp
Content
@
0 reply
0 recast
0 reaction

Colin pfp
Colin
@colin
Began working on a /paragraph redesign and used that as an opportunity to begin using the NextJS app directory. Overall very positive experience: - eager to deprecate redux which contained a lot of complex, archaic state management logic; replacing it with fetches and regular TS at React component leaf nodes - RSCs are awesome - fetch (+ all the built-in caching) is awesome and much better than our huge getStaticProps which blocked the entire page - Suspense is awesome and improves UX (though, encountering a handful of bugs associated with it) - lack of opinionation is OK but leads to a bit of a learning curve (eg manage state via context? or URL params? or via an optional catch-all route?) - still a bit confused about certain next features (intercepting routes? "instant loading" vs regular suspense? etc) though I imagine I'd learn in time Also really enjoying shadcn
6 replies
5 recasts
51 reactions

jtgi pfp
jtgi
@jtgi
Interested to hear more as you build things out. I ended up moving to Remix after finding next and RSCs added design burden in structuring and packaging code, specifically how to share server components. I found limitations like how you can’t add a single onClick handler to a server component super frustrating. Sometimes a single onClick handler would create a chain of refactors across packages. But I gave up after a couple months. I do love suspense and streaming and how much being able to put plain async calls in components cleans up and simplifies code. Hard to go back to client side fetching after re-experiencing that.
2 replies
0 recast
3 reactions

jtgi pfp
jtgi
@jtgi
More than anything RSCs made me appreciate the server again because of how clunky client side data fetching and the proliferation of useEffects it removes. I use SSR and streaming/suspense for everything now, just in remix. Get all of react ecosystem and type safety with none of the react bloat that juniors often stumble over.
0 reply
0 recast
3 reactions

Colin pfp
Colin
@colin
Thankfully haven't experienced those painpoints yet but I wouldn't be surprised if we did. And definitely - it's been a joy just fetching directly in async components vs on the client side
0 reply
0 recast
1 reaction