New UI to Legacy System with React and Tailwind
Bolt on a new client with modern design instead of rewriting current UI — keeps existing system working and faster path to change.
The Challenge
FeedXL Nano’s admin portal had grown over the years into a patchwork of React components and custom CSS. It worked for internal use, but wasn’t something we could put in front of customers. The UI was dated, inconsistent, and not designed for client self-service.
The existing application also lacked proper authentication. Opening this up to clients meant we needed real auth — username/password login, password resets, secure sessions.
We wanted to give customers access to their data — dashboards, reports, account management — but building this into the existing portal would mean fighting legacy code at every step.
The Approach
Rather than retrofitting the admin portal, we built a separate client-facing site from scratch:
- Introduced Auth0 for client authentication
- Built a new React frontend with Tailwind, designed specifically for customer use
- Connected to the existing backend APIs — they were already solid
The admin portal continued running as-is. The new client site talked to the same backend.
Implementation
The client site was built as its own application — clean codebase, no legacy baggage. We focused on the views customers actually needed: dashboard, nutrition reports, and account settings.
Tailwind gave us a consistent design system from day one. Auth0 handled login, password resets, and session management without us building any of it.
Results
Customers now have a dedicated portal that’s modern, fast, and easy to use. It’s completely separate from the admin tooling, so each can evolve independently. The backend serves both without duplication.