DEV Community

Cover image for Building create-next-mui: Small Improvements That Made a Big Difference
Vikash Kumar
Vikash Kumar

Posted on

Building create-next-mui: Small Improvements That Made a Big Difference

Hello,
I'm Vikash Kumar!

When I first published create-next-mui, my goal was simple.

npx create-next-mui
Enter fullscreen mode Exit fullscreen mode

I wanted developers to stop repeating the same Material UI setup every time they created a new Next.js project.

Since then, I've been using the CLI myself.

And that's where I discovered something interesting.

The biggest improvements weren't new features.

They were the tiny details you only notice after using a tool every day.

๐Ÿ“ฆ Better package management

One thing that always bothered me was the generated package.json.

The dependencies worked...

โ€ฆbut after installing plugins, they weren't always nicely ordered.

It wasn't a breaking bug.

It was simply messy.

So I rewrote the dependency merging logic.

Now every generated package.json keeps dependencies consistently sorted, making it much easier to scan and maintain.

It seems like a small improvement.

But small details add up.

โšก Oxlint joins the CLI

Another feature I've been excited about is Oxlint.

If you haven't tried it yet, it's incredibly fast.

Instead of replacing ESLint entirely, I decided to let them work together.

Why?

Because my template relies on ESLint plugins like:

  • perfectionist
  • eslint-plugin-unused-imports

These plugins still provide capabilities that Oxlint doesn't fully support today.

So instead of choosing one over the other...

I combined them.

The workflow now looks like this:

  • โšก Oxlint provides blazing-fast diagnostics while you're coding.
  • ๐Ÿงน ESLint handles code organization, import cleanup, and formatting rules.

The result is a faster development experience without losing the benefits of ESLint.

I think it's a practical balance until Oxlint's ecosystem grows further.

๐Ÿ“ฅ One less command to type

Another small change...

After scaffolding a project, the CLI now asks:

Would you like to install dependencies?

If you answer Yes, it automatically runs:

npm install
Enter fullscreen mode Exit fullscreen mode

No extra command.

No extra step.

Just start coding.


It's becoming more than a project generator

When I started this project, it simply generated a Next.js + Material UI project.

Today it can:

  • scaffold complete projects
  • install optional plugins
  • support Oxlint
  • automatically install packages
  • keep generated dependencies organized

Each release makes the experience a little smoother.

And I think that's what good developer tools should do.

Not necessarily add dozens of features...

Just remove one more piece of friction every time you use them.


I'd love to know:

What's one small feature in a developer tool that saves you time every single day? ๐Ÿ‘‡

Top comments (1)

Collapse
 
thatonevikash profile image
Vikash Kumar