React Frameworks
Opened this issue · 0 comments
coryhouse commented
My Tweet thread on create-react-app alternatives
Related: My take on how to choose between SPA and SSR
Client-rendered
Content-focused / Static site
- Gatsby - Deferred Static Generation, integrated GraphQL
- Astrobuild - Can mix with Vue, Angular, Svelte, etc too. Can add dynamism via API calls during build.
- Docusaurus
Server-rendered, no DB included - comparo vid
- #78 - Built-in routing, image optimization, easy deploy. More
- #79 - Built-in file based routing, Embraces web standards to streamline forms, co-locates server code inside components via
loaders
. Put links in head by exportinglinks
function. CSS is automatically tied to the page. Fast build built in Go. More #79. Next vs Remix by Ryan Florence and here's another Next vs Remix blog post - Gatsby (added SSR in V4)
- After.js (Like Next, but with React Router routing)
- t3app - Next, but with extra opinions like Prisma, Tailwind, trpc with Zod
Server-rendered, DB included
- Redwood - Unlike Blitz, built from the ground up. But much like Blitz, but uses GraphQL instead of REST with Prisma. end-to-end test suite, Storybook, logging, Auth, MSW, Router, Prerendering, Webhook security and testing. The underlying architectures of Next and Redwood are fundamentally different. Redwood's client is an SPA with prerender-by-route config. Cell components are a unique innovation for data fetching + state, resembling "islands of interactivity" design. Redwood's multi-client, GraphQL API is secure-by-default using pre-configure defaults and Auth directives (which can also transform data). The API Services are another innovation and include data validators. And it's cache-ready, meaning it just requires infra setup to enable.
- Blitz - Next.js extensions for API, Jest, ESLint, Prettier, Auth, command line based file generators, and Prisma DB built in. Abstracts the API into a compile step and generates plain functions that can be called on the client. Funded via Y-Combinator because of their cloud offering.
Not React, but similar
Preact
SolidJS
Marko - Also Marko vs React
Qwik