bookshelf
bookshelf copied to clipboard
📚 What I’ve read so far, powered by Goodreads
bookshelf
What I’ve read so far.
Just kidding.
About
This project runs once a week, fetches my Goodreads profile and generates a page with its content. Inspired by Frank Chimero, but since I’m not as good of a designer as he is, I put my effort into automating it.
Goals
I’ve looked into a few tools to put this together, but I soon realised that not much was needed. No fancy technologies or front-end frameworks. There was no need to make this anymore complicated than a static page. The only new things I’ve looked at were:
- Ramda, since I was interested in learning something beyond Lodash;
- GitHub Actions, so this project can tap into this new feature to generate the required static page.
Run this project
npm install
npm start
Before running the application, make sure you have these variables set (you can use a .env
file for it, since I’m using dotenv
):
-
GOODREADS_KEY
As usual for APIs, you’ll need a Goodreads key -
GOODREADS_SHELF
A string of the shelf you walk to look at (mine’s'read'
) -
GOODREADS_USER
Whenever you’re on your Goodreads profile, your ID will be the numeric part athttps://www.goodreads.com/user/show/12345678-something
Check package.json
for all the available commands, under the "scripts"
key.
Future plans
- [x] Scope Google Fonts to specific chars (source
- [x] Change the GitHub Action from running on push to running every Monday
- [x] Put this GitHub Page under https://bookshelf.gnclmorais.com
- [ ] Title filter to allow display of shorter, more custom titles