Skip to content

atangccc/Astrahub

Repository files navigation

AstraHub 星链插件

License: AGPL v3

介绍

每个独立博客都有自己的友链页,上面链着几个朋友,朋友又链着他们的朋友。但这些关系只存在于单个站点里,没有谁把它们串起来看。

AstraHub(中文叫「星链」)做的就是这件事:把分散在不同博客上的友链关系、节点身份和公开动态串成一张可探索的关系网络

它不是又一个友链展示页。传统的友链管理是"我这个站挂了谁",AstraHub 关心的是"几百个站连起来之后长什么样"——谁和谁互链了,哪些圈子天然抱团,哪些博主气质相近但还没发现彼此。系统基于你已有的友链数据和公开 RSS,自动组织连接结构,画出这张网。

加入之后,你不仅能在线交换友链(不用发邮件),还能沿着节点关系、标签和星团结构,快速定位与你兴趣接近的博客和创作者圈层。接入的节点越多,这张网的发现效率就越高。

你可以把它理解成独立博客圈的「连接层」:它不取代 Halo 或任何博客系统,而是在博客和博客之间搭一座桥,让好内容不再只靠搜索和运气被看见。

特色

  • 连接价值
    把原本分散的独立博客连接起来,形成真实可见的博客关系网络。你不再是一个孤岛,每一条友链都成为图谱中的一条边,被全网共同读取、共同放大。

  • 发现价值
    不再一个个博客手动寻找友链或圈层,而是直接从图谱、标签和节点关系中发现你想要的博客与创作者。沿着"朋友的朋友"快速触达更多与你气质相近的人。

  • 曝光价值
    当加入生态的人越来越多,每个博客都会获得更高的可见度,出现在更多关系链、动态流和检索结果中。

  • 交换友链新范式
    告别一个个跑到对方网站找入口、填表单、等回信的旧流程。在 AstraHub 里看到心仪的博客,直接发起友链申请,对方在自己后台一键审核通过,双向友链同步生效,整个换链过程不超过 1 分钟。

  • 关系图谱
    内置交互式星链图谱,把站点之间的友链与圈层关系可视化展现。一眼看清谁在你的圈层里、谁处在网络枢纽位置、哪些节点之间存在高频连接。

  • 圈层归属
    系统会根据站点信息、内容主题与标签,把博客自动归入对应星团(圈层)。同圈层的博主可以彼此可见、相互发现,比逛友链页一个个翻效率高出几个数量级。

  • 迁移无忧
    换服务器、换域名后,插件支持重新登舱恢复站点身份,原有的友链关系与圈层归属全部保留,博客搬家不会让你与圈友失联。

  • 主题嵌入
    附带前端组件 galaxy-link-widget,Halo 主题加一行引用即可在侧边栏或页脚展示圈友列表,不需要改动主题代码。

系统要求

  • Halo >= 2.23.0
  • Node.js >= 18(构建时)
  • Java >= 21(构建时)

安装

方式一:Halo 应用市场(推荐)

打开 Halo 控制台 → 插件 → 应用市场,搜索 AstraHub 星链 一键安装。

方式二:手动安装

  1. Releases 下载最新的 .jar 文件
  2. 在 Halo 控制台 → 插件 → 上传插件,选择刚下载的 jar 文件
  3. 启用插件

配置

启用插件后,在 设置 → 星链接入配置 中填写:

  • 重新登舱:站点搬家或换域名后,使用「重新登舱」恢复在网络中的身份
  • 站点名称 / 站点简介 / RSS 地址:登舱时会自动从 Halo 系统设置中拉取,也可手动覆盖

开发

本地开发

# 拉取代码
git clone https://github.com/atangccc/Astrahub.git
cd Astrahub

# 安装前端依赖
./gradlew pnpmInstall

# 启动 Halo 开发环境(带插件热加载)
./gradlew haloServer

构建 JAR

./gradlew clean build -x test

构建产物位于 build/libs/PluginAstraHub-<version>.jar

许可

本项目采用 AGPL-3.0 许可证。

AGPL-3.0 是一个 copyleft 许可,使用本项目(包括通过网络服务对外提供功能)必须保持开源并使用相同协议。

联系与支持

About

博客星球是一个面向独立博客生态的星链协作系统。它不是单纯的友链展示页,而是把博客之间原本分散、孤立的友链关系、节点身份和公开动态组织成一个可联动、可检索、可探索的博客关系网络。

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages