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

> Discover, read, organize, and cite scientific literature, all in one platform.

- Site: https://papersapp.com
- Category: Reference Management & Research SaaS
- Verdict: **Serious undertaking** (45/100 vibecodeable)
- Estimated effort: 6-8 weeks of focused building

## Verdict

Build a personal subset for document organization and local PDF chat, but keep paying if you rely on the polished browser extensions, Word add-ins, and enterprise database feeds.

A personal-use literature manager clone is a serious undertaking because you have to stitch together a custom PDF annotation viewer, metadata extraction scrapers, and a vector RAG pipeline over thousands of pages of academic texts. While you can easily spin up a Next.js web dashboard with a Postgres database and an LLM client, getting the PDF reader and robust parser to handle messy academic layouts without breaking requires wrestling with complex frontend canvas rendering and chunking edge cases.

### What you can't replicate

- The massive proprietary Dimensions scholarly indexing database access
- Enterprise publisher integrations and automated AI access rights clearing
- Seamless native browser extensions and certified word processor add-ins (SmartCite)

## What it does

An end-to-end reference manager and literature management platform built for researchers to discover scientific literature, import PDFs with automatic metadata parsing, organize libraries, read and annotate documents with a specialized PDF viewer, and leverage built-in AI assistants to chat with papers.

### Core features

- 1-Click PDF harvesting browser extension
- Automated PDF metadata parsing (DOI, Title, Authors, Abstract extraction)
- Structured library management with tags, custom lists, and smart folders
- Advanced PDF reader with multi-layer annotations (highlights, underlines, sticky notes)
- Scholarly database search integration (Dimensions API mock or live integration)
- Library-wide vector RAG search and 'Chat with PDF' AI assistant
- SmartCite reference insertion for document editors
- Systematic literature review (PRISMA flow tracking and dual screening)

## The business

### Pricing

- Essentials: $7/mo
- Pro: $14/mo
- Enterprise: Custom

### Funding

$2M raised.
- Seed Round (December 2010)
- Seed Round (October 2011)
Investors: Digital Science

Founded 2007.
Team size: Small-to-mid core team under Digital Science.

## The hard parts

- Building a performant specialized PDF viewer supporting complex multi-layer vector annotations and citation link hyperlinking
- Robust PDF metadata extraction engines handling inconsistent publisher layouts and formatting standards
- Implementing scalable RAG across heavy multi-megabyte PDFs with accurate source passage citation linking
- Developing synchronized browser extensions and cross-platform word processor add-ins

## How to vibe code Papers

### Prerequisites

- Node.js (free): Runtime environment for building the full-stack web application.
- GitHub (free): Source code repository and CI/CD deployment pipeline integration.

### Recommended AI tools

- Claude Code: Best-in-class terminal coding agent for scaffolding multi-file full-stack apps, setting up database schemas, and managing complex RAG pipelines.
- Cursor: Ideal AI-native code editor for refining the complex PDF reader component and fine-tuning UI interaction states.

### Stack

- Frontend: Next.js with Tailwind CSS and Shadcn UI
- Backend: Next.js API routes / Server Actions with PDF parsing workers
- Database: Supabase (PostgreSQL with pgvector for document embeddings)
- Auth: better-auth
- Payments: None (Personal use clone)
- Other: Vercel AI SDK, Unpaywall / Crossref APIs for metadata resolution, Resend for transactional alerts

### Hosting

- Vercel (Hosting the Next.js web application and serverless functions): $0-20/mo
- Supabase (Hosting PostgreSQL database, file storage bucket for PDFs, and pgvector embeddings): $0-25/mo

### Build guide

1. **Project Scaffolding and Database Schema** — Initialize the Next.js application with Tailwind CSS, configure better-auth, and set up the Supabase PostgreSQL database schema with pgvector extensions for storing documents, metadata, and embeddings.

