A bot to open all your books

Late Sunday night, long after I should have been off the computer and watching Game of Thrones, I sent a tweet:

Now that it’s the daytime, I felt like I should elaborate a bit. So without further ado, I made a thing 🎏🎉

What is it?

Book Opener is a bot that listens for URLs posted in your Slack team. If any links to books are posted (right now it only works with Amazon links), it checks OpenLibrary.org and helpfully (obnoxiously?) posts a link if the book has a page in the public catalog.


Because Amazon is a place that sells books but isn’t really concerned with availability of information, yet the ol’ Amazon link is the most common (and typically the easiest) way of sharing books online.

Open Library exists in part to combat exactly this problem:

One web page for every book ever published.

I built Book Opener as a small effort to help push that bigger effort forward, and also as a small step in a much longer journey I’ve been plotting for a while.

On a more processes and execution side: it’s the first project I’ve completed entirely on my iPad Pro. Using Glitch on the iPad was a crazy cool experience. Maybe a bit rough around the edges (and some of that is how the iPad handles a keyboard) but there’s so much promise, and I’m excited for what opportunities this points to. I’ve been a huge fan of Glitch’s “starting from something that works” approach since they launched. While I’ve got a number of ideas after the experience, but for now I just say this: a native app could be really neat.

I used a starter bot kit by the ever-inspired and inspiring Jenn Schiffer and added some regex magic and an http call. It’s very limited, both by the nature of being little more than a sketch and due to the Open Library catalog, which can be a bit slim on newer titles. In fact, part of the motivation for building this is to help improve awareness of the project and thus increase contributions.

So what’s next?

There are a few key features I plan to add. The bot could use a bit of personality, the code could stand to be restructured and published on Github, rich link previews are up next, maybe integrating with more than just Amazon and Slack would be nice. Someday there might be nag-via-DM-feature to get link-posters to add missing books to the catalog. Like I said, step one in a journey I’ve been plotting for a while.

If you want to help or just play around with it, check out the Glitch. If you’ve got ideas, I’m all ears. If you want to find out a bit more about what I’m doing and why, ask questions or skim through some other things I’ve written that are especially related:

More to come. Stay tuned.

👆 get on the list where I occasionally send out stuff like this and links to very cool things I find around the internet 👆