OpenAlternative 按专有软件的替代关系、分类、许可证和仓库活跃度整理开源项目,适合许可清楚且持续维护的工具,供开发者和自托管用户比较。
OpenAlternative 的项目卡会显示 Stars、Forks、最近一次 commit,以及“它可以替代哪款专有软件”。读者还会从 Alternatives、Categories、Latest、Self-hosted、AI-native、Licenses 和其他合集寻找项目。
这些人通常已经知道自己想替换 Notion、Google Analytics、Postman 或其他闭源工具。他们会继续检查源码、许可证、托管方式、仓库活跃度和安装文档。公开仓库、许可清楚、可安装且仍在维护的开源工具最适合投稿。
这个渠道的关键不是上线日期。项目能否长期被合适的读者找到,取决于替代关系是否准确、仓库是否持续维护,以及项目页中的分类和部署信息是否真实。
先确定用户正在替换什么
OpenAlternative 按专有软件建立替代页。提交前搜索项目名、仓库、官网和目标软件,确认没有重复条目。当前表单也会在项目已经收录时提示 already been published。
本站建议只选择主要任务相同的专有产品。开源分析工具可以替代 Google Analytics,使用 AI 的会议记录应用却不能只因为“都有 AI”就挂到 ChatGPT 或 Notion 名下。
准备一句可以核验的替代理由:两款产品完成哪些相同任务,你的项目支持哪些部署方式,又有哪些能力尚未覆盖。替代对象越热门,不代表关系越合理。
官网和仓库会先经过资格检查
未登录访问 Submit(在新标签页打开) 会转到登录页,公开页面看不到账号内表单。不过,当前前端字符串包含几项投稿指南:仓库应公开并托管在 GitHub、GitLab、Codeberg 或 Bitbucket。官网应使用自定义域名,不接受 vercel.app、netlify.app 等临时子域名。
项目还必须是已经可用的完整应用。当前指南排除 CLI、脚本、软件库、AI wrapper,以及仍处于 waitlist 或 coming soon 的产品。
同一组字符串还准备了官网不可访问、仓库不存在或不公开、仓库已归档、临时域名和不符合资格等错误说明。这些文案可以用来准备材料,但不能证明每项检查都会按固定顺序触发,也不应写成永不变化的审核政策。
因此,提交前应当完成这些检查:
- 官网使用长期自定义域名,并能在未登录窗口打开;
- 仓库公开且没有 archived,根目录能找到开源许可证;
- README 写清安装、最小示例、支持平台和依赖;
- Self-hosted 项目说明数据位置、部署条件、升级与备份;
- 官网、文档、Demo 和仓库链接都指向当前版本。
About(在新标签页打开) 同样写明平台支持 GitHub、GitLab、Codeberg 和 Bitbucket,但当前的 repository_not_found 错误文案只要求确认 GitHub 仓库存在且公开。两处文案并不一致。
非 GitHub 项目不能仅凭 About 判断一定可以提交,也不能从这一条错误消息推断平台只收 GitHub。登录后应以实际表单反馈为准,仍无法确认时再通过 hello@openalternative.co 询问。
用当前字段文案准备资料
打开 Submit(在新标签页打开),未登录用户会转到登录页。当前可使用邮箱 magic link、Google 或 GitHub 登录,并进入 Dashboard。
截至本次核验,公开前端字符串包含四个投稿字段标签:
Project Name;Website URL;Repository URL;Suggest an alternative:填写一款知名的专有替代对象。
这些字符串足以支持提交前的准备清单,但未登录状态无法确认账号内表单的实际布局、必填状态和显示条件。填写时应以当前 Dashboard 为准。
同一组字符串还包含可选的 Discount 与 Discount Code。说明文字称,折扣会在条目上显示 badge。如果优惠通过链接自动生效,可以不填代码。只提交真实且仍有效的优惠,并在失效后及时移除。折扣 badge 是页面信息,不代表排序提升、更多访问或收录保证。
Suggest an alternative 下方的当前说明写着,申请会参考项目质量、社区采用情况和相关性,并称拒绝时会提供改进反馈。这是当前前端文案,不应扩写成固定回复方式或时间承诺。
前端字符串还包含 {name} has been submitted。实际送出后看到这条提示,可以把它作为本次表单动作完成的界面信号,但它不表示已经收录。若页面显示官网不可访问、仓库不存在、仓库已归档、临时域名或不符合资格等错误,应先核对对应事实,不要通过换名称反复提交。
Activity score 会随仓库变化
About(在新标签页打开) 把排序依据称为 health score,公开项目页则显示 Activity score。主要因素包括 Stars、Forks、项目年龄和最近 commit。Stars 与 Forks 权重相同,新项目获得轻微加成,长期不更新会受到逐渐增加的惩罚。
新项目不必等到 Stars 很高才提交。仓库年龄和最近 commit 会进入健康分计算,但页面没有公开可用于预测名次的完整公式。持续发布、修复问题和维护文档应服务于实际用户,不要把一次 commit 换算成排名变化。
不要制造 Stars、无意义 commit 或 Fork。Activity score 也不保证项目获得某个位置、访问量或注册数。
预览页不等于正式收录
提交成功提示只表示表单走完了当前步骤。可公开访问的 /{slug} 也可能是 Scheduled 预览页。页面不再显示 Preview 或 Scheduled 提示,并且 Dashboard 状态变为 Published,或项目进入常规的 Latest、Alternatives、Categories 页面后,才能确认正式收录。这些入口说明项目及其关系已经可见,不代表固定排序。
公开页会显示网站、仓库、许可证、Self-hosted 状态、Stars、Forks、Last commit、Repository age 和 Activity score。收录后应逐项核对,特别是替代对象、分类、许可证和部署方式。
如果条目已经存在,不要重复投稿。当前前端的 Claim 对话框要求用与官网域名匹配的邮箱接收验证码。对话框还写明,认领后会显示 Verified badge,并可更新工具资料、管理 Categories 和 Alternatives,以及选择是否升级展示。
这些是当前界面描述的认领功能。Verified 只说明完成了站方当前的域名验证流程,不等于编辑推荐,也不保证排序、访问、转化或永久收录。实际权限仍以认领后的 Dashboard 为准。
无法认领或需要报告错误时,可以使用项目页当前提供的 Report,或通过页脚的 hello@openalternative.co 联系站方。不要创建重复条目代替更正。
收录后继续维护仓库事实
发布新版本后先更新 README、安装命令、许可证、官网和 Demo。仓库迁移、改用不同许可证、停止 self-host 或改变主要任务时,再同步修改 OpenAlternative 资料和替代关系。
项目停止维护时,在仓库醒目位置说明,并让目录显示 Archived 或正确状态。读者会根据 Activity score、Last commit 和替代关系规划迁移,过期信息会影响实际技术决策。
OpenAlternative 不争抢发布日期,提交重点是替代关系和可核验的仓库事实:
- 搜索项目名、仓库、官网和主要专有替代对象,排除重复条目。
- 使用自定义域名,确认仓库公开且未归档,并补齐许可证、安装、Demo 和 Self-hosted 文档。
- 用邮箱 magic link、Google 或 GitHub 登录,填写项目名、官网、仓库和一款准确的替代对象。
- 把
{name} has been submitted当作表单完成信号。公开页不再显示 Preview 或 Scheduled,并在 Dashboard 标为Published,或进入常规发现页面后,再确认正式收录。 - 已有条目就使用 Claim,不建立重复页面。认领后继续更新仓库、分类、许可证、部署方式和替代关系。