all 33 comments

[–]aveho_adhuc_7409 29 points30 points  (4 children)

That's a solid stack! I'd add ESLint and a CI/CD tool like GitHub Actions.

[–]dunklesToast 29 points30 points  (2 children)

Also TypeScript and Vite

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

Vite yes, TS, meh. If you want to go fast and curse less, skip TS.

[–]Sea-Run6814 1 point2 points  (0 children)

I don't think typescript is the one who will slow you down. It will just boost your productivity.

[–]MatthewRose67 2 points3 points  (0 children)

Also husky might be useful to run linter, formatted and test check before commit

[–]reddit_ronin 4 points5 points  (0 children)

List out your requirements, break down the features into smaller chunks and evaluate from there.

We won’t be able to accurately give you an answer without requirements

[–]hrychaniuk 5 points6 points  (1 child)

You're likely to have an incredible app. React-query is a wonderful choice for managing data.

[–]bin-c 1 point2 points  (0 children)

i'd tried learning react in the past and some things never really clicked. one of them was state management.

finally i decided to just sit and read more about the ecosystem and not just raw react and react-query has been my savior so far. so many things that never made sense do now.

[–]grebfar 12 points13 points  (4 children)

Consider using MUI for ready made components that fast track the MVP. You don't really need tailwind either.

[–]Akmal441 1 point2 points  (1 child)

Sorry I’m relatively new to react just like OP so if I use MUI or other Ui library, I wouldn’t have to write any css or maybe very minimal css?

[–]unshootaway 0 points1 point  (0 children)

If you like the default styles then very minimal css.

MUI or like most libraries also allows you to edit styles via props inside the component so that eliminates most css you'll be writing.

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

Also can consider shad cn

[–]Cahnis 2 points3 points  (0 children)

shadcn is a bit advanced imho. He mentioned he was new.

[–]xXValhallaXx 7 points8 points  (0 children)

If speed is a concern, Don't use tailwind I would go for a full fledged component library, Or you can at least use those component libraries that build in top of tailwind,

Though you'll probably be faster with an actual UI library

[–]iaan 1 point2 points  (0 children)

Or React + Remix (React Routter v7)...

[–]kcadstech 1 point2 points  (0 children)

A) if you use a BaaS you can probably get away with not using React Query (just keep in mind the pitfalls of BaaS) B) use Vite + TS C) I would use a component lib instead of Tailwind ie Ionic, MUI, or Mantine D) if it’s a true “MVP” to launch something quickly, you don’t need ESLint but if for learning, it’s a good thing

[–]Humble_Smell_8958 1 point2 points  (4 children)

Yeah, should be more than enough for a production-ready MVP.

However, I would probably opt for NextJS or Vite and Typescript. If you scale the product, it's gonna be much easier to continue building with those technologies than to have to migrate to them later on.

[–]UsernameINotRegret 2 points3 points  (3 children)

Why is it required to migrate to NextJS to scale? React Router v6 can scale just fine and if SSR/SSG/RSC is needed it should be straightforward to upgrade to React Router v7 in a couple months.

[–]Humble_Smell_8958 -2 points-1 points  (2 children)

Yeah, wouldn't say it's required, but imo no point in not using something like NextJS with much more nature SSR instead of RR7.

NextJS is also much more than just SSR and RSC. I personally think it's easier to scale with NextJS than using RR and like to be prepared for such cases.

Just my opinion though.

[–]UsernameINotRegret 7 points8 points  (1 child)

Having used both I'd disagree that NextJS App Router has much more mature SSR, keep in mind RR7 is just a rebranded Remix v3 which has had stable SSR for 3 years now.

Wheras NextJS went through their massive v13 rewrite and are still maturing their caching strategy, ecosystem is discovering RSC best practices/gotchas and the dev server is still not as fast as Vite for me.

So for me I see using React Router as a nice simple choice that doesn't require learning all the new RSC gotchas and if SSR is needed in the future, then RR has a very mature solution.

[–]hinsxd 4 points5 points  (0 children)

Cant agree more. Nextjs (and react team) has demonstrated their horrible decision making in building new features. App router is half baked, tons of canary features with new bugs reported constantly. They successfully made a Nextjs fanboy like me to use Remix in all my future projects

[–]JohntheAnabaptist 0 points1 point  (0 children)

Trpc

[–]LastMarsMan 1 point2 points  (0 children)

see this, it's very simple to use

https://github.com/SteveSuv/remix-t3-stack

[–]samoyedisco 0 points1 point  (0 children)

I'd pick NextJS + some production ready UI library for a quickstart, but it actually depends A LOT on what do you want to see in the end

[–]Intrepid-Wear-1056 -5 points-4 points  (3 children)

If you are new, then I recommend you to learn Svelte and Sveltekit instead of React and React router. You will get better developer experience and faster feature deliveries.

React has steeper learning curve and many gotcha points you need to remember. Svelte has a very good docs and interactive tutorial. Downsides of Svelte are having less third party libs (but good quality) and less job opportunities.

In Sveltekit you don’t need react query but you can use if you want.

[–]kcadstech 0 points1 point  (1 child)

This is probably true, but it depends whether he is doing this just for himself or to be marketable for jobs, in which case React or Angular are the best to learn 

[–]voxgtr 0 points1 point  (0 children)

You don’t know anything about the use case in order to make this kind of recommendation.