岛链 IslandChain 正式开源

每一座孤岛,都值得被看见。
经过数月的开发与迭代,岛链 (IslandChain) 今天正式以 MIT 协议 在 Gitea 上开源。

什么是岛链?

岛链是一个去中心化博客互联系统。它不只是又一个博客程序,而是一个让独立博客重新连接起来的网络。
每个独立博客都是一座孤岛。岛链通过 ActivityPub 协议(与 Mastodon 等 Fediverse 实例互通)和 Webmention 机制,让这些孤岛之间可以互相评论、点赞、引用——就像分布式社交网络,但你拥有全部数据。

为什么做岛链?

个人博客最大的痛点:没有流量、没有互动、写给自己看。
我们想改变这件事。中心化平台虽然带来了流量,但代价是失去对内容的控制权。岛链的思路不是把内容集中到平台,而是让独立博客在协议层面互联。
  • 你在 A 博客评论一篇文章,这条评论会同步到你自己的博客
  • 别人在 Mastodon 上可以关注你的博客、点赞、评论
  • 你的文章被引用时会收到 Webmention 通知
不需要注册任何中心化平台,你只需要拥有自己的域名。

核心特性双引擎主题系统

岛链内置两套主题引擎:
山海间(默认主题) —— Vue 3 SPA 架构,支持可视化主题设置(配色方案、卡片样式、暗色模式、轮播图等),9 种页面模板,沉浸式阅读体验。

朋友圈主题 —— 微信朋友圈风格的动态流,图片九宫格、嵌套评论、点赞、打赏,完美融合 ActivityPub 联邦动态。
两个主题都完整支持暗色模式、移动端适配、SEO 优化。

ActivityPub 联邦互联

岛链深度集成了 ActivityPub 协议:
  • WebFinger + HTTP Signature 身份验证
  • 与 Mastodon、Misskey 等 Fediverse 实例双向互通
  • 联邦动态展示:朋友圈主题本地+远程按时间线混排,山海间首页底部互联动态区块
  • 联邦点赞/评论:远程 Like/Announce 活动处理
  • 邻居推送系统:自动向邻居站点推送新文章

全功能 Markdown 编辑器

基于 CodeMirror 6,内置 9 个子面板:媒体库、表情面板、短代码面板(B站视频/网易云音乐/多集视频/折叠面板/友情链接等15种短代码)、音频面板、视频面板、B站面板、链接面板、代码面板、表格面板。

后台管理

27 个管理页面:从仪表盘、文章管理、分类标签、评论管理到联邦设置、备份恢复、访客统计——功能完整覆盖博客运营全流程。

访问统计

后台可视化统计面板,区分人类访客和爬虫,日趋势折线图。

插件系统

钩子驱动,内置 mail-smtp 插件(PHPMailer 集成,新评论/新文章自动邮件通知管理员)。开发者可通过 8 个钩子事件扩展系统功能。

Flutter App(开发中)

Flutter App 正在开发中,预计将支持文章浏览、分类筛选、Markdown 渲染、评论阅读、暗黑模式、图片缩放、搜索等功能。iOS 版本也在规划中。

完备的安全体系

JWT + Session 双重认证、PDO Prepared Statement 防 SQL 注入、输出双重转义防 XSS、IP 级别速率限制、短代码协议白名单、媒体上传 MIME 校验。

运维友好

Docker Compose 一键部署、数据库+文件一键备份与恢复自动轮转、完善的 SEO 支持。

技术栈[td]

层级
技术选型
后端 PHP 8.0+,PSR-4 架构
前端 Vue 3.5 + Vite,Element Plus + Naive UI
数据库 MySQL 5.7+ / MariaDB 10.2+
移动端(开发中) Flutter 3.0+ / Dart 3.0+(Android / iOS)
缓存 Redis
部署 Docker Compose / Nginx / Apache

开发历程

岛链从一个简单的想法开始:博客不应该是一个个信息孤岛。
从最初的博客框架,到接入 ActivityPub 协议,到开发山海间主题和朋友圈主题,再到 Flutter App(开发中)——每一步都在朝着让独立博客重新连接这个目标前进。
特别感谢社区用户在整个开发过程中提供的反馈和建议。

结语

岛链以 MIT 协议开源,欢迎任何形式的参与:提 issue、提交 PR、撰写文档、开发主题和插件,或者只是把它部署起来,拥有一个真正属于自己的博客。

 

该资源来源于WordPress主站,点击下方按钮前往原文页面获取完整内容:

跳转至 WordPress 主站原文页面

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。