Fluxio 信息流聚合:RSS、快照与本地优先的架构

Fluxio 是一个信息流聚合工具:横向切换多个信息源(新闻、博客、社区),一键收藏到 Obsidian。这篇文章是它的架构决策记录——尤其是三个核心取舍。

一、需求与定位

O b s i U d R i L a n " 线 "

二、架构总览

O F S b l Q s u L i t i d O t W t i b e e A / e a s r b P n i V + I U d i R H M i e 1 L T a a w 2 M r n 7 L k / . d 0 o . w 0 n . 1 : 8 7 3 0

三、核心决策 1:WebView 还是快照

场景:信息流里点开一篇文章 → 详情页。

A B W e 线 b V i e w " U R L / "

决策默认快照,WebView 兜底

= = / " H T M L "

为什么收藏必须存全文:链接会失效、内容会被改、离线要能读——收藏的语义是"保存这一刻的内容",不是"记住一个地址"。

四、核心决策 2:本地优先

S Q L i t e

实现:SQLite 本地库 + Obsidian 目录同步(Markdown 文件)。

/ O b s i A d P i I a n v a u l t S Q L i t e + M a r k d o w n

五、核心决策 3:收藏进 Obsidian 的格式

Obsidian 收藏的必须是"内容详情",不是链接

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
---
title: "AI 面试产品的幻觉治理"
source: "https://xxx.com/article/123"
collected: "2026-03-03 10:00"
tags: [AI, 面试]
---

# AI 面试产品的幻觉治理

(正文全文,图片本地化)

> 来源:[原文链接](https://xxx.com/article/123)

关键点

f r o n t O m b a s t i t d e i r a n 线 /

六、收件箱:任何 App 都能"分享进来"

浏览器扩展(MV3)

C h r o m e " F l u x i o " P O S T h t t p : / / 1 2 7 . 0 . 0 . 1 : 8 7 3 0 / i n b o x

移动端分享(规划):系统分享菜单 → 调本地服务。

P G G P O E E O A S T T S P T T I / / / / 1 i i i s 2 n t t y 7 b e e n . o m m c 0 x s s . o 0 : b . i s 1 d i : d 8 i 7 a 3 n 0 U R O L b / s i d / i a n /

本地 API 的安全:绑定 127.0.0.1,token 校验,防局域网滥用。

七、技术栈与取舍

选择 原因
客户端 Flutter(Windows 先,移动后) 一套代码多端
本地服务 Dart(同语言) 减少栈
存储 SQLite + 文件 本地优先标配
抓取 无头浏览器 / HTTP 解析 按站点适配
同步 Markdown 文件 Obsidian 原生格式

八、踩坑记录

  1. 快照样式丢失:抓的 HTML 缺 CSS → 渲染"裸奔" → 内联关键样式 + 阅读模式兜底
  2. 图片外链失效:快照只存了正文没存图 → 图片本地化(下载到本地目录)
  3. 收件箱 API 与浏览器安全:网页 JS 不能直接调本地 API → 用扩展(有权限)+ CORS 限制
  4. Obsidian 同步冲突:双端同时写同一文件 → 文件按时间戳命名 + 冲突保留

九、路线图

V V V V 1 2 3 4 A I T W a i r n o d o w s + / F l + u t t e r + + O b s i d i a n

总结

Fluxio 的核心认知:

  1. 收藏存全文不存链接:内容会失效,快照才是"收藏"
  2. 本地优先:数据在自己手里,同步是增值不是依赖
  3. 收件箱模式:任何 App 分享进来 = 统一入口
  4. Obsidian 同步用 Markdown:原生格式,双向不折腾

信息流工具的本质:把"信息经过"变成"信息资产"。快照 + 本地 + 可同步,让每次阅读都有沉淀。