Inspiration

Every freelancer has faced the 👻 Problem. You deliver the work, the client goes silent, and 50% of your payment disappears with them. This happens because most freelancers — especially students and those in emerging markets — use vague, unprotected payment structures. They either ask for nothing upfront because they lack leverage, or they leave a massive chunk for final delivery because that feels "fair." Neither protects them.

Generic milestone tools, evenly split budgets (25/25/25/25) or rigid budgeting, predetermined templates that assume every project follows the same structure make this worse. I call this the "CPM Trap" — the tool thinks it knows the work better than the freelancer does.

What it does

Project Phaser reverses this. Instead of choosing from templates, the freelancer describes their project in their own words — specific deliverables, their type of work, any constraints. The AI reads 'their' context and generates milestone phases derived from what they actually said.

On top of that, the AI operates under a hardcoded "Anti-Ghosting Framework":

  • Phase 1 is always a 25% upfront deposit
  • Middle phases cover the core work with specific, measurable deliverables
  • The final handover is capped at 15%

This means the freelancer has secured ~85% of their total fee~ before the highest-risk phase.

How we built it

I built Project Phaser entirely through MeDo using four staged prompts — each one a verified checkpoint before the next was pasted.

The process taught me that building with AI is really a system design problem. The quality of the output depends entirely on the precision of the instructions: defining exact JSON schemas to prevent hallucinations, specifying state management rules to avoid conflicting data sources, and separating concerns clearly across prompts so each one builds cleanly on the last.

Challenges we ran into

1.The Phase-Splitting Logic: Early versions imposed fixed templates (Design → Brief → Concept → Handoff) regardless of the freelancer's actual work. It took several iterations to realise the right approach was letting the freelancer's own description drive the phases, with business protection logic as a constraint — not a template.

  1. JSON Reliability: Getting the AI to return clean, parseable JSON consistently required explicit schema definitions, raw output instructions, and a graceful error fallback. Without all three, the app would crash silently on malformed responses.

  2. Currency Localisation: The initial spec hardcoded USD. Project Phaser targets freelancers in emerging economies — India, Nigeria, Brazil — so a full currency selector with custom symbol support was essential, not optional.

  3. EmailJS Architecture: Hardcoding credentials in a frontend app exposes them in plain source code. The correct solution was a BYO-service model — each freelancer connects their own EmailJS account. Credentials are stored in local Storage on their own device and never touch the application server.

What's next for Project Phaser — AI Milestone Planner for Freelancers

Consider this the pilot for Project Phaser, advanced version in the making 🙌

Built With

  • emailjs
  • localstorage-api
  • medo
  • react
  • shadcn/ui
  • supabase-edge-functions
  • tailwind-css
Share this project:

Updates

Submission history