Freelancers are among the most active in the world. But most of them are managing clients on WhatsApp, tracking projects in their head, and writing invoices in chat messages.
I built SoloDesk to fix that.
What is SoloDesk?
A complete freelancer workflow tool | client CRM, project pipeline with milestones, invoices, proposals, and an AI client communicator. All in one place.
The Feature That Makes It Different | Client Portal
Every project gets a unique public URL:
solodesk-967408890070.asia-south1.run.app/portal/[token]
Your client opens it. No login. No signup. They see:
- Project progress bar (based on milestone completion)
- Full milestone timeline with statuses
- Updates feed you've posted
- Invoice summary
- A reply box to message you
One link. That's it.

AI Client Communicator
Built on Groq's llama-3.3-70b | generates professional messages for 10 common freelancer scenarios:
- Late payment follow-ups
- Scope creep responses
- Project delivery notifications
- Client ghosting follow-ups
- Rate increase notices
- And more...
Supports English and Urdu output. Because not every Pakistani freelancer is comfortable writing formal English.
The Stack
Next.js 14 App Router + Supabase + Groq AI + Google Cloud Run + Tailwind CSS.
Deployed on Cloud Run for the hackathon requirement. Mobile-first — bottom tab nav on mobile, sidebar on desktop.
What Was Hard
The Windows + gcloud builds submit bug
Spent 2 hours fighting a Windows file permission error with gcloud builds submit. The fix was switching to Docker locally | build the image with Docker, push to Google Container Registry, deploy from there. Bypasses the gcloud bug entirely.
Prompt engineering for Urdu
Getting proper formal Urdu (not Hinglish) required explicit instructions in the system prompt. Still something to improve in Phase 2.
TypeScript strict mode in Docker
Build passed locally but failed in Docker due to strict TypeScript errors I hadn't caught. Lesson: always run npm run build locally before pushing to Docker.
Live
Solodesk
Would love feedback especially on the portal UX and AI message quality.
What would you add?