3e738ec52bc6f5ec56d3557934c3671a93ede86f
metadata层实现: - db.rs (129行): 数据库管理 ✅ create: 创建用户数据库并初始化表结构 ✅ status: 查询数据库状态(节点/文件数量、树类型、文件大小) ✅ backup: 数据库备份(SQLite文件复制) ✅ restore: 数据库恢复(备份文件恢复) - user.rs (148行): 用户管理 ✅ create: 创建用户(bcrypt密码哈希) ✅ list: 列出所有用户(用户名、角色、创建时间) ✅ show: 显示用户详情 ✅ delete: 删除用户 - auth.rs (102行): 认证授权 ✅ login: 用户登录(密码验证、简单token生成) ✅ logout: 用户登出 ✅ verify: Token验证(24小时有效期) storage层实现: - archive.rs (73行): 压缩解压缩 ✅ decompress: 解压缩文件(使用archive模块) ✅ list: 列出压缩文件内容 - sync.rs (59行): 文件同步 ✅ start: 启动文件同步(mirror模式) ✅ status: 同步状态检查 - mount.rs (94行): 存储挂载 ✅ attach: 挂载存储(NFS/SMB支持) ✅ detach: 卸载存储 ✅ list: 列出挂载的文件系统 CLI命令範例: markbase metadata db create --user testuser markbase metadata db status --user accusys markbase metadata user create --name warren --password warren123 markbase metadata user list markbase metadata auth login --user warren --password warren123 markbase storage archive decompress --file backup.tar.gz --output /path markbase storage archive list --file backup.tar.gz markbase storage sync start --source /path1 --target /path2 --mode mirror markbase storage mount attach --type nfs --server 192.168.1.100 --path /share markbase storage mount list 架构完整性: ✅ CLI三层架构完整性:21个模块(interface + metadata + storage + tools) ✅ 所有TODO标记功能已实现 ✅ 编译成功(151警告,0错误) ✅ 代码量:新增605行功能代码 变更统计: - 修改文件:6个模块(metadata/auth.rs、db.rs、user.rs + storage/archive.rs、sync.rs、mount.rs) - 新增代码:418行(36行删除) - 总计:9 files changed, 418 insertions(+), 36 deletions(-)
fuse-backend-rs-fork
@ e92233933e
MarkBase
Momentry Display Engine - Markdown渲染與檔案樹管理系統
功能特色
- Markdown渲染(支援表格、footnote、tasklist) -檔案樹管理(SQLite持久化)
- REST API(18+路由)
- macOS音訊控制(音訊裝置切換、音量控制) -多種顯示模式(tree, list, grid_sm, grid_lg)
##安裝
###必要條件
- Rust 1.92+
- macOS(音訊功能需 macOS)
- SwitchAudioSource(音訊裝置切換)
#安裝 Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
#安裝 SwitchAudioSource(macOS)
brew install switchaudio-source
###建構
cargo build
##使用
###啟動伺服器
cargo run -- display #預設 port 11438
cargo run -- display -p8080 #自訂 port
cargo run -- display README.md #顯示指定檔案
###渲染 Markdown
cargo run -- render README.md #輸出到 stdout
cargo run -- render README.md -o output.html
##測試
cargo test #執行所有測試
cargo test test_insert #執行特定測試
File Tree功能
REST API
| 路由 | 方法 | 功能 |
|---|---|---|
/api/v2/tree/:user_id |
GET | 取得檔案樹 |
/api/v2/tree/:user_id/node |
POST | 建立節點 |
/api/v2/tree/:user_id/node/:node_id |
PUT/DELETE | 更新/刪除節點 |
/api/v2/tree/:user_id/node/:node_id/move |
PUT | 移動節點 |
/api/v2/tree/:user_id/node/:node_id/alias |
PATCH | 更新別名 |
###顯示模式
tree- 樹狀顯示list- 列表顯示grid_sm- 小格狀顯示grid_lg- 大格狀顯示
###範例
curl http://localhost:11438/api/v2/tree/demo?mode=tree
curl http://localhost:11438/api/v2/tree/demo?mode=list
Demo資料
data/users/demo.sqlite- 50節點範例資料data/cache/-範例檔案
##開發
見 AGENTS.md詳細開發指南。
CI/CD
使用 Gitea Actions:https://gitea.momentry.ddns.net
License
MIT
Description
Languages
C
43.6%
Rust
20.1%
D
15.6%
Assembly
8.9%
Swift
3.3%
Other
8.3%