npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@lvxintao/easypaper

v1.0.1

Published

Upload academic PDFs, analyze them with AI, and chat about their content

Readme

中文文档

EasyPaper

npm version License: MIT Node.js

Upload academic PDFs, get AI-powered analysis, chat about the content, and take sentence-level notes. Fully customizable API.

Features

  • PDF Upload & Viewing — Drag-and-drop upload with built-in PDF viewer (zoom, page navigation, text selection).
  • AI Analysis — Automatically extract summary, key contributions, methodology, and conclusions via MLLM (e.g. GPT-4o), with customizable prompts and batch progress tracking.
  • Interactive Chat — Ask follow-up questions with full paper context. Supports multiple chat sessions per paper.
  • Sentence-Level Notes — Select any text in the PDF and create notes linked to specific sentences, with tag management and Markdown support.
  • Bookmarks — Mark important pages for quick navigation.
  • Folder Organization — Organize papers in a hierarchical folder structure.
  • Custom Prompts — Configure your own prompts for vision parsing, analysis, and chat (with Chinese/English presets).
  • Theme Customization — Choose from 4 theme presets (dark-minimal, light-minimal, warm-light, warm-dark).
  • Flexible AI Backend — Works with any OpenAI-compatible API (OpenAI, OpenRouter, etc.).
  • Local Storage — All data stored locally in ~/.easypaper/, no external database needed.

Quick Start

Option 1: npx (no install)

npx @lvxintao/easypaper

Option 2: Global install

npm install -g @lvxintao/easypaper
easypaper

Option 3: From source

git clone https://github.com/lvxintao/EasyPaper.git
cd EasyPaper
npm install
npm run dev

Option 4: Update existing installation

npm i -g @lvxintao/easypaper@latest

Usage

# npm install
easypaper # Default port 3000, optional --port <number>

# From source
cd EasyPaper
npm run start

Open http://localhost:3000 to get started.

Configuration

Configure your AI provider in the app's Settings page, or via environment variables:

| Variable | Description | Default | |----------|-------------|---------| | AI_BASE_URL | API endpoint | https://api.openai.com/v1 | | AI_API_KEY | Your API key | — | | AI_MODEL | Chat model | gpt-4o | | AI_VISION_MODEL | Vision model for PDF parsing | gpt-4o |

  • Environment variables: Can also be set in ~/.easypaper/.env, with lower priority than UI settings.

How to Use

  1. Upload — Upload a PDF on the home page (drag-and-drop or click to browse)
  2. Open — Enter the paper detail page with PDF viewer on the left and analysis panel on the right
  3. Analyze — Get a structured analysis with page-referenced insights
  4. Chat — Ask specific questions about the paper content
  5. Take Notes — Select text in the PDF and create notes linked to specific sentences

CLI Options

easypaper [options]

  -p, --port <number>  Port to run on (default: 3000)
  -h, --help           Show help
  -v, --version        Show version

All data is stored locally in ~/.easypaper/.

Roadmap

  • [x] Support sentence-level notes with PDF text selection
  • [x] Support asking AI questions about specific sentences
  • [ ] Support more file formats (currently only PDF)
  • [ ] Support more PDF parsing methods (currently only MLLM)
  • [ ] Support shared reading of papers
  • [ ] Support asking AI questions about screenshots

Tech Stack

License

MIT License