Show HN: A Minimalist Coffee Bean Rating System Built with Go and Htmx (roastquest.com)

7 points by jrswab ↗ HN
Hey HN!

After years of experiencing hit-or-miss coffee bean purchases, I built a simple solution to crowdsource coffee bean ratings. The problem is straightforward: buying new coffee beans is a gamble, and with rising prices, a bad bag is both disappointing and costly.

The solution is a no-frills web app built with Go, HTMX, and Tailwind CSS. No accounts required, no JavaScript frameworks, just a simple 5-star rating system for coffee beans.

Technical Stack: - Backend: Go - Frontend: HTMX + Tailwind CSS - No user accounts (intentionally) - Progressive web app

I deliberately chose HTMX over a JavaScript framework to keep things minimal and fast. The entire app is server-rendered with sprinkles of interactivity where needed.

You can try it at RoastQuest.com and let me know what you think and how I can make it better.

This is my first time using HTMX in production - happy to discuss the experience and trade-offs.

11 comments

[ 3.0 ms ] story [ 39.3 ms ] thread
Can there be such a thing as a universal bean rating? To me this seems like a personal preference
What are ratings if not the aggregation of many people's personal preference?
For coffee beans particularly I don’t think finding the mean of people’s ratings would be useful. For example, I don’t like light roasted beans and might rate them 0/5 while people who love lightly roasted beans might give it a 5. Average it out and you might get 2.5/5 which doesn’t convey much information.

Having different categories could be helpful.

This is a great thought. I'll have to do some planning around this. Though I'd assume if you don't like light roasts you'd not be buying them and then would have nothing to rate. But trusting the users to not "hate rate" may not be the bust idea.
I love the minimalistic approach—particularly how you used HTMX to keep everything mostly server-rendered, with just enough interactivity. It’s refreshing to see a project that doesn’t lean heavily on big JavaScript frameworks, especially for a straightforward rating tool.

I’m also interested in how you plan to grow the user base for meaningful crowd-sourced data. Without accounts, I appreciate the zero-friction onboarding, but I wonder if you’ve considered any optional identity or “gamification” features to keep regular users engaged.

Either way, it’s great to see a PWA done simply with Go, HTMX, and Tailwind. As a coffee fan myself, I’ll definitely try RoastQuest—thanks for sharing and good luck refining the concept!

Thanks for giving it a look! And thank you for the kind words

Yes, scaling is going to be in interesting problem to solve. I may need accounts for things in the future such as saving beans and making lists or something but for the functionality of rating and finding beans I want to stay account-less.

I love your suggestion about adding some gamification to the site. I'll have to think about how that could be done well in the context of coffee.

Letting random anonymous people write whatever they want to your database as many times as they want with no protection against brigading or spam is unlikely to ever produce a useful site.

A realistic community contribution site requires at least some thoughtfulness toward malign interference. And no, a captcha doesn't do it.

https://imgur.com/a/sdtWjxj

haha yes, thank you for sharing. I wanted to get out an MVP to see if people would actually want something like this. It was a balance between spending too much time making it perfect upfront vs. getting something out to test the desire for a site link this.
I think what people most fundamentally want out of any rating/review site is assurance of fairness and protection against cheating. Without that, the theme is almost irrelevant.

Though I also agree with the other person who said that average stars don't make sense for coffee because different people like different flavors. An average of stars only works if it's given that people want the same "best" flavor profile of "best coffee taste", and that's very obviously not true. People don't share taste buds or desires in common. All ratings of subjective experiences have the same problem. Monolithic wine ratings are likewise useless for the same reason.

If one person loves acidity and hates bitterness, and another person loves bitterness and hates acidity, that doesn't make bitter coffee and acid coffee both mid. It makes them both great for one person and not the other. Failing to capture that fails to help people find something they'll like.

I got curious and went looking for the source. Is this go-htmx-forge? Looks cool.
The go-htmx-forge is the base for this web app :)