4 ms·
Tamagui is always fully agnostic to backend choice, since it is specifically for UI styling/animation. Remix.run and RedwoodJS are two fullstack React framewor
by redbar0n 4y ago
Tamagui is always fully agnostic to backend choice, since it is specifically for UI styling/animation.
Remix.run and RedwoodJS are two fullstack React frameworks that comes from old RoR folks who aim to recreate the Rails/Laravel experience for JS/TS. Remix is SSR and progressive enhancement / web standards focused, and RedwoodJS is CSR and GraphQL focused and brings a larger and more opinionated suite of tools (testing etc.). Coming from Rails myself, RedwoodJS gave me the most Rails-like feel, but YMMV.
NextJS is the market leader for a fullstack React framework, ofc (and Solito.dev that bridges NextJS and Expo works well with Tamagui). But if you want more freedom, and a Vite based setup with ‘blazingly fast’ DX, then try vite-plugin-ssr.com
BlitzJS is «the missing fullstack toolkit for NextJS» also made by a RoR guy trying to make NextJS come closer to the Rails DX we knew and loved.
For data loading in particular, that works crossplatform, with both NextJS and React Native, I recommend:
tRPC, as a favored choice amongst many, to call backend functions directly from the frontend (it uses React Query under the hood to handle caching, retries etc.), and gives the mich loved full stack TypeScript type inference.
If you decide you need GraphQL - like if you need to expose your API to third parties, or have strict frontend/backend team separation - then I recommend:
GQty.dev on the client, for inferred queries/mutations. Rapid dev speed. Move to URQL or Relay at scale.
pothos-graphql.dev on the server, for auto building the schema from your TS code (aka. code-first). Better than Nexus.
That will give you fullstack type inference with GraphQL like with tRPC, and either will give your the fastest dev speed, closest possible to Rails.
That’s the gist of it. Hope it helps!
- nickreese 4y agoThank you so much for pulling all of this together in a single place.
- redbar0n 4y agoMy pleasure! Inspired by your feedback I threw it into a blog post and expanded slightly on it: https://dev.to/redbar0n/the-railslaravel-experience-in-jsts-4n1c https://dev.to/redbar0n/the-railslaravel-experience-in-jsts-... If the post is useful, I’ll improve it based on feedback in the comments there.
- jstummbillig 4y agoThanks for the explanation! To expand: Remix being a fullstack framework (as in frontend and backend), does that mean it will in some way overlap/clash with Tamagui?
- redbar0n 4y agoAh, good question. No, Tamagui is agnostic to both backend and fullstack frameworks. I can’t think of any fullstack frameworks that prescribe a styling/animation solution. The fullstack’ness usually ends with the data loading between client/server, like with Remix. So no, Remix will not clash with Tamagui.