```
Scaffold a new Next.js 16 application with TypeScript, Tailwind CSS, and App Router. Integrate better-auth for secure single-user local authentication with email/password. Set up Supabase client connections and create database migrations for tables: 'papers' (id, title, authors, doi, abstract, year, pdf_url, created_at), 'collections' (id, name, user_id), 'paper_collections' (paper_id, collection_id), and 'annotations' (id, paper_id, page_number, coordinates, text, type, color). Ensure pgvector extension is enabled on Supabase for vector embeddings storage. Write type definitions and validation schemas using Zod for all models.
```

2. **PDF Import and Metadata Extraction Pipeline** — Implement a PDF upload endpoint that parses uploaded documents, extracts text contents, queries Crossref/Unpaywall APIs using DOI strings to fetch complete metadata, and saves the record.

```
Create a server-side PDF import module in Next.js. Implement file upload handling to store raw PDF binaries in Supabase Storage buckets. Build a parsing utility that extracts text from uploaded PDFs and scans the first two pages using regex or lightweight heuristics to locate DOIs or titles. Call the Crossref REST API using the detected DOI to automatically fetch structured metadata (title, authors list, abstract, publication year, journal name). Populate the 'papers' table with this extracted data and return the complete record to the frontend library view.
```

3. **Library Management Dashboard and Smart Lists** — Build the main dashboard UI allowing users to view, search, tag, filter, and organize their imported literature libraries into custom folders and smart lists.

```
Build a responsive dashboard layout in Next.js using shadcn/ui components. Create a main library table and card grid view supporting multi-column sorting (by year, title, author), faceted filtering by tags or collections, and instant search over paper titles and abstracts. Implement sidebar navigation for switching between All Papers, Favorites, Trash, and custom user-created collections. Add modal dialogs for manually editing paper metadata fields, adding tags, and managing collection memberships.
```

4. **Specialized PDF Reader and Annotation Canvas** — Integrate a robust web-based PDF viewer component with custom canvas overlays for highlighting, underlining, and adding sticky comments synced to database records.

```
Integrate pdf.js into a dedicated reading workspace component within the Next.js app. Implement zoom controls, page navigation, and text-layer selection. Build a canvas and SVG overlay layer above the PDF viewer enabling users to highlight text ranges or click-drag to create rectangular highlights, underlines, and sticky notes with popup comment inputs. Save all annotation coordinates, text snippets, and user comments asynchronously to the 'annotations' table in Supabase tied to the current paper ID and page number.
```

5. **AI Assistant and Chat with Library RAG Pipeline** — Implement the AI chat assistant using the Vercel AI SDK, handling document chunking, vector embedding generation, and cited answers pulled from user libraries.

```
Implement an AI RAG pipeline using the Vercel AI SDK and Anthropic API. When a paper is imported, chunk its extracted text into paragraphs, generate vector embeddings via Supabase pgvector, and store them in a paper_chunks table. Create an AI chat interface sidebar in the PDF reader and library views. Implement vector similarity retrieval in server actions to pull relevant text chunks based on user queries, inject them into prompt context with clear source citations (paper title and page number), and stream responses back to the user with interactive source badges.
```

6. **Export and Citation Generation Module** — Build a citation generator and reference exporter supporting standard academic citation formats (APA, MLA, BibTeX, RIS) for seamless writing workflows.

```
Build a citation export module that formats selected papers from the user library into standard academic formats including APA, MLA, Chicago, BibTeX (.bib), and RIS. Create a toolbar action in the library view allowing users to copy formatted citations directly to their clipboard or download a generated .bib file for inclusion in LaTeX or word processor workflows. Ensure robust handling of missing fields with graceful fallback strings.
```

### Cost vs paying

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

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

**Ongoing costs (monthly):**

- Supabase Database & Storage tier: $0-25/mo
- Anthropic API usage for PDF chat and RAG: $5-15/mo
- Total: ~$10-40/mo

- Paying for the SaaS instead: $7/mo (Essentials) or $14/mo (Pro)
- Build time: 40-60 hours
- AI tool credits: $20 (Claude Pro / Cursor)
- Break-even: Not economically rational (pay for the software if you need robust browser extensions and Word add-ins; build only for learning)

## Sources

- [Papers Official Website](https://papersapp.com)
- [Digital Science Newsroom - Papers Pro Launch](https://www.digital-science.com)