Hey Ghost community 

I’ve been running my Ghost blog for a few months and always wanted a simple way for readers to show appreciation without writing comments. I found the original applause-button project (thanks Colin Eberhardt for the MIT license), but needed something different. I wanted members to be able to change their mind and unlike posts, plus integrate directly with Ghost’s member system. So I spent a few weeks building a heart button that:
- Lets members toggle likes on/off
- Uses your existing member authentication (no extra accounts)
- Runs alongside Ghost in Docker
The biggest challenge was getting Ghost’s JWT tokens to validate properly on the backend. After some debugging I got it to work.
What I’d love feedback on:
- The installation process - is the documentation clear?
- Performance - anyone willing to test with high traffic?
- Feature ideas / improvements - what else would make this useful?
I’ve released it as open source since this community has given so much. If you end up using it, I’d love to know!
Happy to answer any technical questions about the implementation.
Link to check out my GitHub Repo. You can see it working on my blog.
Thank you for your time.
4 Likes
Thanks for sharing. Just wanted to note that the server file in your repo is empty.
I’ve been thinking about a similar light-weight extension via Ghost’s JWT setup as well for consent management and/or form data. I do wonder if this will end up being the plugin architecture approach as things like activitypub and analytics take this approach.
1 Like
Thank you for the heads up. So dumb on my part. I was too eager to share. Fixed!
The “Feedback” button, along with the comment count, is something that brings engagement, so having that built in would be ideal. Nonetheless, it’s beyond belief that Ghost is open-source.
I assume I need to be able to get onto the server to install this? My site is hosted by a hosting company that does not allow FTP access.
Thanks for checking it out!
You’re right. This requires server access to run the backend API. If you’re on managed Ghost hosting, you won’t be able to install this since it needs a separate Docker container running alongside Ghost.
This solution is specifically for self-hosted installations where you have control over the server.
The technical limitation is that the like system needs a backend API to store the data and verify members; something that can’t be done with just theme files alone. Managed hosting typically only allows theme uploads, not custom backend services.
This is one of the trade-offs between managed convenience and self-hosted flexibility.
The original applause-button solves this by using their external service.
Hope this helps.
P.S. - If you do move to self-hosted Ghost in the future, the GitHub repo has full setup instructions.
1 Like
Amazing! I was looking for something like this and have just implemented it on my website. Thanks!!!
1 Like