-
Return to Astro
I’ve returned to some work on the astro side of things as I ran into some wheel-spinning on Sanity, almost all of which is very, very (very) likely to be the limitations of me bluffing my way through React in general and the manipulation of state in reaction in particular. So today I added shelf locations (barebones) to the web component, defined a route for individual books.
-
What I have been working on
I may not have gotten as much done on bookshelves.dev as I wanted to over the summer, but that is because I was busy buying a home, moving (again), hosting plenty of guests, and taking on a LOT of yard and garden work, for starters. So the “time off” from being a full-time parent to a 2-year-old disappeared before I knew it.
What did I do?
- A lot of testing with and evaluation of Git-based and API-based headless CMS integration.
- Made nontrivial improvements to scraping and API handling (not all of that is shipped)
- Cleaned up and expanded shelf and book display via shortcode
- Added micro.blog json import
It was nice to mark some of these as done when updating the project’s readme file just now. It just doesn’t sound like a lot. Again: busy. But also, I had some very helpful and exciting conversations with some people interested in this project, and in offering me opportunities related to that.
Good things that will happen if I can just keep carving out some time to work on this. Putting some fun tasks at the top of the project’s feature backlog got me excited for upcoming work. However, I am also mindful that one of the rationales for this whole endeavor is to help me read more, so I hope to use the system a bit more regularly as well. I have ideas on that front as well.
-
Adding a blog feed
I added blog posts to the bookshelves.dev site, imported from my micro.blog. The idea is that I will start using this to document bits of work that I’m able to finish, or to talk about what is blocking me.
I’m not sure why I like the idea of using the micro.blog front end, other than it feels indiewebby and dead simple. And it was sure simple to find the automatically generated public json feed. It was almost as simple to import the data from that feed into 11ty as global data.
Because I theoretically might use this platform for posts that don’t have anything to do with the bookshelves.dev project, I filtered out items that don’t have a “bookshelves” tag when creating the data collection in 11ty and using the pagination functionality to build individual posts.
The only thing left to do was to create a Netlify build hook to trigger a deployment when a new blog post is published, which is rather clumsily accomplished via Zapier and the micro.blog’s RSS feed.
Is this overly complicated? Almost certainly. But It does exactly what I want it to do. And I’m happy to mark this one as done.
-
CSS is hard to tackle piecemeal
Tonight I tweaked the markup and fiddled with the tailwind classes on bookshelves.dev to get the featured items on the homepage to bother me less.
Since they look like cards, I wanted the whole thing to be clickable. But wrapping the existing markup in an anchor tag of course messed with the colors and text-decoration, so I had to track down how to extend the tailwind.config. Then I wanted some subtle hover animation and finally feel better about that. I liked it enough to implement it for the card component layouts of the shelf and book shortcodes across the site. Along the way, I also eliminated a couple of things that were wonky at intermediate breakpoints.
Overall I still feel really unhappy with the clunkiness of the visual design and the haphazard feeling of the markup and the chaos of tailwind classes. But it hurts me a little bit less.
I sure wish I had time to go deep on the css from scratch. But there are other things I really want to be doing on the site right now. Fiddling with these little things is a luxury I don’t often afford myself lately.
subscribe via RSS