Inspiration

Reading in the digital age felt lifeless. Audiobooks lacked visuals, eBooks lacked emotion. I wanted to break that limitation and create something that blends storytelling, visuals, and interaction into one experience. The idea was simple but bold: make reading feel like watching a movie.


What it does

Book2Vision turns any PDF, EPUB, or TXT book into a multimedia experience with AI narration, auto-generated visuals, interactive Q&A, podcast-style summaries, and a personal library to store everything in one place.


How we built it

We built a lightweight but powerful stack. The frontend uses HTML, CSS (glassmorphism), and vanilla JavaScript for a clean, responsive UI. The backend runs on Python with FastAPI, using AI models for narration, image generation, summaries, and Q&A. Everything is handled asynchronously to keep the experience fast and smooth.


Challenges we ran into

The biggest challenges were managing API rate limits, handling large book files efficiently, and generating visuals and audio in parallel without slowing the system down. Making everything feel instant while heavy AI processing happens in the background took careful optimization.


Accomplishments that we're proud of

We built an end-to-end system where a user can upload a book and experience it in multiple formats within seconds. Combining narration, visuals, chat, and podcast-style content into one seamless flow was a huge win.


What we learned

We learned how to design scalable async systems, optimize AI workflows, and balance creativity with performance. Most importantly, we learned how powerful storytelling becomes when AI is used to enhance—not replace—the reading experience.


What's next for Book2Vision

Next, we plan to add richer interactivity, better character consistency in visuals, more voice options, and cloud-based libraries so users can access their books anywhere. The long-term vision is to redefine how people experience stories.

Built With

  • ai
  • byztez
  • css3
  • deepgram
  • fastapi
  • html
  • openrouter
  • pollination
  • spacy
Share this project:

Updates