Ctrl K
ComunidadGuías…
Papernook
✓ ficha editorial verificadaTypeScriptainextjspaper-managementpdf

Papernook - Biblioteca académica auto-alojada filesystem-first

Papernook es una biblioteca académica auto-alojada filesystem-first para captura, anotación y lectura con IA privada. Usa extensiones oficiales Safari (Mac App Store) y Chrome Web Store para capturar PDFs desde arXiv y editoriales directamente al servidor local. Anotaciones escritas en PDFs nativos, conversaciones como JSONL, SQLite FTS5 reconstruible. Arquitectura Next.js + Python/Node.js con IA configurable (Claude Code, Codex, API local). Despliegue vía script install.sh o Docker Compose. Licencia MIT.

Papernook

Biblioteca académica auto-alojada filesystem-first para captura, anotación y lectura con IA privada

¿Qué es Papernook?

Papernook es una biblioteca de documentos académicos auto-alojada que prioriza el sistema de archivos como fuente de verdad. Permite capturar PDFs desde arXiv y editoriales mediante extensiones oficiales para Safari (Mac App Store) y Chrome Web Store, anotar directamente en los PDFs con Apple Pencil o ratón, y consultar con IA configurable (Claude Code, Codex, API local).

La arquitectura combina Next.js con Python/Node.js, usando SQLite FTS5 como acelerador de búsqueda reconstruible. Las anotaciones se escriben directamente en los PDFs para máxima portabilidad, las conversaciones se almacenan como archivos JSONL simples, y el índice puede eliminarse sin perder la biblioteca.

Características principales

  • Persistencia filesystem-first: Anotaciones en PDFs nativos, conversaciones como JSONL, SQLite FTS5 reconstruible
  • IA configurable: Claude Code, Codex, API local sin dependencia obligatoria
  • Extensiones oficiales: Safari (Mac App Store) y Chrome Web Store para captura directa desde arXiv
  • WebDAV opcional: Sincronización multi-dispositivo
  • Perfiles separados: Chats, tokens de captura y conexiones Zotero por lector
  • Enlaces revocables: Compartir lecturas con acceso visual solo

Arquitectura técnica

Componente Tecnología Función
FrontendNext.js + TypeScriptLectura web con anotaciones en tiempo real
BackendPython/Node.jsAPI, procesamiento de PDFs, IA
BúsquedaSQLite FTS5Índice reconstruible desde archivos
PersistenciaSistema de archivosFuentes de verdad: PDFs, JSONL
IAClaude/Codex/API localAnálisis contextualizado por documento

Instalación y despliegue

Método 1: Script oficial (recomendado)

curl -fsSL https://raw.githubusercontent.com/affromero/papernook/main/scripts/install.sh | bash
# Clona el repo, detecta Codex/Claude, escribe .env, docker compose up

Para instalación reproducible con release tag:

git clone --branch v0.3.0 --depth 1 https://github.com/affromero/papernook.git
cd papernook
./scripts/install.sh

Método 2: Docker Compose

Utilizar tags de release (ej. v0.3.0) para instalaciones reproducibles. Docker mounts solo el archivo de credenciales del proveedor seleccionado; ver .env.example para CODEX_AUTH_FILE y CLAUDE_AUTH_FILE.

Método 3: Actualización

papernook update # newest release tag: back up, rebuild, check health
papernook update --check # what an update would move to, changing nothing
papernook update --main # follow development branch instead of releases

Requisitos del sistema

  • Servidor propio: Máquina controlada para backend completo
  • Puerto 3000: Libre y accesible
  • Variables de entorno: Configuración en .env (proveedor IA, puertos, WebDAV)
  • Herramientas locales: Codex/Claude CLI detectados automáticamente o API externa
  • Docker opcional: Para despliegue containerizado con mounts de credenciales

Ciclo de lectura

  1. Captura: Abrir PDF en arXiv o página editorial. La extensión envía navegación al servidor, que descarga el paper, pregunta a la IA por tema, tags y resumen, y lo archiva.
  2. Anotar: Resaltar y dibujar en el navegador. El ink se escribe en el PDF mismo, así que cualquier lector abre el archivo con o sin Papernook.
  3. Consultar: El chat está al lado del paper y responde desde él. Sus conversaciones son archivos JSONL junto al PDF, no filas en una base de datos ajena.
  4. Practicar: Convertir respuestas en ejercicios PDF listos para Apple Pencil, añadir márgenes o páginas en blanco sin desplazar el ink existente.
  5. Compartir: Enviar lectura anotada revocable. Snapshots de conversación explícitos e inmutables, desactivados por defecto.

Integraciones

NavegadorInstalaciónEstado
Safari Mac App Store live
Chrome Chrome Web Store live

Ambos navegadores ejecutan el mismo código fuente de extension/. Para builds no publicados, npm run build:chrome produce un zip cargable.

Seguridad

  • Licencia MIT: Código abierto y modificable
  • CI automatizado: GitHub Actions con CodeQL y gitleaks
  • Dependabot: Actualización automática de dependencias
  • .gitleaks.toml: Protección contra fugas de secretos
  • Secrets management: .env.example con mounts por proveedor

Alternativas reales

Zotero + plugins IA: Gestión bibliográfica robusta pero sin anotaciones persistentes en PDFs nativos ni chat contextualizado.

Obsidian + PDF plugins: Portabilidad excelente pero requiere configuración manual de cada documento y no ofrece captura automatizada desde arXiv.

ReadCube / ResearchRabbit: Descubrimiento de papers bueno, pero sin capacidad de anotación persistente en el PDF original ni despliegue auto-alojado completo.

Preguntas frecuentes

¿Puedo eliminar el índice SQLite sin perder mis documentos?
Sí. El filesystem es la fuente de verdad; borrar el índice y reconstruirlo desde los archivos no afecta a PDFs ni anotaciones.
¿Cómo actualizo Papernook?
Ejecutar papernook update (respalda automáticamente con scripts/backup.sh). Para desarrollo: papernook update --main. Verificar papernook status antes de actualizar.
¿Necesito Docker para usarlo?
No. El script install.sh detecta Codex/Claude, escribe .env y levanta el servicio. Docker Compose es opcional para despliegues multi-contenedor.
¿Puedo cambiar de proveedor de IA?
Sí. Configurar CLAUDE_AUTH_FILE o CODEX_AUTH_FILE en .env, apuntando a API local, Claude Code CLI, Codex CLI o cualquier servidor OpenAI-compatible.
¿Cómo sincronizo entre dispositivos?
Opcional: configurar WebDAV para acceso multi-dispositivo. Las anotaciones en PDFs son portables sin sincronización adicional.

Metadatos

Relacionado en HostingByte

Alternativas y comparativas · Guías de HostingByte

Fuentes verificadas

Fuentes y verificación
Quality gate 100/100 · información trazable para SEO/GEO
Fuente 1 ↗Fuente 2 ↗Fuente 3 ↗Fuente 4 ↗Fuente 5 ↗
Citación para IA y agentes
Resumen citable, canonical y fuentes verificadas en texto plano.
llms.txt de esta ficha →