Alekwu — From Portfolio Chatbot to Mega Product
Vision & Product Roadmap
A detailed exploration of how to turn the Alekwu AI assistant (currently a portfolio chatbot) into a large-scale, monetizable product.
Table of Contents
- Executive Summary
- The Core Insight
- Current State Audit — What Already Exists
- Market Landscape & Predecessors
- The Vision Ladder — 3 Directions
- Direction A — "TwinFolio": AI Twin Platform
- Direction B — "Recruiter Intel": Analytics-First Twist
- Direction C — "Interview Prep Coach"
- Feature Roadmap by Phase
- Viral Growth Loops
- Monetization & Pricing Strategy
- Technical Architecture Plan
- Analytics & KPIs
- Risks & Mitigations
- What to Build First — The 60-Second Pitch Demo
- Go-To-Market & Launch Plan
- Appendix — Inspirations & References
1. Executive Summary
Alekwu is currently a floating AI chat widget on Jeffrey Adakole's portfolio site. It answers questions about his background, experience, projects, and skills using a multi-provider streaming engine (OpenAI, Google, and a built-in mock fallback that requires no API key).
The thesis of this document: Alekwu is ~80% of the way to being a competitive AI product already. The chat engine, error handling, widget UX, and content pipeline are production-quality. The path to a "mega product" is not rebuilding the chatbot — it is productizing the twinning: making it trivially easy for anyone (professionals, founders, creators, students) to create their own AI twin that represents them 24/7.
This document lays out three possible directions, a phased feature roadmap, viral growth loops, monetization models, technical architecture, KPIs, risks, and a concrete first build.
2. The Core Insight
Most people who want an "AI version of themselves" cannot build one. They can't write a system prompt, can't configure a model, and can't wire up a widget. Alekwu's technology already solves all of that — the only missing piece is making it repeatable for other people.
The product is not "a chatbot." The product is a digital twin — a representative that never sleeps, never forgets, and makes a great first impression 24/7.
Three market precedents prove the appetite:
- Intercom Fin shifted pricing from seats to $0.99 per resolution — charging for outcomes, not usage.
- Character.ai grew to tens of millions of users and ~$50M+ ARR by letting anyone create a persona in minutes and share a public link.
- Chatbase reached multi-million ARR with one insight: paste a URL, get an embed code in 60 seconds.
Your version: paste a resume (or link a GitHub/LinkedIn), get a chat widget that knows everything about you — in 60 seconds.
3. Current State Audit — What Already Exists
Before building anything new, inventory what's already in the repo. This is the unfair advantage.
3.1 Chat Engine (src/app/api/chat/route.ts)
- Multi-provider support — OpenAI, Google, and an OpenAI-compatible layer (
@ai-sdk/openai, @ai-sdk/openai-compatible).
- Mock mode fallback —
NEXT_PUBLIC_MOCK_AI=true runs a 600+ line intent-classification engine that needs no API key. This means the product can demo itself with zero cost.
- 5-class error handling — rate limit (429), context length (400), content filter (400), auth error (401), timeout (504) — each with distinct user-facing copy and retry behavior.
- Timeout handling —
fetchWithTimeout() helper, AbortController pattern, smart retry with auto-trim for context_length, no retry for content_filter / auth_error.
- Streaming SSE — token-by-token streaming for a real-time feel.
- Floating toggle button with first-visit attract animation, tooltip with
⌘K hint, unread-style affordances.
- Draggable + resizable chat panel (clamped to viewport).
- Keyboard shortcuts —
⌘K/Ctrl+K to toggle, Escape to close, with context-aware toast notifications ("Alekwu opened / closed").
- Context-aware entrance/exit animations (slide-down for keyboard, fade+scale for click).
- Markdown rendering (
react-markdown + remark-gfm) — bold, lists, code blocks, links, blockquotes.
- Copy (plain + formatted), Edit-and-resend, Stop-generation, Refresh-conversation actions.
- Frosted-glass toast system with pointer arrows (bottom toast near the toggle button, top toast for share actions).
3.3 Content & Data Pipeline
- Sanity CMS for blog content, with GROQ queries and live preview tooling.
- Mock engine built on structured portfolio data (
src/lib/portfolio-data.ts, src/lib/ai-mock.ts).
- PWA support (
public/sw.js, manifest, offline page).
3.4 What's Missing (the product layer)
| Missing | Why it matters |
|---|
| Multi-tenancy / accounts | One Alekwu today; a product needs thousands |
| Database + auth | No persistence of users, config, or conversations |
| Per-user knowledge base | KNOWLEDGE_BASE is hardcoded in the system prompt |
| Embeddable widget distribution | No way for others to drop Alekwu into their site |
| Admin/dashboard | No way to configure persona, branding, or analytics |
| Billing | No pricing, no credits, no plans |
| Analytics | No visibility into who asks what |
4. Market Landscape & Predecessors
- What they do: Let non-technical users upload PDFs/docs or scrape URLs to spin up a custom RAG chatbot widget.
- Why they grew: Frictionless onboarding — paste a URL or drop a PDF, get an embed code in ~60 seconds.
- Business models: Tiered monthly subscriptions based on message limits / monthly active conversations (free → $120–$400/mo), plus high-margin add-ons: white-labeling/brand removal (~$1,188/yr at Chatbase), custom domains, team seats.
- Pricing innovation: $0.99 per successful resolution instead of seats or raw tokens. Aligns price with value delivered.
- Lesson for Alekwu: "X conversations per month" commoditizes you; "X recruiters converted" premiumizes you.
4.3 Personal AI / Digital Twins (Character.ai, Personalized GPTs)
- Character.ai: Anyone creates a character in 2 minutes (custom prompt + avatar) and publishes a public link. Scaled to tens of millions of MAU and ~$50M+ ARR. Monetized with
c.ai+ at $9.99/mo (priority access, faster responses, advanced voice).
- Viral loop: UGC — creators share their public bot links on TikTok/X/Instagram, which brings net-new users who create their own bots.
- Personalized GPTs / Custom GPTs: OpenAI proved the "configure a persona + knowledge + actions" pattern at massive scale.
4.4 The Gaps Alekwu Can Exploit
- Most chatbot-builder SaaS are generic (FAQ bots for support). None are opinionated about professional identity — resumes, portfolios, personal brands, job hunting.
- Most digital-twin products are entertainment (Character.ai). None are credibility tools for careers and hiring.
- Positioning Alekwu as "the AI twin for your career" occupies white space.
5. The Vision Ladder — 3 Directions
| Direction | What you sell | TAM | Difficulty | Margin |
|---|
| A. TwinFolio — AI twin platform | A persona + embeddable widget for anyone | Very large | Medium | High |
| B. Recruiter Intel — analytics twist | Lead-gen + market-research dashboard | Large | Medium-High | Very high |
| C. Interview Prep Coach | Role-played recruiter + scoring | Medium | Low-Medium | Medium-High |
These are not mutually exclusive. B is a feature that makes A worth more. C is a demo that sells A. The recommended path is A as the core, with C as the on-ramp and B as the premium tier.
6.1 The One-Liner
"Create your AI twin in 60 seconds. Embed it anywhere. Never miss an opportunity again."
6.2 Target Users
- Job seekers / developers (largest initial segment — they're already on your portfolio site)
- Founders & solopreneurs (credibility + lead capture)
- Creators & educators (always-on fan/audience engagement)
- Agencies (white-label for their clients)
6.3 Core Loop
User uploads resume / links GitHub+LinkedIn
→ Alekwu parses + builds a knowledge base (RAG)
→ User picks a personality (Professional / Witty / Academic)
→ Live preview chat
→ Copy-paste one-line embed: <script src="widget.js" data-bot-id="x">
→ Visitor chats → "Powered by Alekwu" badge → new signups
6.4 Differentiators (why someone picks you over Chatbase)
- Identity-focused, not FAQ-focused — built around a person, not a business support desk.
- Recruiter-grade answers — the mock engine already handles "Why should we hire you?" style questions; make that a first-class feature.
- Contact capture built-in — collect recruiter emails, schedule intro calls (Calendly), fire Slack/Discord webhooks for high-value visitors.
- "Ask me anything" personality — not a knowledge dump; a warm ambassador (Alekwu's persona is already written and battle-tested).
7. Direction B — "Recruiter Intel": Analytics-First Twist
7.1 The One-Liner
"Your AI twin doesn't just answer — it reports. Know who's interested, what they care about, and how to close them."
7.2 What the Dashboard Shows
- Visitor profile — who chatted, when, from where (LinkedIn referral? GitHub? blog?).
- Question intelligence — the top questions recruiters ask most ("Do you know Docker?", "What was your role at Company X?"), keyword clusters, drop-off points.
- Lead pipeline — every captured email/phone, with conversation transcripts and a "hotness" score.
- Funnel analytics — chat → contact-capture → booking conversion.
7.3 Why This Command Higher Pricing
Intercom's lesson: price on outcomes, not usage. "Recruiter intel" turns a passive resume into active market research for job seekers and lead generation for founders — two things people happily pay for.
8. Direction C — "Interview Prep Coach"
8.1 The One-Liner
"Practice with a recruiter who's already read your entire resume — and get scored."
8.2 Why This Is the Perfect On-Ramp
- The mock engine already generates interview questions from portfolio data — the hardest part exists.
- It demos instantly with zero API cost (mock mode).
- It's a B2C subscription with immediate "wow": ask it to grill you, then score your answer against a rubric (clarity, STAR method, specificity).
8.3 Feature Sketch
- Role-play modes: HR screen, technical interview, behavioral, culture-fit.
- Real-time feedback: "Your answer was strong on specifics but missed the outcome — try STAR."
- Post-session report card + suggested weak spots to practice.
- Recorded answers (voice) with transcription scoring (later phase).
9. Feature Roadmap by Phase
Phase 0 — Ship Today (no new architecture)
| Feature | Why | Effort |
|---|
| Shareable chat summary cards ("What Alekwu said about X") | Distribution + social proof | Low |
| Lead capture in chat (email + optional Calendly booking) | Converts visitors into contacts | Low |
| "Powered by Alekwu" badge on the widget | Starts the watermark loop | Low |
| Refine the greeting/persona copy for recruiters | Conversion | Low |
| Feedback button on answers ("Was this helpful?") | Data for the intel layer | Low |
Phase 1 — The Real Product (multi-tenant MVP)
| Feature | Details |
|---|
| Accounts & auth | Supabase/Neon Postgres + Clerk or NextAuth |
| Per-user knowledge base | Resume upload (PDF/DOCX) → parse → vectorize (pgvector) → RAG |
| Custom Q&A pairs | "Q: Salary? A: Let's discuss over email." — user-defined |
| Personality presets | Professional / Witty / Academic / Custom system prompt editor |
| Embeddable widget | One-line script tag with data-bot-id, theming (colors, dark/light, avatar) |
| Public profile page | "Chat with [Name]'s twin" — shareable URL, SEO-able |
| Simple analytics | Messages, sessions, top questions per bot |
| Billing | Free / Pro tiers (see §11) |
Phase 2 — The Differentiators
| Feature | Why |
|---|
| Voice mode (realtime API) | Feels like magic; strong demo |
| Multi-language | International recruiters |
| Slack/Discord/Email notifications | "A recruiter is chatting with your twin right now" |
| Custom domain mapping | Pro-tier moat |
| Widget themes gallery | UGC + retention |
Phase 3 — The Flywheel
| Feature | Why |
|---|
| Public directory: "Chat with top Next.js engineers" | SEO moat + cross-pollination |
| Template gallery (twin presets) | UGC loop, the Character.ai play |
| Marketplace of persona assets | Ecosystem |
| Team/agency plans + white-label API | B2B revenue |
10. Viral Growth Loops
10.1 The Watermark Loop (PLG)
Every free widget shows a subtle "Powered by Alekwu" badge in the chat bubble. When a recruiter, founder, or peer is impressed by a bot, they click the badge → land on the landing page → create their own twin. Your own portfolio is the first billboard.
10.2 The Shareable Persona Card Loop
At the end of a chat (or when asked a great question), generate a downloadable summary card or shareable link: "Here's what [Name]'s AI twin said about my architecture question." Optimized for X (Twitter), LinkedIn, and portfolio sharing — professional organic traffic.
10.3 The Badge Discount Loop
Users who keep the "Powered by Alekwu" badge active get free premium features (unlimited messages or top models like GPT-4o / Claude). This turns every user's portfolio into an always-on billboard for the SaaS. (Chatbase/Typebot monetize the removal; you can monetize the retention of it instead.)
10.4 The Resume-Marketplace Loop
Public directory of professional twins, categorized by role ("Chat with Product Designers", "Chat with YC Founders"). Recruiters search it for talent; creators get discovered; everyone links back.
11. Monetization & Pricing Strategy
11.1 Hybrid SaaS + Usage Model (inspired by Chatbase + Intercom)
| Tier | Price | Includes |
|---|
| Free | $0 | 50 messages/mo, standard branding, 1 active twin, 14-day retention, mock-engine answers |
| Pro / Creator | $15–29/mo | Unlimited (fair use), white-label (no badge), analytics dashboard, lead capture + Calendly, custom domain, priority models |
| Agency | $99+/mo | Multi-twin management, white-label API, client billing, custom branding, SLA |
11.2 The Endgame — Outcome Pricing
Like Intercom Fin: charge per successful outcome (e.g., $0.99 per captured recruiter lead, or per booked call) instead of per message. High-margin, defensible, and impossible for commodity chatbot builders to copy quickly.
11.3 Other Revenue Levers
- White-label/brand removal add-on (proven: Chatbase ~$1,188/yr)
- Template/persona marketplace (revenue share with creators)
- B2B "recruiter intel" reports sold to hiring platforms
- One-time "AI twin setup" concierge service for non-technical users
12. Technical Architecture Plan
12.1 Recommended Stack (aligned with what's already installed)
| Layer | Choice | Notes |
|---|
| Framework | Next.js (already in use, v16) | App router, API routes, edge-ready |
| Database | Supabase or Neon (Postgres) | Relational: users, bots, configs, analytics |
| Auth | Clerk or NextAuth | Social login (Google/LinkedIn) for onboarding |
| ORM | Drizzle or Prisma | Type-safe schema |
| Vectors | pgvector (same Postgres) | No extra infra; RAG for per-user knowledge |
| Embeddings + models | Vercel AI SDK (already in use) | Multi-provider: OpenAI, Anthropic, Gemini, DeepSeek |
| Object storage | Vercel Blob / S3 | Resume PDFs, avatars |
| Payments | Stripe (subscriptions + usage meters) | Free/Pro/usage |
| Analytics | PostHog or Vercel Analytics + custom tables | Product + business analytics |
| Widget embed | Tiny script / web component | Shadow DOM to avoid CSS collisions |
<script
src="https://alekwu.dev/widget.js"
data-bot-id="user_123"
data-theme="light"
data-accent="#00e5a8"
></script>
- Loads a shadow-DOM-isolated React (or vanilla) component so it never conflicts with the host site's CSS.
- Reads
data-* attributes for config; supports postMessage API for host-page integration.
- Sends traffic to a multi-tenant
/api/chat that resolves the bot's knowledge base by bot_id.
- Fires analytics events + webhooks back to the owner's dashboard.
12.3 Multi-Tenant /api/chat Refactor
Current: single hardcoded KNOWLEDGE_BASE system prompt.
Future: load per-bot system prompt + vector chunks from the database by bot_id, inject them into the prompt (and/or retrieve via RAG on each query).
12.4 Resilience (already built — keep and productize)
- Timeout with
fetchWithTimeout() + AbortController
- 5-class error classification with tailored UX
- Auto-trim history on
context_length
- Mock fallback when provider is down or quota exhausted (this is a product feature — "Alekwu never goes offline")
13. Analytics & KPIs
13.1 Product KPIs
- Signup → first twin created conversion
- Time-to-first-embed (target: < 60 seconds)
- % of new users who embed the widget within 24h
- Weekly active twins / messages per twin
- Free → Pro conversion rate (benchmark: 2–5%)
- Churn (target < 5%/mo for Pro)
13.2 Twin-Facing Metrics (the "intel" value)
- Sessions per twin, top questions, referral sources
- Lead capture rate (chats → emails captured)
- Booking rate (chats → Calendly calls)
- "Hot" visitor alerts per week
13.3 Growth Metrics
- Badge impressions (each widget load = an impression)
- Badge → landing page CTR
- Virality coefficient (shares per 100 chats)
14. Risks & Mitigations
| Risk | Mitigation |
|---|
| LLM cost at scale | Mock engine as default tier; caching; outcome-based pricing; usage caps |
| Hallucinations about a real person | Strong system prompt + RAG grounding + "confidence" fallbacks + disclaimer copy |
| Privacy (resume data) | Encryption at rest, per-user data isolation, GDPR/consent copy, data deletion on cancel |
| Embed script conflicts on host sites | Shadow DOM isolation + iframe fallback option |
| API keys / abuse | Per-bot rate limits, spam detection, admin kill-switch |
| Commoditization (Chatbase-style clones) | Own the identity/career vertical + intel analytics moat |
| Stale data ("twin knows nothing new") | Re-sync buttons, refresh webhooks from GitHub/LinkedIn/blog RSS |
15. What to Build First — The 60-Second Pitch Demo
The single highest-leverage first build:
A "Create your own Alekwu" flow on the portfolio site: upload resume → pick a vibe → instant live preview → copy-paste embed code.
Why this first:
- It's a demo — "see your AI twin appear in 60 seconds" is instantly shareable.
- It's a product — the core A-direction loop.
- It's a viral loop — every twin created advertises Alekwu.
- Every component already exists: chat engine, mock fallback, widget UI, streaming.
Scope for a first sprint (2–4 weeks):
- Auth (Clerk) + Postgres (Neon/Supabase)
- Resume upload → parse (PDF text extraction) → store
- Simple RAG (pgvector) or even "prompt-injection of parsed resume" as v0.5
- Personality presets dropdown
- Live preview pane using the existing
AIAssistant-style UI
- Embeddable
<script> with data-bot-id
- Stripe-free credits model to start (a message allowance per account)
16. Go-To-Market & Launch Plan
16.1 Pre-Launch (Weeks 1–4)
- Land the landing page: one-liner, 60-second demo video, "Create your twin" CTA
- Dogfood: your own portfolio embeds Alekwu with the badge
- Write the "how I built it" blog post (content already exists in
docs/)
16.2 Launch (Week 5)
- Product Hunt launch (demo-first: "Chat with my AI twin")
- LinkedIn/X posts with shareable persona cards
- Post to developer communities (r/nextjs, r/programming, dev.to, Hashnode) — the build story is strong
- Offer the first 100 users Pro free for 3 months
16.3 Post-Launch (Weeks 6–12)
- Ship the Recruiter Intel dashboard (Direction B) as the Pro differentiator
- Launch the public twin directory (Phase 3) for SEO
- Instrument the watermark loop and iterate on CTR
17. Appendix — Inspirations & References
17.1 Products Studied
- Chatbase — frictionless onboarding: paste URL/PDF → embed in 60s; tiered subscription + white-label add-on
- Botpress / Voiceflow — visual canvas builders, multi-channel (Webchat, WhatsApp, Slack, Messenger)
- Intercom Fin — outcome pricing: $0.99 per resolution
- Character.ai — UGC persona loop, public links, c.ai+ $9.99/mo
- OpenAI Custom GPTs — configure persona + knowledge + actions
- Typebot — embeddable no-code chat builders
- AskMyPDF / resume-chat tools — chat-with-document utility
17.2 Principles to Steal
- Onboarding velocity is the product. 60 seconds from landing to embed code.
- Price on outcomes, not tokens (the Intercom lesson).
- Turn every user into a billboard (badge loops, shareable cards, public directory).
- Your own product is your best demo — Jeffrey's portfolio is Alekwu's first customer and case study.
- Never go down — the mock engine fallback is a genuine resilience feature to market.
Related docs: docs/ai-assistant.md (how the widget works), docs/timeout-implementation.md (error handling & UX), docs/chat-history-implementation.md (conversation persistence).