Introduction
As solo freelancers, we all love doing the actual work—coding, designing, building. What we don’t love is the "administrative friction." Jumping between spreadsheets for CRM, a clunky stopwatch for tracking hours, and a separate invoicing tool to get paid eats away at our billable hours.
To solve this, I spent the last few days building SoloBiz Hub for the Build with MeDo Hackathon. It’s a lightweight, AI-powered, single-user freelance back-office designed to run your independent business on autopilot.
Here is a deep dive into how I built it, the architecture behind it, and how an Agentic AI teammate changed everything.
The Tech Stack & Architecture
I wanted the app to be fast, highly responsive, secure, and visually striking. I settled on a modern full-stack architecture:
Frontend: React + Vite for a blazing-fast SPA development cycle.
Styling & UI: Tailwind CSS, utilizing a slick, premium dark-mode aesthetic with high-contrast neon cyan accents.
Animations: GSAP (GreenSock) to handle smooth stagger entrance animations for dashboard metrics and activity feeds on layout mount.
Database: PostgreSQL with native row-level security (RLS) to ensure freelancer data is cryptographically isolated.
Overcoming the "Relational Dead End" (The Build Journey)
Building with an AI-first platform like MeDo is incredible, but it requires a strategic approach to software engineering. During the early iterations, the app hit a relational dead end—the initial schema allowed adding clients but lacked a direct portal to create linked projects. Without projects, the time-tracker and invoice engines had nothing to pull from.
I structured my development prompts incrementally to iron out these edge cases:
Lifting State for Resiliency: In a React SPA, navigating away from a tab unmounts the component. To ensure the Active Timer stopwatch didn't wipe out when switching from the tracker to the CRM dashboard, I forced the state into a global React Context backed by localStorage synchronization.
Preventing Financial Data Destruction: I enforced strict deletion protection rules. If a user tries to delete a past client, the system checks the PostgreSQL database and blocks the action if linked project or invoice histories exist, saving critical financial records from accidental loss.
The Showstoppers: Agentic AI & Semantic Search
The absolute highlight of this project was extending its functionality using two powerful integrations that elevate it far beyond a standard CRUD dashboard.
- The Agentic AI Co-Pilot 🤖 Instead of just wrapping a basic, text-only chat window, I gave the AI assistant function-calling agency. Because it has secure access to the relational database, it acts as a literal virtual teammate.
You can open the floating widget and type:
"Log an hour and a half of UI design work under Aritra's website project."
The Agentic Co-Pilot autonomously parses the natural language, calculates the decimal time fraction, and executes a secure SQL INSERT mutation directly into the WorkLogs table—updating the frontend UI dynamically without the user ever clicking a single button.
- Conceptual Search with pgvector 🔍 Keyword matching is dead. If you're looking for a specific note you wrote six months ago but can't remember the exact client name, traditional search fails.
SoloBiz Hub converts your top-bar search strings into vector embeddings on the fly. It queries the notes_embedding column in the database using a cosine similarity formula via the pgvector extension. Now, typing "login bugs" instantly surfaces project notes containing phrases like "troubleshooting OAuth client tokens," capturing the conceptual meaning rather than just the text.
Automated, Bulletproof Invoicing
Manual invoicing is notoriously error-prone. SoloBiz Hub includes an atomic billing pipeline. In one click, a background service queries the WorkLogs table for unbilled entries (invoice_id IS NULL), sums the logs, multiplies them by the project’s specific hourly rate, and instantly generates a gorgeous, printable PDF invoice.
Simultaneously, it triggers a database transaction that maps the new invoice ID to those specific work logs, locking them out of future billing cycles to completely prevent double-billing.
Reflections on the Hackathon
Participating in the Build with MeDo Hackathon pushed me to rethink how rapidly we can scale a full-stack application when AI handles the boilerplate and heavy lifting, leaving me to focus entirely on advanced system architecture and edge-case handling.
I’d love to hear your thoughts on the Agentic AI implementation! How are you handling database mutations via LLMs in your own projects? Let me know in the comments below!
Top comments (0)