核心机制
- Subreddit 为第一公民:每个子版块是独立的主题空间,拥有自己的规则、版主团队、外观与发帖策略。
- Karma 信用体系:用户与内容双维度累计声望,影响发帖频率限制、部分版块准入与展示权重。
- Hot 排序算法:综合票数、发布时间与对数平滑,兼顾「新鲜度」与「共识度」,而非简单按票数排序。
- 树形评论区:任意深度的嵌套回复,支持折叠、排序切换、单线展开,是长尾讨论的核心载体。
- 社区自治:版主拥有封禁、删除、加精、锁定、设置版块规则等完整权力,平台只做底线治理。
技术栈
Python (早期)GoGraphQL 网关Thrift / gRPCCassandraPostgreSQLRedisKafka
值得借鉴
- 投票交互
- 上下箭头一体化卡片,票数实时变化并带状态记忆;已投票控件高亮,支持撤销。
- 评论树
- 无限嵌套 + 「继续此讨论串」链接 + 单条评论永久链接,解决深层话题定位问题。
- 信息流
- Hot / New / Top / Rising / Controversial 多档排序,Top 支持时间窗口(小时/天/周/年/全部)。
- 内容类型
- Text / Link / Image & Video / Poll / Crosspost 五类发帖形态,Template 化引导。
- 版块装扮
- 每个子版块可自定义 Banner、图标、主题色、侧边栏 Widget,形成独立站点感。
- Reddit Recap
- 年度个人行为报告,极强的用户留存与分享设计。
公认痛点
- 信息流噪点高,热门内容与用户兴趣错配,需要大量手动管理订阅。
- 评论区深度过大后阅读体验急剧下降,移动端深层嵌套折叠成本高。
- Karma 门槛与自动审核规则对新人不够友好,存在误伤。
- 服务器端渲染历史包袱重,移动端与 Web 端体验割裂。
对本项目的启示
- →把「社区」而非「帖子」作为核心实体,是长期可扩展的关键。
- →排序算法必须把「时间衰减」写进公式,否则老内容永远霸榜。
- →投票必须可撤销、有状态反馈,否则用户体验断层。
- →评论树需要同时提供「上下文折叠」与「单串展开」两条阅读路径。