<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gabriele Trovato</title>
    <description>The latest articles on DEV Community by Gabriele Trovato (@gabriele_trovato_e7184eb0).</description>
    <link>https://dev.to/gabriele_trovato_e7184eb0</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3918566%2F4509d21d-b6ac-42e4-9874-bb472d689efe.jpg</url>
      <title>DEV Community: Gabriele Trovato</title>
      <link>https://dev.to/gabriele_trovato_e7184eb0</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gabriele_trovato_e7184eb0"/>
    <language>en</language>
    <item>
      <title>Building LoreKeeper: An Immersive 3D Library to Bridge EPUBs and AI</title>
      <dc:creator>Gabriele Trovato</dc:creator>
      <pubDate>Thu, 07 May 2026 18:55:05 +0000</pubDate>
      <link>https://dev.to/gabriele_trovato_e7184eb0/building-lorekeeper-an-immersive-3d-library-to-bridge-epubs-and-ai-14go</link>
      <guid>https://dev.to/gabriele_trovato_e7184eb0/building-lorekeeper-an-immersive-3d-library-to-bridge-epubs-and-ai-14go</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Let's be honest: digital book management has felt "flat" for a long time. Most ebook managers look like Excel spreadsheets from the late 90s. As a developer who loves both 3D graphics and reading, I wanted something more.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;LoreKeeper&lt;/strong&gt;, an open-source, 3D digital library that transforms your EPUB collection into an interactive sanctuary.&lt;/p&gt;

&lt;p&gt;But it's not just about the looks—it's about making your books "AI-ready."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93jdlvtzk4458weyv0mi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F93jdlvtzk4458weyv0mi.png" alt="Demo of LoreKeeper" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The Vision: Beyond the List
&lt;/h2&gt;

&lt;p&gt;The goal was to create a "Sanctuary" for digital lore. Using &lt;strong&gt;Three.js&lt;/strong&gt;, I developed a 3D environment where books aren't just entries in a database; they are objects on a shelf. You can fly through the library, move books around, and interact with your collection in a way that feels organic.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; &lt;a href="https://threejs.org/" rel="noopener noreferrer"&gt;Three.js&lt;/a&gt; for the 3D engine, &lt;a href="https://vitejs.dev/" rel="noopener noreferrer"&gt;Vite&lt;/a&gt; for a lightning-fast build.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; &lt;a href="https://nodejs.org/" rel="noopener noreferrer"&gt;Node.js&lt;/a&gt; &amp;amp; &lt;a href="https://expressjs.com/" rel="noopener noreferrer"&gt;Express&lt;/a&gt; for file handling and metadata extraction.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Containerization:&lt;/strong&gt; &lt;a href="https://www.docker.com/" rel="noopener noreferrer"&gt;Docker&lt;/a&gt; &amp;amp; Docker-Compose for seamless self-hosting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;APIs:&lt;/strong&gt; Integration with Apple Books for automated metadata (covers, plots, authors).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The AI Challenge: From Local RAG to "AI-Bridge"
&lt;/h2&gt;

&lt;p&gt;Initially, I experimented with local RAG (Retrieval-Augmented Generation) using local LLMs. However, I realized that for many users, running a heavy LLM alongside a 3D engine was a hardware nightmare.&lt;/p&gt;

&lt;p&gt;I pivoted to an &lt;strong&gt;"AI-Bridge" philosophy&lt;/strong&gt;:&lt;br&gt;
LoreKeeper includes a specialized engine that extracts, de-clutters, and formats EPUB content into clean, structured Knowledge Bases. You can instantly export any book into a &lt;code&gt;.txt&lt;/code&gt; file optimized for ChatGPT, Claude, or Gemini.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local privacy + Global intelligence.&lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dynamic 3D Shelves:&lt;/strong&gt; Smooth navigation and shelf management.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated Metadata:&lt;/strong&gt; Just drop your EPUB; LoreKeeper finds the cover and the plot.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docker-Ready:&lt;/strong&gt; One command (&lt;code&gt;docker-compose up -d&lt;/code&gt;) to get your library running locally.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export for AI:&lt;/strong&gt; Clean text extraction for deep analysis.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;LoreKeeper is now at &lt;strong&gt;v1.0.0&lt;/strong&gt;, but the roadmap is exciting:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;RSVP Speed Reading:&lt;/strong&gt; A "Rapid Serial Visual Presentation" mode to read at 500+ WPM.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Internationalization:&lt;/strong&gt; Adding full English support.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;E-Reader Sync:&lt;/strong&gt; Bridging the gap between the 3D library and physical devices like Kindle/Kobo.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;LoreKeeper is 100% open source. I’d love for the community to try it out, break it, and help me build the future of digital reading.&lt;/p&gt;

