The Problem
As a freelancer on Fiverr and Upwork, I constantly juggled 5+ different tools — one for invoices, another for time tracking, a spreadsheet for clients, and copy-pasting proposals manually. There was no single place to run my freelance business.
What I Built
WorkNest is a full-stack freelancer productivity dashboard that replaces all those scattered tools with one beautiful command center.
Core Features:
- Client CRM — track clients, platforms, earnings, and notes in one place
- Kanban Project Pipeline — drag-and-drop board with 5 stages: Lead → Active → In Review → Completed → Paid
- Time Tracker — start/stop timer per project, weekly hours summary, full log history
- Invoice Generator — professional invoices with line items, templates, PDF export, and shareable client payment links
- Stripe Payments — clients pay directly from the invoice with one click, status updates automatically
- Smart Invoice Notifications — automatic Slack alerts when invoices are paid or overdue 15+ days, plus professional email reminders sent to clients
- AI Proposal Writer — powered by Ollama's gpt-oss:120b or Groq's LLaMA models, generates compelling, personalized Fiverr/Upwork proposals using your freelancer profile and Upwork's official proposal guidelines
- Revenue Analytics — live charts showing monthly revenue, platform breakdown, project status, and hours tracked
How I Built It with MeDo
I built WorkNest entirely through multi-turn conversations with MeDo — no manual coding. Here's how I structured the build:
- Foundation prompt — described the full app structure, dark glassmorphism UI, sidebar navigation, and dashboard layout in one detailed prompt
- Feature-by-feature iteration — each feature (Time Tracker, Invoices, Proposals, Notifications) was built through dedicated follow-up prompts
- Database migration — prompted MeDo to migrate all data from localStorage to a real backend database with proper tables
- Smart Notifications — added automated Slack + email notifications that trigger on invoice status changes and overdue thresholds
- Bug fixes — used targeted prompts to fix specific issues (sidebar scroll, price input formatting, chart data queries)
- Polish — final prompts for animations, empty states, onboarding modal, and landing screen
Most Impressive Feature MeDo Helped Create
The Smart Invoice Notifications System is the standout feature. MeDo generated:
- Real-time invoice monitoring via Supabase
- Slack webhook integration sending instant alerts when invoices are paid or overdue
- Automated email service that sends professional payment reminders to clients
- Duplicate prevention with status flags
- Zero manual follow-ups required
The AI Proposal Writer also stands out — MeDo generated a full backend API route that accepts freelancer profile, platform, tone, and job description, calls either Ollama or Groq's cloud API with a carefully engineered system prompt, and returns a personalized, compelling proposal under 150 words with scoring on Relevance, Personalization, Clarity, and CTA strength. Groq was added as an alternative for faster inference.
APIs & Integrations Used
- Ollama Cloud API — AI proposal generation using gpt-oss:120b model
- Groq API — fast LLaMA-based proposal generation as alternative to Ollama
- Stripe — payment processing with Checkout, webhooks, and automatic invoice status updates
- Slack Webhooks — real-time invoice notifications
- Resend API — transactional email sending with beautiful HTML invoice templates
- MeDo Database — full backend with tables for clients, projects, timeLogs, invoices, proposals, and freelancerProfile
- Recharts — revenue and analytics charts
Challenges
The biggest challenge was the Stripe webhook integration — getting signature verification working correctly with MeDo's Supabase backend required understanding how raw request bodies must be preserved for Stripe's constructEvent() function.
The Smart Notifications system required integrating Slack webhooks with Supabase Edge Functions while preventing duplicate messages and handling errors gracefully.
The AI proposal quality was another challenge — getting the system prompt right so proposals feel human, specific, and follow Upwork's official guidelines took several iterations. Adding Groq as an alternative required testing both models for speed and quality trade-offs.
What I Learned
MeDo is remarkably capable at full-stack generation when you structure prompts correctly — being specific about data flow, API endpoints, and UI behavior in each prompt produces production-quality code. The key insight was treating each prompt as a precise engineering spec, not a vague request. Real-time integrations (Slack, webhooks, email) work best when you spell out the exact trigger conditions and error handling upfront. For AI features, offering multiple model providers (Ollama vs Groq) gives flexibility for performance and cost optimization.
Built With
- medo
- node.js
- ollama
- postgresql
- react
- recharts
- resend
- stripe
- supabase
- tailwind-css
Log in or sign up for Devpost to join the conversation.