Inspiration
Physical books are expensive and environmentally taxing, but digital reading often isolates our libraries behind personal screens. We wanted to build a brighter future for everyone by restoring the shared magic of the family bookshelf. E-books gave us infinite convenience, but they stole the tactile joy of running a finger down a spine, displaying a collection, and effortlessly passing a favorite novel to a family member.
Pibrary was born to bring that physical presence back to digital reading. We envisioned a centralized piece of home decor—crafted not from synthetic materials or flat-pack particleboard, but intended to be built from organic wood and natural fibers—acting as a modern "hearth" for a home’s digital library.
What it does
Pibrary is a bookshelf reinvented for the 21st century. It allows users to:
- Seamlessly move books from the web to your hand.
- Curate and display digital libraries on a central kiosk.
- Share eBooks, making reading accessible for everyone in the home.
Acting as a living room hub, anyone can walk up, see what the family is reading, and discover new books. When you want to take a book with you, simply dock your e-reader (like a Kobo Clara BW). Pibrary instantly recognizes the device, allowing you to drag and drop files with zero cloud-syncing headaches. We also focused heavily on "unflattening" the glass of the kiosk touchscreen—using precise haptic feedback and rich sound design to make interacting with digital files feel as weighty and satisfying as handling physical media.
How we built it
Our tech stack bridges embedded hardware networking with a modern web ecosystem.
- Hardware: The brains of Pibrary is a Raspberry Pi 4 running an offline-first local network. We used an OTG Y-Splitter to separate power and data, allowing a 15W power bank to handle the Pi's heavy load. A Galaxy Tab S7+ is tethered via USB, acting as both the primary touchscreen kiosk and the DHCP router for the local network.
- Backend: We built the server using Python 3.14+ and Flask. To handle library management, we integrated Calibre via
calibre-debug. For the physical docking mechanism, we utilized nativelibusbto instantly detect e-reader hotplug events, broadcasting connection changes in real-time to the frontend over WebSockets using Flask-Sock. - Frontend: The highly tactile kiosk interface displayed on the tablet is built with Vite, React, and TypeScript. It connects directly to the Pi's
0.0.0.0bound server address over theusb0interface, ensuring ultra-low latency.
Challenges we ran into
Balancing the power draw of the Raspberry Pi 4 with the tablet’s data connection was a massive hardware hurdle. A single USB-C cable would force the tablet to try and power the Pi, leading to aggressive back-powering and under-voltage crashes. We had to physically isolate the power lines using a dedicated splitter so the Pi could pull its needed 5V/3A from an external source without interrupting the data stream.
On the software side, ensuring the Flask backend could reliably detect hardware interrupts (like a Kobo plug/unplug event) without requiring the user to manually refresh the kiosk required deep integration with libusb and custom WebSocket streaming.
Accomplishments that we're proud of
We are incredibly proud of building a 100% localized, cloud-free hardware bridge. Leveraging the Pi 4's dual USB architecture—using the CPU-wired OTG port for the tablet's local network and the PCIe-driven USB-A ports as a host for mounting the Kobo—resulted in a flawless, plug-and-play experience.
We also succeeded in creating a UI that breaks away from the feeling of a standard flat app; through acoustic and haptic feedback, it genuinely feels like interacting with a physical collection.
What we learned
We gained extensive hands-on experience with Linux hardware networking, specifically configuring Android USB tethering and routing local web servers through a Gadget Mode usb0 interface. We also learned how to bridge lower-level C libraries (libusb) with a Python Flask server to create a highly responsive, event-driven backend.
What's next for Pibrary
Moving forward, we want to physically manufacture the full organic wood chassis to complete the living room furniture aesthetic. On the software side, we plan to expand the React frontend to support individual family profiles, custom reading queues, and automatic sync support for a wider range of e-reader brands beyond Kobo.
Log in or sign up for Devpost to join the conversation.