Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

bookwall

Bookwall es un servidor de libros electrónicos autoalojado con interfaz web (Rails + React) y lector móvil Android. Soporta formatos CBZ, EPUB y PDF mediante escaneo OCR, búsqueda FTS5 en SQLite, gestión de colecciones y sincronización de progreso entre dispositivos.

Ficha actualizada 23 sept 2026, 9:38 · upstream 23 sept 2026, 9:14 · release sin release detectada

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es bookwall

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Bookwall es una herramienta open source para la gestión y lectura de libros electrónicos con interfaz web y aplicación móvil. Su arquitectura se basa en Rails 8.1 (backend) y React 19 (frontend), utilizando Active Storage para almacenar imágenes de portadas, SQLite con FTS5 para búsqueda full-text y SolidQueue para tareas de fondo como el escaneo automático de libros. El sistema soporta formatos CBZ (con soporte de Calibre), EPUB y PDF, mediante un motor de OCR integrado que extrae metadatos DC:subject, series y autor. La aplicación móvil Android permite leer en modo offline con sincronización bidireccional de progreso entre dispositivos.

CASOS DE USO
  • Gestionar una biblioteca personal de libros electrónicos (EPUB, PDF, CBZ) sin necesidad de servidores externos
  • Escanear libros físicos y convertirlos a formato digital para su lectura en cualquier dispositivo
  • Organizar un catálogo de libros por colecciones, autores o series mediante búsqueda FTS5
  • Leer libros en modo offline con sincronización de progreso entre dispositivos móviles
  • Crear y compartir bibliotecas con usuarios que acceden solo al contenido sin acceso a la interfaz web
PUNTOS DESTACADOS
  • Soporta múltiples formatos (CBZ, EPUB, PDF) mediante un motor OCR integrado que extrae metadatos DC:subject, series y autor
  • Búsqueda full-text en SQLite FTS5 permite encontrar libros por título, serie o autor con resultados instantáneos
  • Gestión de colecciones personalizadas y sincronización de progreso entre dispositivos Android y web
  • Escaneo automático de libros mediante librerías como Calibre, con soporte para imágenes de portada y páginas interiores
  • Interfaz web responsiva con Tailwind CSS v4 y React 19, junto con una aplicación móvil nativa en Kotlin Jetpack Compose
PRECAUCIONES
  • El escaneo OCR requiere conexión a internet durante el proceso inicial de lectura de libros
  • La búsqueda full-text no indexa metadatos como ISBN o género, solo título y series
  • La sincronización de progreso entre dispositivos depende de la conectividad para actualizar en tiempo real
  • No incluye funcionalidades de edición de texto ni de anotaciones sobre los libros
  • El almacenamiento de imágenes de portadas se realiza localmente en disco, lo que puede generar espacio adicional
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU4 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Docker detectado

Para desplegar Bookwall, se recomienda usar Docker con un contenedor multi-etapa: primero construir el cliente (Vite + React) y luego el servidor (Falcon + Rails). Se debe configurar un volumen para SQLite en `/config` que contiene los datos de base de datos, Active Storage y la cola de tareas. El servidor Thruster (port 8237) actúa como proxy con X-Sendfile acceleration para mejorar las transferencias de archivos grandes. Para el escaneo automático, se debe configurar un cron job o usar SolidQueue en modo recurrente. Se recomienda mantener el volumen de libros separado del de datos para evitar conflictos de escritura. El repositorio soporta autenticación por sesión de cookies y tokens Bearer para OPDS.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsReactNode.jsRails
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
8237
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.