Herramientas de usuario

Herramientas del sitio


informatica:software:aplicaciones_web:booklore

BookLore

Aplicación web para gestionar y leer tu colección de libros digitales. Desarrollado en Java.

Características

  • 📚 Organización inteligente: Crea tu biblioteca ideal con estanterías personalizadas, ordenación inteligente y potentes filtros para encontrar cualquier libro al instante.
  • 👥 Gestión multiusuario: Añade usuarios con permisos granulares para controlar el acceso a la biblioteca y al contenido.
  • 📲 Integración con Kobo: Sincroniza tu biblioteca con dispositivos Kobo y convierte EPUBs a KEPUB automáticamente.
  • Estanterías mágicas: Crea colecciones dinámicas basadas en reglas que se actualizan en tiempo real, como listas de reproducción inteligentes para tus libros.
  • 🧠 Metadatos automáticos: Obtén información detallada de los libros desde Goodreads, Amazon, Google Books y Hardcover.
  • 📤 Importación BookDrop: Deja archivos en una carpeta para su detección automática e importación masiva.
  • 🌐 Compatible con OPDS: Conecta aplicaciones de lectura directamente a tu biblioteca para descargas inalámbricas.
  • 🔑 Autenticación flexible: Elige entre cuentas locales o proveedores externos OIDC (Authentik, Pocket ID).
  • 🔄 Sincronización con KOReader: Rastrea el progreso de lectura entre KOReader y BookLore.
  • 📧 Compartir con un clic: Envía libros por correo electrónico directamente desde la interfaz.
  • 🔐 Notas privadas: Guarda notas de lectura personales visibles solo para ti.
  • 🌍 Reseñas de la comunidad: Obtén automáticamente reseñas públicas para enriquecer tu biblioteca.
  • 📖 Lector integrado: Lee PDFs, EPUBs y cómics con temas personalizables.
  • 📱 Listo para móvil: Diseño totalmente responsive, optimizado para todos los dispositivos.

Por ahora, la interfaz está solamente en inglés. Hay una issue abierta solicitando la opción de traducciones a otros idiomas.

Instalación

Docker

Crearemos un fichero .env:

# BookLore Application Settings
APP_USER_ID=0
APP_GROUP_ID=0
TZ=Europe/Madrid
BOOKLORE_PORT=6060
 
# Database Connection (BookLore)
DATABASE_URL=jdbc:mariadb://mariadb:3306/booklore
DB_USER=booklore
DB_PASSWORD=ChangeMe_BookLoreApp_2025!
 
# MariaDB Container Settings
DB_USER_ID=1000
DB_GROUP_ID=100
MYSQL_ROOT_PASSWORD=ChangeMe_MariaDBRoot_2025!
MYSQL_DATABASE=booklore

Y un fichero Docker Compose:

services:
  booklore:
    image: booklore/booklore:latest
    # Alternative: Use GitHub Container Registry
    # image: ghcr.io/booklore-app/booklore:latest
    container_name: booklore
    environment:
      - USER_ID=${APP_USER_ID}
      - GROUP_ID=${APP_GROUP_ID}
      - TZ=${TZ}
      - DATABASE_URL=${DATABASE_URL}
      - DATABASE_USERNAME=${DB_USER}
      - DATABASE_PASSWORD=${DB_PASSWORD}
      - BOOKLORE_PORT=${BOOKLORE_PORT}
    depends_on:
      mariadb:
        condition: service_healthy
    ports:
      - "${BOOKLORE_PORT}:${BOOKLORE_PORT}"
    volumes:
      - ./data:/app/data # Datos de la aplicación (ajustes, metadatos, cache...)
      - ./books:/books # Biblioteca principal de libros
      - ./bookdrop:/bookdrop # Los archivos que se coloquen aquí serán detectados automáticamente y listos para su importación
    restart: unless-stopped

  mariadb:
    image: lscr.io/linuxserver/mariadb:11.4.5
    container_name: booklore-db
    environment:
      - PUID=${DB_USER_ID}
      - PGID=${DB_GROUP_ID}
      - TZ=${TZ}
      - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - MYSQL_DATABASE=${MYSQL_DATABASE}
      - MYSQL_USER=${DB_USER}
      - MYSQL_PASSWORD=${DB_PASSWORD}
    volumes:
      - ./db/config:/config
    restart: unless-stopped
    healthcheck:
      test: [ "CMD", "mariadb-admin", "ping", "-h", "localhost" ]
      interval: 5s
      timeout: 5s
      retries: 10

Alternativas

informatica/software/aplicaciones_web/booklore.txt · Última modificación: por tempwin