Live data from Hacker News

Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

github.com

1–10 of 59 posts

Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#1
Clickvote takes the hassle of building your own reaction components around your content.

Showing real-time updates of likes, upvotes, and reviews between clients.

Learn about your members through deep analytics.

Deal with an unlimited amount of clicks per second.

You can read the full article here:

https://links.github20k.com/click-vote

The open-source Library is here:

https://github.com/clickvote/clickvote

Please let me know your thoughts!

Am I building something useless?

Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context
github.com

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#4
Is the application architecture diagram a satire? It needs a lot more justification! Your documentation should very clearly explain why `upsert into user_rating (user_id, rating, thing_id)` doesn’t work at scale, and the limit where it breaks down.

Maybe if you’re running a “upvotes SaaS” the architecture makes sense but the given architecture diagram is more complicated than the production product I work on (https://notion.so).

Are real-time updates a feature users want here? I’ve never used a voting or rating site with real-time updates.

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#5
post #4

Is the application architecture diagram a satire? It needs a lot more justification! Your documentation should very clearly explain why `upsert into user_rating (user_id, rating, thing_id)` doesn’t work at scale, and the limit where it breaks down. Maybe if you’re running a “upvotes SaaS” the architecture makes sense but the given architecture diagram is more complicated than the production product I work on ( https:…

I am failing to understand your question insert into user_rating will work. This is what it's doing now?

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#6
post #4

Is the application architecture diagram a satire? It needs a lot more justification! Your documentation should very clearly explain why `upsert into user_rating (user_id, rating, thing_id)` doesn’t work at scale, and the limit where it breaks down. Maybe if you’re running a “upvotes SaaS” the architecture makes sense but the given architecture diagram is more complicated than the production product I work on ( https:…

I am failing to understand your question insert into user_rating will work. This is what it's doing now?

I think they mean, why introduce this new piece of infrastructure when you can create this internally with a singular table and probably a queue somewhere if we're being really fancy.

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#7
post #4

Is the application architecture diagram a satire? It needs a lot more justification! Your documentation should very clearly explain why `upsert into user_rating (user_id, rating, thing_id)` doesn’t work at scale, and the limit where it breaks down. Maybe if you’re running a “upvotes SaaS” the architecture makes sense but the given architecture diagram is more complicated than the production product I work on ( https:…

https://github.com/clickvote/clickvote/blob/main/libs/nest-l...

And yes - Twitter for example?

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#8

Earlier quoted context omitted.

I am failing to understand your question insert into user_rating will work. This is what it's doing now?

I think they mean, why introduce this new piece of infrastructure when you can create this internally with a singular table and probably a queue somewhere if we're being really fancy.

I think you can def do it on a low scale. You would not need this tech.

At least not the Kafka / Timescale feature. It would place nice if you were a bit bigger - a news website, a social media and so on.

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#9
Why do you need Kafka, Redis, Mongo, AND Postgres? Arguably it could all be done with Postgres or Redis: both have great pubsub implementations. But what could you possibly need two databases for and a queue implementation alongside a popular backend for queues?

I don't mean to criticize, but the complexity of this is what I'd expect for something handling hundreds if not thousands of qps. Even then I'd expect you could probably fine-tune a Redis Cluster setup and cross out 2/3 of that architecture diagram. Hell, you don't even need WebSockets: a system like this polling for an integer or two should be scalable to tens of thousands of qps.

Re: Show HN: Clickvote – Open-source upvotes, likes, and reviews to any context

#10

Why do you need Kafka, Redis, Mongo, AND Postgres? Arguably it could all be done with Postgres or Redis: both have great pubsub implementations. But what could you possibly need two databases for and a queue implementation alongside a popular backend for queues? I don't mean to criticize, but the complexity of this is what I'd expect for something handling hundreds if not thousands of qps. Even then I'd expect you co…

As for Postgres, I chose Timescale because you can easily change it at any time for Postgres.

I plan to have it as a managed service in the future, which means that it will hold a lot of clients - some big, some small.

But I think I should def make another smaller version without Kafka and Timescale.

Post reply on HN