Hey there! I'm excited to share version 2.0 of my Goodreads visualization project. Last year, I built this tool using Streamlit to help visualize reading habits (check out the original version here), and now I've rebuilt it using R Shiny, adding a bunch of new features and giving it a pretty pink makeover with help from Claude.
I've kept all the others things from the original version but made them even better:
- Added a cute pink theme throughout the app (because why not?)
- Made the tables searchable and more interactive
- Created better visualizations for your reading stats
- Added a new Books section to browse through your entire collection
- Improved the word cloud to show your reading interests better
- 📚 Get an overview of your reading life with total books, ratings, and pages read
- ✨ Explore a personalized Reading Story that analyzes your unique reading habits
- 📱 Create shareable stats cards to post on social media
- ⭐ See how you tend to rate books (are you a tough critic or an easy pleaser?)
- 📈 Track how your reading habit has grown over time
- 📚 Browse through all your books in one place
- ✍️ Find out which authors you can't get enough of
- 📖 See if you prefer doorstoppers or quick reads
- 🌟 Get a pretty word cloud of your book titles
It's super easy to get started:
-
Grab your data from Goodreads:
- Head to Goodreads.com and go to "My Books"
- Look for "Import and Export"
- Hit "Export Library"
- Or use this direct link to the export page
-
Then just:
- Upload your file to the app
- Or hit "Try Example Data" if you just want to explore.
I used R Shiny for this version, along with these libraries:
- 📊 Plotly for interactive charts
- ☁️ WordCloud2 for the title visualization
- 📋 DT for interactive tables
- 📅 lubridate for handling dates
- 📑 tidytext for text analysis
- 🎨 Custom CSS for the pretty pink design throughout
You can find the app here: https://gkenneth.shinyapps.io/goodreads2/ I'd love to hear what you think about this new version! Feel free to try it out, and let me know if you have any suggestions for making it even better. 💕
Check out the blog post about how I built this app!