&lt;p&gt;Check out the repository here:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/GabrieleTrovato01" rel="noopener noreferrer"&gt;
        GabrieleTrovato01
      &lt;/a&gt; / &lt;a href="https://github.com/GabrieleTrovato01/LoreKeeper" rel="noopener noreferrer"&gt;
        LoreKeeper
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      EN: Immersive 3D EPUB manager with automated metadata extraction and clean text exporting for AI Knowledge Bases. 100% local and Docker-ready.  IT: Gestore EPUB 3D immersivo con estrazione metadati e funzione di esportazione testi per Knowledge Base IA. 100% locale e pronto per Docker.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;📚 LoreKeeper&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;em&gt;Read this in: &lt;a href="https://github.com/GabrieleTrovato01/LoreKeeper#english" rel="noopener noreferrer"&gt;English&lt;/a&gt; | &lt;a href="https://github.com/GabrieleTrovato01/LoreKeeper#italiano" rel="noopener noreferrer"&gt;Italiano&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/167970481/588995171-499a1809-144c-4bc4-b870-f23b3e076ab2.gif?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzgxODA0MDUsIm5iZiI6MTc3ODE4MDEwNSwicGF0aCI6Ii8xNjc5NzA0ODEvNTg4OTk1MTcxLTQ5OWExODA5LTE0NGMtNGJjNC1iODcwLWYyM2IzZTA3NmFiMi5naWY_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNTA3JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDUwN1QxODU1MDVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1lM2Y1MzAwZjllNjgxOWVmOTMyZjRiZjRiYzQwNmUxZjYzOWIwOTdhNGQ2NWNiZDkyYWMyZTg5YTg2NGM4MWFiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZnaWYifQ.3lTLyVrXj7QDyl5eorU-LS5HNH_THJiOTZL8_JZQwOI"&gt;&lt;img width="800" height="500" alt="demo" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F167970481%2F588995171-499a1809-144c-4bc4-b870-f23b3e076ab2.gif%3Fjwt%3DeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzgxODA0MDUsIm5iZiI6MTc3ODE4MDEwNSwicGF0aCI6Ii8xNjc5NzA0ODEvNTg4OTk1MTcxLTQ5OWExODA5LTE0NGMtNGJjNC1iODcwLWYyM2IzZTA3NmFiMi5naWY_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNTA3JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDUwN1QxODU1MDVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1lM2Y1MzAwZjllNjgxOWVmOTMyZjRiZjRiYzQwNmUxZjYzOWIwOTdhNGQ2NWNiZDkyYWMyZTg5YTg2NGM4MWFiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZnaWYifQ.3lTLyVrXj7QDyl5eorU-LS5HNH_THJiOTZL8_JZQwOI" class="js-gh-image-fallback"&gt;&lt;/a&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🇬🇧 English&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;An interactive 3D digital library that allows you to upload, browse, and organize your EPUB files in an immersive graphical environment.&lt;/p&gt;
&lt;p&gt;But that's not all: thanks to the &lt;strong&gt;Export for AI&lt;/strong&gt; feature, you can extract the entire clean text of any book into a ready-to-use Knowledge Base (&lt;code&gt;.txt&lt;/code&gt; file). You can easily upload this file to ChatGPT, Claude, or Gemini to literally "talk" to your books: ask questions about the plot, search for specific concepts, or ask for summaries, leaving the heavy computational lifting to cloud AIs without overloading your PC!&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;⚙️ System Requirements&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;To run this project on your computer, you don't need to configure servers or install Node.js. You only need one free program:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Docker&lt;/strong&gt;: The engine that will run the web application (frontend and backend) isolated and securely with a single command.&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;🚀 Installation Guide&lt;/h3&gt;…&lt;/div&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/GabrieleTrovato01/LoreKeeper" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;I’m looking for feedback!&lt;/strong&gt; What features would you add to a 3D library? Let’s chat in the comments!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>showdev</category>
      <category>opensource</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
