Simple Client Portal
A no-fuss project portal for freelancers and small agencies.
Give clients one calm place to understand project status and next steps.
Launch readiness sample
78%
example score
Original brief input
A lightweight client portal for freelancers and small agencies that want fewer scattered client updates.
Positioning
A client-facing workspace that feels lighter than project management software and more professional than email threads.
MVP scope
Client login, project timeline, file links, status updates, invoice links, approvals, and notifications.
Launch angle
Target freelancers who want to look more organized and reduce repetitive status-update emails.
Generated asset preview
This is the kind of package a full BSLaunchKit project can expand into.
Landing page copy
Hero
A calmer way to keep clients updated.
Subheadline
Give every client one simple project page for status, files, next steps, approvals, and invoice links.
Product Hunt pack
Tagline
A lightweight client portal for freelancers and small agencies.
Maker comment
This is built for freelancers who want to look organized without forcing clients into heavy project management tools.
Lead tracker preview
A simple starting point for tracking outreach, replies, and first opportunities.
| Lead | Source | Signal | Status |
|---|---|---|---|
| Web designer | Complains about status emails | Warm | |
| Small agency owner | Direct outreach | Needs client file hub | Qualified |
| Consultant | Freelancer community | Uses Notion manually | Follow up |
Full AI build prompt
A complete prompt that can be pasted into Codex, Cursor, Claude Code, or another coding agent to scaffold the product.
Build a production-ready SaaS called Simple Client Portal. Goal: Create a lightweight client portal for freelancers and small agencies that want fewer scattered client updates across email, docs, file links, and invoice messages. Stack: - Next.js App Router with TypeScript - Prisma ORM with PostgreSQL - Auth.js for freelancer login - Magic-link access for clients - Stripe for subscription billing - Tailwind CSS and shadcn/ui - File-link support using external URLs first, storage integration later - Email notifications via Nodemailer or Resend Core data models: - User: id, name, email, createdAt - Client: id, userId, name, email, companyName, notes, createdAt - Project: id, userId, clientId, name, status, description, startDate, dueDate, createdAt, updatedAt - ProjectUpdate: id, projectId, title, body, status, createdAt - FileLink: id, projectId, label, url, createdAt - Approval: id, projectId, title, description, status, requestedAt, approvedAt - InvoiceLink: id, projectId, label, url, status, amount, dueDate - ClientAccessToken: id, clientId, tokenHash, expiresAt, createdAt Pages: - Dashboard: active projects, pending approvals, overdue invoices, recent updates - Clients: list, create, edit, client detail - Projects: list by status, create project, project detail - Project detail: timeline, updates, files, approvals, invoice links - Client portal public view: read-only project status, timeline, files, approvals, invoices - Settings: profile, notification preferences, portal branding - Billing: Stripe checkout and customer portal Client portal behavior: - Freelancer can invite a client by email - Client receives a magic link to view their portal - Client can view updates, files, invoice links, and approval requests - Client can approve or reject approval requests with a short note - Client cannot access other clients or internal freelancer notes UX requirements: - Keep the interface calm, professional, and easy for non-technical clients - Show project status clearly: On track, Waiting on client, At risk, Complete - Use a timeline view for updates - Add strong empty states for first client and first project - Make the client portal mobile-friendly because clients often open links from email Business rules: - Freelancers can only manage their own clients and projects - Client access must be token-based and scoped to the correct client/project - Expired client tokens must not grant access - Approval actions should be timestamped - Email failures should be shown but should not delete portal data Acceptance criteria: - A freelancer can create a client, create a project, add status updates, add file links, request approval, add invoice links, invite the client, and let the client view the portal through a magic link - The app must be responsive, type-safe, and protect all user-owned resources