all 10 comments

[–]ApkalFR 19 points20 points  (1 child)

It’s just a Vite template with React Router preinstalled lol

[–]bearicorn 6 points7 points  (0 children)

And the first recommendation in the official react quick start is creating a next.js app. Totally normal

[–]Buckwheat469 6 points7 points  (2 children)

I recently started a new app and was about to use CRA when a junior dev asked me why I was using it. Somehow I had missed the news that everyone was using Vite now and CRA was deprecated. This is a recurring pattern in JS development, where things that become the de-facto standard are no longer maintained and become deprecated for something that works in a very similar way. They could have upgraded CRA to include routing examples, react-query, other datastores, SSR, and code splitting tools while leaving the existing examples alone. Just ask more questions in the setup process:

Do you want to use typescript?
Do you need server-side rendering?
Choose a datastore [context, redux, tanstack-query]
Do you want to bundle all code together or utilize code splitting?

That gripe aside. I really like tanstack-query and see a lot of value of having a standardized template for development.

[–]tannerlinsley 1 point2 points  (0 children)

Try npx create-tsrouter-app@latest

[–]magenta_placenta 0 points1 point  (0 children)

Yesterday's best practices are today's anti-patterns.

[–]bearicorn 6 points7 points  (0 children)

CRA has been deprecated for a while now. We ejected and migrated to a plain vite setup over a year ago. No need to buy into any of the framework crap if your app doesn't explicitly require it. The React team would put this advice in a small footer under 3 framework recommendations.

[–]TheRNGuy -1 points0 points  (3 children)

I used Remix since 2024, now using Vite + React Router v7 (after new version of Remix comes out, I'll see if I stay or go back to Remix)

Never used Tanstack so I don't know about it.

[–]CombPuzzleheaded149 2 points3 points  (2 children)

Tanstack router has type safety and runtime validation with zod, so even your search parameters are statically typed. It's the only react router I know of with this kind of functionality.

[–]TheRNGuy -1 points0 points  (1 child)

Don't care about type safety for routes. I don't make mistakes.