The Churchill Library built with RoR

2024-08-02
tl;dr
Project
The Churchill Library, a Ruby on Rails app to catalogue family's books and provide interaction with via LLM
Tech Stack
Ruby on Rails, Hotwire, TailwindCSS, TBD vector database, and TBD LLM API though interested in AWS Bedrock
Goals
Functional, publicly available app by September; full RAG integration with LLM chat by year-end

I am excited to start a new side project!

settin’ the stage

I started a graduate program in Computer Science from Franklin University at the beginning of the year. While the initial prerequisite class on basic data structures & algorithms in Java was not that inspiring, my recent class on “advanced data structures & algorithms” - recursion, trees, heaps, graphs, sorting - has renewed my excitement in programming for fun again. Furthermore, I’ve been acting as the technical lead for a generative AI chat application at work. Although we mostly inherited the code from a contracting company, it’s been exciting having the opportunity to own the platform.

Instead of just implementing another chat app, I wanted to create an application that interacts with an LLM using RAG with data I actually care about. Given that my whole family are avid readers - even my toddler has amassed quite a large collection of books, often with duplicates - I had the idea to create a web app to help catalogue these books for my data source.

the deets

As for the tech stack, here are my thoughts around why I am going to use Ruby on Rails styled with TailwindCSS and using Hotwire for a dynamic UI:

Although I have the desire to get it with this app, here are my realistic goals given my limited spare time: