DEV Community

Yuki Nishikawa
Yuki Nishikawa

Posted on • Edited on

🚀 “Next.js Made Me Slower” — Why I’m Building Refraim.ts

Currently in active development. Follow along as we reshape how fullstack Next.js apps are built — with structure, clarity, and momentum.


🧠 I Wanted Simplicity, Not Freedom — Why I’m Building Refraim.ts

Next.js 14 gave us power. But that power came wrapped in abstraction, complexity, and the App Router.

I didn’t want endless flexibility. I wanted to build fast — and enjoy it. But instead, I found myself battling routing trees, file conventions, and mental friction at every turn.

The App Router? Too abstract. Too clever. Too slow for real work.

I missed the magic of Rails. The clarity of Laravel. The joy of just building.

So I built Refraim.ts.


⚠️ The Problem: Next.js 14 Slows You Down

React, Next.js, and their ever-expanding constellation of meta-frameworks offer flexibility — in the form of total architectural ambiguity.

  • Choose your own file structure
  • Decide how to separate concerns
  • Build your own rules

But this freedom comes at a steep cost:

  • ⏳ Slower velocity
  • 😵 Team confusion
  • 🔁 Endless decision fatigue

What used to be “just the V in MVC” is now an everything-machine that asks you to wire up everything yourself.

App Router tries to be powerful — but ends up being confusing.


✨ The Vision: Make Web Dev Joyful Again

Building a fullstack app shouldn’t feel like defusing a bomb made of config files.
It should feel like typing your intent and watching your app come to life.

My philosophy:

  • ✅ Structure should be generated, not improvised
  • ✅ Intent should become code
  • ✅ Clarity > flexibility

Laravel nailed this. Rails was built on it. Refraim brings that magic — to the Next.js + TypeScript ecosystem.


🚀 Introducing Refraim.ts — A Framework That Chooses For You

Refraim.ts is a batteries-included fullstack framework on top of Next.js 14 that:

  • 📁 Generates a clear project structure automatically
  • 🔤 Uses a declarative routing DSL (defineRoute())
  • 🔃 Separates schema, service, controller, and UI
  • 🛠️ Offers CLI tools to scaffold features with smart defaults

No more wiring things by hand.
No more "Where should this code live?"
No more "It depends."


🧭 Refraim Philosophy: Schema. Service. Structure.

A new MVC for modern fullstack apps.

  • Each file has a single, clear responsibility
  • Features are self-contained and expressive
  • UI expresses intent, motion, and clarity
  • You never touch the App Router manually

🔍 What Refraim Does Differently

Compared to Next.js

  • ✅ Opinionated routing structure
  • ✅ CLI-generated features
  • ✅ Fully typed page + controller generation

Compared to tRPC

  • ✅ No magic proxies or hidden behaviors
  • ✅ Explicit service layers and controller logic

Compared to Remix

  • ✅ No nested route confusion
  • ✅ Clear separation of domain logic and UI

🎨 Rebirth UI — Visual Clarity, Instantly

Tailwind CSS, Radix UI, and Framer Motion are powerful — but integrating them consistently takes real expertise.

Refraim wraps them into a single, tokenized design system you can trust:

npx rebirth-ui:init
Enter fullscreen mode Exit fullscreen mode

Get:

  • 🎨 Design tokens
  • 🧩 Accessible UI components
  • 💫 Built-in motion primitives

Most kits give you pieces. Rebirth gives you a philosophy.


🧙 CLI Magic: Rails-Like Momentum for Next.js

npx refraim make:feature users
Enter fullscreen mode Exit fullscreen mode

Creates:

  • schema.ts (Zod)
  • service.ts (Prisma logic)
  • controller.ts
  • route.ts
  • Optional typed pages
npx refraim routes:generate
Enter fullscreen mode Exit fullscreen mode

Automatically transforms route.ts into actual Next.js App Router files. Zero boilerplate. No ambiguity.

“You write intent. Refraim writes the app.”


🎯 Who It’s For: The Builders Who Want to Ship

Refraim.ts is built for:

  • 👩‍💻 Indie developers who want to launch SaaS apps fast
  • 🧑‍🤝‍🧑 Early-stage product teams moving without PMs
  • 🧪 Makers who are tired of battling config, routes, and folder hell

If you want to:

  • Move fast without sacrificing structure
  • Build apps without stopping to Google folder naming debates
  • Actually enjoy shipping again

You’re who we’re building for.


🧭 In Closing: Next.js Made Us Free. Refraim Helps Us Move.

React gave us freedom.
Next.js gave us abstraction.
Refraim gives us flow.

Frameworks should protect us from unnecessary choice.
Refraim.ts is my answer to the chaos:

  • 💡 A system that embraces clarity
  • ⚙️ A structure that gets out of your way
  • 🏃 A tool that turns motion into momentum

Freedom is beautiful. But clarity builds things.

If this resonates with you, follow along. Refraim.ts is coming soon.


🚀 Refraim.ts Is Coming. Join the Movement.

This project is still in early development — but if this vision resonates with you:

🌟 Give it a star on GitHub to follow progress and show your support.

→ Star Refraim.ts on GitHub

Your early support helps shape the future of fullstack development.

Top comments (5)

Collapse
 
nevodavid profile image
Nevo David

honestly love the focus on getting rid of all the config drama - it always makes me stall out. you ever feel like too much freedom actually just gets in the way long run?

Collapse
 
yukinisihikawa profile image
Yuki Nishikawa

Absolutely — I’ve hit that exact wall many times.

At first, freedom feels like a feature.

But when you’re trying to ship, every micro-decision—routing, folder structure, even naming—adds up.

The worst part? That subtle slowdown creeps in over weeks, not hours. And you don’t even notice until momentum is gone.

That’s the core reason I’m building Refraim.ts:

To shift from “you decide everything” to “we’ve made the right choices so you can move.”

Curious — what’s been the biggest freedom trap in your experience?

For me, it was always dynamic routing + state management hell..

Collapse
 
yukinisihikawa profile image
Yuki Nishikawa

Thanks again for always checking out my projects — Refraim.ts makes the third one, and it means a lot that it keeps resonating.

I really appreciate it. Hope to keep building things worth your time!

Collapse
 
yukinisihikawa profile image
Yuki Nishikawa

🙏 Thanks for reading!

This project is still in early development, and I’d love to hear your thoughts.

🛠️ What would you expect from a fullstack framework like this?

💭 What parts of fullstack dev slow you down the most?

Feel free to open issues, star the repo, or just drop a thought here.

👉 GitHub: github.com/Refraim-ts/Refraim.ts

Collapse
 
yukinisihikawa profile image
Yuki Nishikawa

🟠 Quick update:

I also posted this on Hacker News to hear from the community there:

🔗 Ask HN: Would you use a CLI-first Next.js framework like Refraim.ts?

If you're coming from HN, welcome! And if you're not—feel free to jump into the thread. Would love to hear your take.