abhay-rana

abhay-rana

Create-modern-react — production-ready React 19 + TypeScript + Tailwind + shadcn in 15 seconds

Bit of a personal itch-scratch post — curious if anyone else runs into the same thing.

Every time I kick off a new React project I end up doing the same hour of setup: wire TypeScript strict mode, add Tailwind, pick a UI library, set up routing, build an API layer, configure ESLint, add path aliases… It’s not hard, just boring. And I kept making slightly different decisions each time, so projects never felt consistent.

So I spent some weekends building a CLI that does all of that for me: create-modern-react

npx create-modern-react my-app
cd my-app
yarn dev

The defaults I landed on after a few real projects:

  • React 19 + TypeScript 5.9 strict
  • Vite with SWC (noticeably faster than Babel for larger codebases)
  • Tailwind CSS 4
  • shadcn/ui for components (Button, Input, Card, Skeleton already wired)
  • Wouter for routing — it’s 2KB vs React Router’s much larger bundle, and I’ve found it covers 95% of what I need
  • Axios with a typed wrapper so API calls look like getApi<User[]>('/users') instead of raw fetch wrangling
  • React Hot Toast, Error Boundary, and ~/ path aliases included

A few hooks I kept copy-pasting between projects are baked in too: useLoader, useDebounce, useCancelToken.

During setup the CLI asks if you want Redux Toolkit, React Hook Form + Zod, Ant Design instead of shadcn, or Husky for git hooks. Nothing gets added unless you ask for it.


I’ve used it as the base for a couple of my own projects now (a resume builder and an e-commerce frontend) and it’s held up well. But I’m aware my defaults are just my defaults — other people’s setups will differ.

Curious what you all think:

  • Is Wouter a dealbreaker for you, or do you default to React Router anyway?
  • Any obvious gaps in that stack that you always end up adding yourself?
  • Would you swap anything out?

GitHub if you want to poke around:

Happy to answer questions or take suggestions — it’s MIT and still pretty early.

Where Next?

Popular Frontend topics Top

mafinar
Wanted to try out Surface for awhile now and yesterday finally had the time for it, the developer experience is amazing and I decided to ...
New
New
New
vLev
As a 16y/o with enormous amounts of time during quarantine, I decided to learn neural networks. To further understand the concept, I deci...
New
First poster: bot
Open source CSS framework for data visualization. Contribute to ChartsCSS/charts.css development by creating an account on GitHub. ...
New
First poster: bot
Explore DOM Events. Learn how the DOM Event system works through exploration
New
First poster: malloryerik
petite-vue is an alternative distribution of Vue optimized for progressive enhancement. It provides the same template syntax and reactivi...
New
First poster: bot
This release represents a huge improvement for elm-pages in terms of features, developer experience, and performance. It introduces a com...
New
First poster: bot
Assembler CSS. Assembler CSS is a highly performant utility-first framework that allows you to quickly prototype and build modern websit...
New
First poster: bot
Capacitor: Cross-platform native runtime for web apps. Build iOS, Android, and Progressive Web Apps with HTML, CSS, and JavaScript
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
PragmaticBookshelf
Free and open source software is the default choice for the technologies that run our world, and it’s built and maintained by people like...
New
PragmaticBookshelf
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
PragmaticBookshelf
Design and develop sophisticated 2D games that are as much fun to make as they are to play. From particle effects and pathfinding to soci...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
RobertRichards
Hair Salon Games for Girls Fun Girls Hair Saloon game is mainly developed for kids. This game allows users to select virtual avatars to ...
New
PragmaticBookshelf
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New
Fl4m3Ph03n1x
Background Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New