Custom Client Portal for Consultancy
Replaced Monday.com, Notion, and password managers with one internal platform
The Problem
Running a consultancy means juggling tools that weren't designed to work together. Tasks in one system. Client credentials in another. Invoices generated manually. File attachments scattered across email threads and cloud drives. Clients get a different view depending on which tool you're sharing.
The off-the-shelf options forced a choice. Use a project management tool and bolt on invoicing. Use an agency platform and deal with generic workflows. Either way, clients see an interface that wasn't built for them, and the team wastes time syncing information between systems.
For a small consultancy where margins matter, the monthly cost of stitching together three or four SaaS tools added up fast. And none of them handled credential sharing between developers and clients safely.
The Approach
I built a purpose-built portal handling tasks, invoices, file attachments, client communication, and credentials in one place. Role-based access means developers see internal tooling, clients see a clean interface focused on their project.
Credentials were the interesting design problem. Developers need API keys, database passwords, and service accounts. Clients need to share their own credentials securely. Using .env files and shared password managers creates audit nightmares. I integrated AWS Secrets Manager with the portal, so credentials are stored encrypted, access is logged per-user, and there's a clear audit trail of who accessed what and when.
Real-time features via Supabase Realtime handle in-app notifications, comments on tasks, and live collaboration. Email notifications fire for critical events. Invoice generation produces branded PDFs automatically from approved project milestones.
The portal runs on the same stack I use for client work, which means it's both a working product and a live reference architecture. Clients who ask about my tech decisions can see them deployed in the tool they're using.
The Stack
The Result
Replaced three SaaS subscriptions with one internal tool
Credentials shared securely between developers and clients with full audit trail
Real-time task updates and comments via Supabase Realtime
Automated invoice generation from approved project milestones
Interested in similar results for your project?
Start a conversation