# How to Vibe Code Your Own Portfolio Coach (and Stop Paying for It)

> AI portfolio intelligence for UK investors

- Site: https://portfoliocoach.co.uk
- Category: Fintech / Wealth Management
- Verdict: **Solid side project** (72/100 vibecodeable)
- Estimated effort: 2-3 weekends

## Verdict

Build a personal subset for yourself in a couple of weekends; the main catch is wiring up reliable UK market price feeds and keeping the AI prompt context clean.

Portfolio Coach is an ideal weekend or side-project build if you want a clean dashboard for your own UK investments rather than paying consumption credits. The core UI is a classic Next.js dashboard with charts and tables, backed by a SQLite database. The real engineering work is twofold: fetching live UK fund prices (which often lack clean ticker symbols on free US-centric APIs) and constructing a clean JSON payload of the user's asset allocation to inject into an LLM system prompt. Since you are building this for personal use, you can skip live Plaid bank connections entirely—manual CSV imports or simple holdings forms are plenty. Expect to spend 2 weekends wrestling with portfolio math and LLM prompt templates.

### What you can't replicate

- The exact proprietary prompt engineering tuned by the original creator
- Automated institutional broker scrapers (requires manual entry or simple imports for personal use)

## What it does

An AI-powered wealth tracker and financial portfolio analyst built specifically for UK investors and families, supporting stocks & shares ISAs, cash ISAs, SIPPs, GIAs, bonds, cash, and property equity with live pricing and context-aware conversational AI.

### Core features

- Multi-wrapper account data modeling (ISAs, SIPPs, GIAs, Cash, Property)
- Live market price feeds and asset valuation updates
- Asset allocation breakdown across asset classes and wrappers
- Context-aware AI coach with direct access to user portfolio state
- Household and family member portfolio grouping
- Automated financial health checks and concentration alerts

## The business

### Pricing

- Free Tier / Welcome Credit: £2 Free AI Credit — New accounts receive £2 of AI credit upon registration with no credit card required upfront.
- Usage-Based AI Credits: Consumption-based — Pay-as-you-go credit model for conversational AI analyst queries.

Founded 2026.
Team size: Lean indie.

## The hard parts

- Sourcing reliable, real-time UK fund and ETF ticker pricing (e.g. Vanguard VWRP, LifeStrategy)
- Structuring prompt context injection securely without exposing sensitive financial values or exceeding token limits
- Handling complex UK tax wrapper semantics (ISA contribution limits, pension tax reliefs, GIA capital gains math)
- Financial liability and compliance guardrails against regulated investment advice

## How to vibe code Portfolio Coach

### Prerequisites

- Node.js (free): Required runtime for Next.js and TypeScript tooling
- GitHub (free): Source control and deployment pipeline

### Recommended AI tools

- Claude Code: Best-in-class agentic CLI tool for scaffolding full-stack Next.js applications and iterating on financial math logic
- Cursor: Excellent AI-native code editor for fine-tuning dashboard components, charts, and Tailwind styles

### Stack

- Frontend: Next.js with Tailwind CSS and shadcn/ui
- Backend: Next.js Server Actions / API Routes
- Database: Turso (SQLite at the edge)
- Auth: better-auth
- Payments: none (personal use)
- Other: Vercel AI SDK for streaming LLM portfolio coach responses, DeepSeek API for cost-effective frontier reasoning

### Hosting

- Vercel (Hosting the Next.js frontend and serverless API routes): $0/mo (Hobby Tier)
- Turso (Serverless SQLite database for holdings, wrappers, and user profiles): $0/mo (Free Tier)

### Build guide

1. **Project Scaffolding & Database Schema** — Initialize the Next.js project with Tailwind CSS, configure Turso SQLite with Drizzle ORM, and set up user authentication with better-auth.

```
Scavenge and create a Next.js 16 project with TypeScript and Tailwind CSS v4. Set up Drizzle ORM connected to a Turso SQLite database. Define the database schema for users, portfolios, tax_wrappers (ISAs, SIPP, GIA, Cash, Property), holdings (ticker, name, quantity, cost_basis, wrapper_id), and financial_goals. Implement better-auth for secure email/password authentication. Create clean folder structures for app router pages, components, and server actions.
```

2. **Dashboard UI & Portfolio Aggregation Engine** — Build the main net worth dashboard showing total valuations, asset allocation percentage bars, performance metrics (YTD, Day), and wrapper breakdowns.

```
Build a responsive Next.js dashboard mimicking a professional wealth tracker. Create server actions to calculate total net worth, asset allocation percentages across Global Equity, Property Equity, Cash, and Bonds, and performance totals (Day, YTD). Implement interactive UI components using Tailwind CSS and shadcn/ui style cards to display holdings grouped by tax wrappers (Stocks & Shares ISA, SIPP, GIA, Cash ISA). Add a modal to manually add or edit holdings and property equity values.
```

3. **Live Market Price Integration** — Implement a lightweight market price updater that fetches current prices for common UK funds and ETFs (e.g. VWRP, LifeStrategy) via a financial API or Yahoo Finance scraper.

```
Implement a market data service in Next.js that fetches live prices and daily percentage changes for common UK fund tickers (such as Vanguard VWRP, LifeStrategy 80%) using a reliable public financial API or Yahoo Finance endpoint. Create a background cron job or on-load refresh action that updates asset valuations in the database, recalculates portfolio day gains, and displays 'Priced moments ago' indicators on the dashboard.
```

4. **Context-Aware AI Portfolio Coach** — Integrate the Vercel AI SDK and DeepSeek API to build a conversational financial coach that dynamically ingests the user's entire portfolio state as context.

```
Build an AI coach chat interface using the Vercel AI SDK and DeepSeek API. Write a backend context builder utility that serializes the user's complete portfolio into a structured JSON briefing (total net worth, wrapper breakdown, asset allocation percentages, cash buffer size, and holdings). Inject this JSON dynamically into the LLM system prompt whenever the user asks a question, enabling context-aware portfolio analysis (e.g., highlighting cash drag, fund overlap, or rebalancing needs). Ensure streaming responses and error handling.
```

5. **Illustrative Demo Mode & Polish** — Add a pre-loaded illustrative demo account (such as 'James Carter') so new visitors can explore the dashboard and test the AI coach immediately without setup.

```
Add a one-click 'Try the demo' button on the landing page that provisions a pre-loaded illustrative family portfolio ('James Carter') with mock holdings, ISAs, SIPPs, and property equity. Ensure demo users can interact with the live dashboard views and ask up to two test questions to the AI coach before registering an account. Polish all UI states, loading skeletons, and financial disclaimer footers.
```

### Cost vs paying

**Starting costs (one-time):**

- Domain name (optional): $12 one-time
- AI coding tools (Claude/Cursor): $20 one-time
- Total: ~$32 one-time

**Ongoing costs (monthly):**

- Vercel Hobby & Turso Free: $0/mo
- DeepSeek API token usage (personal): ~$1-3/mo
- Total: ~$2/mo

- Paying for the SaaS instead: Usage-based (£2 free credit, then pay-per-query)
- Build time: 16-24 hours
- AI tool credits: $20 (Claude Pro / Cursor Pro)
- Break-even: Self-hosted for personal use

## Sources

- [Portfolio Coach Official Website](https://portfoliocoach.co.uk)