TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Show HN: Socca – A virtual café to share ideas and challenge your beliefs

2 点作者 afkqs将近 5 年前

1 comment

afkqs将近 5 年前
Hey everyone!<p>I’d like to show you SOCCA, the first project I’m releasing. It is a text-only chat application, centered around philosophical discussions. It aspires to be a platform where people from all backgrounds and horizons can meet up for a few minutes to learn new things, share ideas and challenge their beliefs (although that latter part might be the most idealistic part of the pitch).<p>It is quite straightforward:<p>1. You either go with the Discussion of the Day, i.e. a pre-selected question to discuss, or choose among 50+ topics (an account is required for the latter)<p>2. You are matched with a random person with whom you can exchange around the question discussed, and share your experience<p>3. You can also vote for the questions that you’d like to discuss next. A new question is selected every few days, based on the votes received. All the questions and their description are also released under CC0 (in the public domain).<p>On the technical side:<p>- The front end is all made with React. I initially started the project without any JS framework in 2019, but in the meantime I started to learn React and decided to remake what I had thus far with it, to get practice.<p>- On the backend, it is a Node application hosted on a DO droplet. Socket.IO is used to provide the real-time discussions, although I’d like to refactor it at some point using ws, which is allegedly faster than Socket.IO. I’m using MongoDB to store the relevant information but I’m leveraging Redis as much as I can for the data that is constantly changing, and to get sticky sessions.<p>At the moment there is no “Connect with” &#x2F; “Add as a Friend” feature. I understand that people might want to keep chatting with the person when they got a good match and enjoyed the discussion, but I wanted to try with the “randomised only” approach first. That being said, I wrote the backend with the “Connect with” feature in mind, so that can be quickly deployed if there’s any interest.<p>I’m looking forward to hearing what you think, and if you have any questions and suggestions, I’d be happy to answer.