DEV Community

Yanson Ferdinand
Yanson Ferdinand

Posted on

I Spent 8 Months Building a Dashboard Template (With a 2-Month Stretch Where I Just Stopped)

Every admin dashboard I've ever built starts the exact same way: a sidebar, a header, a theme toggle, four stat cards, one data table. By the time that's done, I've already spent a week or two and haven't touched the actual feature I set out to build.

So back in November 2025, I decided to just build the thing once, properly, and never do it again. That "once" ended up taking 8 months.

The part I don't usually admit in these posts

Somewhere around month 3 or 4, I hit a wall. Not a technical one — a creative one. The components were working, the architecture was solid, but I had zero ideas for how the actual pages should look. I'd open Figma, stare at it, and close it again. This went on for about 1-2 months. No commits, no progress — the project just sat untouched while I was out of ideas.

What got me moving again was lowering the bar. I stopped trying to make every page "impressive" and just started shipping pages that were functional and clean. Momentum came back once I stopped perfectionism-blocking myself.

What I ended up with

  • React Router 7 (SPA mode) + React 19
  • Tailwind CSS v4 — theming via CSS variables, no config file needed
  • shadcn/ui + Radix UI primitives
  • TypeScript throughout
  • Redux Toolkit for theme/sidebar state
  • Recharts + TanStack Table
  • Framer Motion

Dark mode isn't just a CSS filter slapped on top — every chart, table, and page was checked for contrast in both themes. It's also responsive down to 375px, not just the landing dashboard.

20 pages total: 4 dashboard layouts (Overview, AI, Analytic, Logistics), plus the pages most templates skip entirely — a working email client UI, calendar, invoice page, file manager, chat, and the usual auth/profile/form pages.

Live demo: https://ferforge-ui.netlify.app/

Honest notes (because I'd want to know this before clicking around): it's frontend-only. Mock data, no backend, no auth wired up — you bring your own API. It's also built on React Router 7, not Next.js, so if your stack is Next.js the components/styling port over fine but routing won't.

It's up on Gumroad if you want the source: https://yansenferd.gumroad.com/l/ferforge-ui

Would genuinely love feedback from other devs here — what do you always end up rebuilding for every dashboard project that templates never seem to include?

Also open to freelance/contract work if you need something custom built — feel free to reach out at yansenferdinand6@gmail.com.

Top comments (0)