Shelf
Library book search and availability alerts
Built a React application and Convex backend for finding physical books across East Baton Rouge Parish Library branches. Users can search the catalog, save books to private lists, and subscribe to availability alerts for selected libraries.
Catalog integration
Built a reusable TypeScript catalog client shared by the app backend and CLI. It handles anonymous sessions, XML responses, physical-book filtering, and availability across library branches.
Private reading lists
Google sign-in and Convex persist personal book lists across sessions. Backend functions enforce ownership when users create lists or save and remove books.
Availability notifications
Scheduled checks monitor selected branches during daytime hours. AWS SES sends email when books become available, with notification state preventing repeated alerts for unchanged availability.
Screenshots
CLICK TO EXPAND

