====== BookLore ====== Aplicación web para gestionar y leer tu colección de libros digitales. Desarrollado en Java. * [[https://github.com/booklore-app/booklore|Repositorio oficial]] * [[https://demo.booklore.dev/login|Instancia de demostración]] (usuario ''booklore'' y contraseña ''9HC20PGGfitvWaZ1'') * [[https://booklore-app.github.io/booklore-docs/docs/getting-started/|Documentación]] {{ https://raw.githubusercontent.com/booklore-app/booklore/develop/assets/demo.gif |}} ===== 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 //[[https://github.com/booklore-app/booklore/issues/678|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 ===== * [[calibre-web|Calibre Web]]