# Managed Projects Roadmap — Simple → Advanced Expand the existing Tecvico Django site so **clients define projects; Tecvico delivers them**. No freelancer marketplace — users submit briefs, your team quotes, builds, and ships. --- ## Is This Doable on the Current Stack? **Yes — and simpler than a marketplace.** No two-sided matching, escrow to third parties, or dispute flows between strangers. You are the sole provider. | Already in place | Reuse for managed projects | | -------------------------------- | ------------------------------------------- | | Django + PostgreSQL + Docker | Core backend | | `apps.pages` + contact form | Evolve into project brief submission | | File uploads (`contact_uploads`) | Brief attachments, deliverables | | `apps.products` CMS patterns | Service catalog / package pages | | Admin panel | Intake queue, quotes, assignment, delivery | | Email + templates | Status updates, quote sent, milestone ready | **New apps to add:** - `apps.accounts` — client login, org profiles (Plan 2+) - `apps.projects` — briefs, quotes, orders, milestones, deliverables - `apps.messaging` — client ↔ Tecvico threads per project - `apps.payments` — client invoicing via Stripe (Plan 2+) **Internal-only (admin):** team assignment, internal notes, time tracking — no public freelancer profiles. **Verdict:** Plan 1 is close to an enhanced contact flow. Plan 2–3 add quoting, payments, and a client portal — all standard Django. --- ## Plan 1 — Simple (MVP) · 3–6 weeks **Goal:** Clients submit project briefs online; Tecvico reviews and delivers off-platform billing if needed. | Milestone | Weeks | Deliverable | | ------------------ | ----- | ----------------------------------------------- | | M1 Client accounts | 1 | Sign up, login, password reset | | M2 Project briefs | 1–2 | Structured submission form + attachments | | M3 Status tracking | 2–3 | Client sees request status; email notifications | | M4 Admin intake | 3–4 | Review queue, status updates, internal notes | ### Feature detail **Accounts** - Email/password signup (client role only) - Profile: name, company, phone, timezone - Dashboard: list of my project requests **Project brief** - Fields: title, category (web, data, research, etc.), description, goals, budget range, desired deadline, reference links - Attachments: specs, mockups, datasets (reuse upload patterns) - Status: `submitted` → `under_review` → `quoted` → `accepted` / `declined` → `in_progress` → `delivered` → `closed` - Client can edit brief while status is `submitted` only **Notifications** - Email to client on status change - Email to admin on new submission **Admin** - Intake list with filters (status, category, date) - View brief + files; add internal notes (not visible to client) - Manually set status and paste quote text (PDF/email off-platform OK) **Out of scope:** online quotes, payments, messaging, milestones. --- ## Plan 2 — Medium (Client Portal) · 1–2 months **Goal:** Quote, pay, and deliver on-platform. Productized packages + custom projects. | Milestone | Weeks | Deliverable | | ------------- | ----- | ----------------------------------------------------- | | M1 Foundation | 1–2 | Plan 1 + email verify, service catalog pages | | M2 Quotes | 3–4 | Admin builds quote; client accepts/declines in portal | | M3 Payments | 5–6 | Stripe deposit + milestone invoices | | M4 Delivery | 7–8 | Milestones, deliverable uploads, revision rounds | | M5 Comms | 9–10 | Per-project messaging, client dashboard polish | ### Feature detail **Service catalog** - CMS pages for fixed offerings (e.g. “Landing page”, “Radiomics pipeline audit”) - Package tiers: scope summary, starting price, typical timeline - “Start from template” pre-fills brief fields **Quotes** - Admin creates quote from brief: line items, total, timeline, revision count included - Client receives email + in-portal quote view - Accept → order created; decline → brief archived with reason **Orders & milestones** - Order states: `awaiting_deposit` → `active` → `milestone_review` → `revision` → `completed` - Milestones: name, due date, amount, description of deliverable - Tecvico uploads files per milestone; client approves or requests revision (capped rounds) - Change requests: client submits add-on brief → admin sends revised quote **Payments (Stripe)** - Deposit on accept (e.g. 30–50%); remainder split across milestones - Checkout Session per invoice; receipt PDF - Refund policy flags (admin-only) **Messaging** - Thread per project: client ↔ assigned PM - File attach in thread; email digest on new message **Admin** - Assign internal owner (staff user) per project - Pipeline board: new → quoted → active → blocked → done - Basic reports: open projects, revenue this month **Out of scope:** e-sign contracts, org/team accounts, automated estimates, real-time chat. --- ## Plan 3 — Advanced (Full Client Platform) · 2–3 months **Goal:** Scalable delivery ops — enterprise clients, SLAs, automation, integrations. | Milestone | Months | Deliverable | | --------------- | ------ | --------------------------------------------- | | M1 Hardening | 1 | Plan 2 + 2FA, OAuth, org accounts | | M2 Sales flow | 1–2 | E-sign, ballpark estimator, kickoff booking | | M3 Delivery ops | 2–3 | SLA timers, internal time log, task checklist | | M4 Enterprise | 3–4 | Multi-user orgs, API, webhooks | | M5 Growth | 4–5 | Referrals, analytics, PWA, knowledge base | ### Feature detail **Auth & organizations** - Google / LinkedIn OAuth; optional 2FA - Organization account: owner + members, shared project list, role (viewer / submitter / billing) - Billing contact separate from project contact **Pre-sale** - Ballpark estimator: category + scope sliders → indicative range (admin-configured rules) - Discovery call booking (Calendly embed or built-in slot picker) - Digital SOW + NDA (DocuSign hook or in-app accept with audit trail) **Delivery workspace** - Shared project hub: brief, quote, contract, timeline, files, messages - Visual timeline / milestone Gantt for client - SLA badges: response within X hours, milestone due alerts (Celery + email) - Internal: task checklist, time entries per staff, capacity view (admin) **Revisions & scope** - Structured revision requests (what to change, priority) - Scope creep flow: auto-flag when revision count exceeded → change order quote **Payments+** - Multi-currency quotes; recurring maintenance plans (Stripe Subscription) - Pro-forma + final invoice; export for accounting **Enterprise & integrations** - REST API: submit brief, poll status, download deliverables - Webhooks: `quote.sent`, `milestone.delivered`, `project.completed` - SSO option (SAML) for large clients — optional phase **Knowledge & retention** - Client-facing FAQ / “how we work” tied to project phase - Post-delivery satisfaction survey + testimonial request - Referral codes (credit on next project) **Admin analytics** - Funnel: brief → quote → accept → complete - Utilization, avg delivery time, revenue by service line **Out of scope:** marketplace, freelancer payouts, native mobile apps. --- ## Comparison | | Simple | Medium | Advanced | | ------------------------------- | ---------- | -------- | ----------------- | | Project brief submission | ✓ | ✓ | ✓ + templates | | Online quotes | — | ✓ | ✓ + estimator | | Stripe payments | — | ✓ | ✓ + subscriptions | | Milestones & deliverables | — | ✓ | ✓ + SLA | | Client ↔ Tecvico messaging | — | ✓ | ✓ + digests | | Service catalog / packages | — | ✓ | ✓ | | Org / team accounts | — | — | ✓ | | E-sign / contracts | — | — | ✓ | | API / webhooks | — | — | ✓ | | Internal ops (assign, time log) | notes only | pipeline | full | --- ## Managed vs Marketplace | | Managed (this doc) | Marketplace (`marketplace-roadmap.md`) | | ------------ | -------------------------- | -------------------------------------- | | Who delivers | Tecvico team | Freelancers / clients hire each other | | Payments | Client → Tecvico | Escrow, payouts, commissions | | Complexity | Lower | Higher (trust, disputes, matching) | | Best when | You sell your own services | You broker others' work | --- ## Recommended Path 1. **Plan 1** — ship brief + status portal; keep quoting via email if needed. 2. **Plan 2** — add quotes and Stripe once you have repeatable delivery workflow. 3. **Plan 3** — when project volume needs SLAs, org accounts, and ops dashboards. *Timelines assume extending the current codebase; bespoke UI redesign adds ~20%.*