# How to Vibe Code Your Own Jenni AI (and Stop Paying for It)

> AI academic writer and research tool for students and academics

- Site: https://jenni.ai
- Category: Academic Writing & Research SaaS
- Verdict: **Solid side project** (68/100 vibecodeable)
- Estimated effort: 2-3 weeks part-time

## Verdict

You can build a functional personal clone of Jenni AI in a couple of weeks, but matching the exact millisecond-latency autocomplete UX and robust PDF coordinate mapping requires deep editor hacking.

The core loop—uploading academic PDFs, chunking them into a vector database, querying them via RAG, and displaying inline AI completions—is entirely buildable with modern full-stack frameworks and LLM toolkits. Where you will burn hours of frustration is crafting the custom Tiptap/ProseMirror editor extension for ghost-text streaming autocompletes, handling messy multi-column PDF layouts for vector embedding, and wiring up robust citation formatting across thousands of styles. For personal academic writing, building this is a rewarding side project; for commercial scale, paying $29/mo is vastly cheaper than the engineering overhead.

### What you can't replicate

- The 6M+ user community and organic academic network
- Institutional trust and deep citation style customisations refined over years
- Optimized infrastructure handling millions of concurrent academic queries

## What it does

An AI-powered academic writing workspace featuring source-grounded autocomplete, citation management, PDF library search, and AI proofreading.

### Core features

- Source-grounded inline autocomplete with phantom text stream rendering
- PDF ingestion, chunking, OCR, and vector search with pgvector
- Academic citation engine mapping to 10,000+ styles and .bib/.ris export
- AI chat with multi-document context (@ mentions)
- Peer review claim confidence scanner (flagging unsupported/contradicted claims)
- Rich text editor with version history and real-time collaboration
- Academic paper discovery sidebar querying CrossRef/arXiv/Semantic Scholar APIs

## The business

### Pricing

- Free: $0 — Basic tier for evaluating the workspace
- Plus: $12/mo — For individual researchers and graduate students
- Pro: $29/mo — For heavy writers and professional academics

### Funding

$100K raised.
- Pre-seed / Angel
Investors: Jason Calacanis

Founded 2019.
Team size: 23.

## The hard parts

- Building a buttery-smooth inline autocomplete widget inside a custom text editor (TipTap/ProseMirror) that streams ghost text without blocking user typing or breaking cursor states
- Precise source citation grounding: mapping generated sentences back to exact page and paragraph coordinates in ingested PDFs
- Parsing messy academic PDFs containing multi-column layouts, mathematical symbols, and tables without data corruption
- Managing token context windows efficiently when feeding large academic papers and library indexes into LLM prompts

## How to vibe code Jenni AI

### Prerequisites

- Node.js (Free): Required runtime for Next.js 16 and TypeScript tooling
- GitHub (Free): Source code repository and Vercel deployment pipeline
- Anthropic API Key (Pay-as-you-go): Powers Claude 3.5 Sonnet for source-grounded autocomplete and chat

### Recommended AI tools

- Claude Code: Best agentic terminal tool for scaffolding the Next.js app, setting up database schemas, and writing complex Tiptap editor extensions
- Cursor: Ideal AI editor for fine-tuning frontend components, sidebar layouts, and inline completion event listeners

### Stack

- Frontend: Next.js (App Router, React, Tailwind CSS)
- Backend: Next.js API Routes / Server Actions
- Database: Neon (Serverless Postgres with pgvector)
- Auth: better-auth
- Payments: Stripe
- Other: Vercel AI SDK, TipTap Editor, PDF.js

### Hosting

- Vercel (Hosting the Next.js web application and serverless functions): $0-20/mo
- Neon (Serverless Postgres database with vector extension (pgvector) for PDF embeddings): $0/mo

### Build guide

1. **Scaffold Project & Database Schema** — Initialize the Next.js 16 project with Tailwind CSS, configure better-auth, and set up Neon Postgres with pgvector for storing document chunks.

```
Create a new Next.js 16 project using the App Router, TypeScript, and Tailwind CSS. Install better-auth for database-backed authentication. Configure a Neon Postgres connection using Drizzle ORM. Enable the pgvector extension via migration SQL (`CREATE EXTENSION IF NOT EXISTS vector;`) and create tables for users, documents, document_chunks (with embedding vector dimensions matching text-embedding-3-small), and references. Implement clean modular folder structures adhering to standard Next.js best practices.
```

2. **PDF Ingestion & Chunking Pipeline** — Build backend server actions to parse uploaded PDFs, extract text, chunk paragraphs, and generate vector embeddings.

```
Implement a PDF upload API route and server action. Use pdf-parse or pdfjs-dist to extract raw text from uploaded PDF files up to 100MB. Write a chunking utility that splits academic text into 500-token blocks with 50-token overlaps. For each chunk, call OpenAI's text-embedding-3-small model API and store the resulting vector along with page metadata and source document ID in the Neon pgvector database table.
```

3. **Rich Text Editor & Inline Autocomplete** — Integrate TipTap editor with a custom extension that listens for keystrokes and streams AI ghost text completions.

```
Set up a TipTap rich text editor component inside the Next.js workspace dashboard. Build a custom TipTap extension or inline decoration plugin that triggers an AI completion stream when the user pauses typing or presses a shortcut key (e.g., Tab). The extension must query a Next.js API endpoint using the Vercel AI SDK (`streamText`) with context retrieved via vector similarity search against the user's uploaded PDFs in Neon. Render the streamed response as ghost text inside the editor viewport, accepting it on Tab keypress.
```

4. **Academic Citation & Reference Engine** — Build reference management, citation style mapping, and bibliography export tools (.bib, .ris).

```
Create a reference management sidebar panel where users can view, add, and organize bibliographic metadata (authors, title, year, journal, DOI). Implement a citation formatter supporting APA, MLA, Chicago, and IEEE styles. Add export endpoints that serialize the user's reference library and inline citation keys into standard BibTeX (`.bib`) and Research Information Systems (`.ris`) text formats for immediate download.
```

5. **AI Chat & Literature Discovery Sidebar** — Add a sidebar chat interface for multi-document RAG queries and academic paper search integration.

```
Build an AI chat sidebar component supporting `@` document mentions and `/` prompt commands. Implement vector retrieval across selected PDF chunks in the user's library. Integrate an external academic search tool (calling Semantic Scholar or CrossRef APIs) so users can search millions of external papers directly from the editor sidebar, view abstracts, and import them straight into their reference library with one click.
```

### Cost vs paying

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

- Domain name (optional): $12 one-time
- AI API starting credits (OpenAI / Anthropic): $10 one-time
- Total: ~$22 one-time

**Ongoing costs (monthly):**

- Vercel Hobby Hosting: $0/mo
- Neon Serverless Postgres: $0/mo
- LLM & Embedding API usage (moderate personal use): ~$5-15/mo
- Total: ~$10/mo

- Paying for the SaaS instead: $29/mo (Pro Plan)
- Build time: 35-45 hours
- AI tool credits: $20 (Claude Pro / Cursor)
- Break-even: 1 month of Pro subscription

## Sources

- [Jenni AI Official Website](https://jenni.ai)
- [Jenni AI Pricing Page](https://jenni.ai/pricing)
- [GetLatka SaaS Profile on Jenni AI](https://getlatka.com/companies/jenni-ai)
- [Starter Story Case Study on Jenni AI](https://www.starterstory.com/stories/jenni-ai)