Denshin / Blog / Process
We ship the admin panel with the product. Always.
Why we treat the admin panel as part of v1, not a follow-on, and why that single decision has outsized effects on client trust and product quality.
Denshin Team · Product & Engineering · 12 April 2026 · 2 min read
A surprising number of teams treat the admin panel as a follow-on engagement. The product ships, the marketing site ships, and then six weeks later somebody realises that a real human has to manage the content, the users, and the orders, and a small team gets pulled into building a CMS.
We don't do this. The admin panel ships with v1, on the same domain, with the same auth. Three reasons.
First, the people who pay us want to feel in control of their product on day one. Asking a client to email us a CSV every time they want to change a hero banner is a wonderful way to teach them that we are slow.
Second, the cost of building the admin alongside is much smaller than people assume. The same Zod schemas, the same API handlers, the same TanStack Query hooks. The form dialogs are the part that takes time, and "form dialog with image upload and validation" is a copy-paste exercise once you have one.
Third (and this is the one that usually surprises clients), the admin is the best dogfooding we have. If our own team can't comfortably create a service, or upload a project image, or schedule a blog post, neither can the client. We've found bugs in the public site by trying to add content through the admin. The admin trips up on edge cases the marketing site quietly hides, and that's exactly the value.
The bar we hold ourselves to: a non-technical person can run the entire site without us. If they can't, the admin isn't done.
One more note. The admin doesn't have to be pretty. It has to be fast and predictable. Our admin panels look almost identical from project to project: same sidebar, same data table, same form dialog pattern. Clients don't notice and they don't care. They notice when a save is fast or slow, when an upload works or doesn't, when an error message tells them what to do. Spend the design budget on the public site. Spend the engineering budget on the admin.
Tags: Product, Architecture, Admin Panel, Process
All posts · Work with Denshin