The Shelf
A library that organizes itself—and keeps your data yours.
- Library
- PDF + EPUB
- Classification
- 21 shelves, on device
- Cloud services
- Optional authentication + sync

The Shelf organizes PDFs and EPUBs into 21 shelves directly on the device. Text extraction, document classification, OCR, and the core library use local processing and SQLite. Firebase authentication and cloud synchronization are optional services; cloud inference is not required to classify a document.
Challenge
Scanned files need a different import path from text-based books. A useful library has to handle both, and give the reader a way to correct uncertain classifications.
Approach
A pure-Dart TF-IDF and logistic-regression pipeline classifies extracted text. Scans go through Apple Vision on iOS or ML Kit on Android. When recognition produces too little useful text, the reader is asked to choose a shelf instead of silently accepting a poor result.
Outcome
An offline-capable library with 21 automatic categories, custom collections, and a manual fallback for difficult scans. Optional cloud sync is separate from the on-device classification workflow.
Core stack
- Flutter
- Firebase
- OCR
- SQLite
- Firestore