Warren 72503f7db9 Add optimization roadmap (lessons from Proxmox/Unraid/OpenNAS)
Document Purpose:
- Identify optimization opportunities from comparison analysis
- Prioritize by impact and implementation difficulty
- Create implementation roadmap

Optimization Categories:

P0: Immediate Implementation (High Impact + Low Difficulty)
1. NFS Support  (500 lines, 2-3 days)
   - Learn from: OpenNAS, Unraid
   - Impact: Complete Linux client support

2. Web UI User/Group Management  (300 lines, 1-2 days)
   - Learn from: OpenNAS, Unraid
   - Impact: Major usability improvement

3. Web UI Share Management  (400 lines, 1-2 days)
   - Learn from: Unraid, OpenNAS
   - Impact: Complete Web UI

P1: Short-term Implementation (High Impact + Medium Difficulty)
4. Dashboard Complete  (500 lines, 2-3 days)
   - Learn from: Proxmox VE Dashboard
   - Impact: Professional experience

5. SMART Disk Monitoring  (400 lines, 2-3 days)
   - Learn from: Unraid, OpenNAS
   - Impact: Disk health warning

6. Plugin System  (800 lines, 5-7 days)
   - Learn from: Unraid Community Applications
   - Impact: Plugin ecosystem

P2: Medium-term Implementation
7. ZFS Native Integration  (600 lines, 3-5 days)
   - Learn from: OpenNAS ZFS
   - Impact: ZFS native performance

8. JBOD-like Storage  (800 lines, 5-7 days)
   - Learn from: Unraid JBOD + Parity
   - Impact: Mixed-capacity disk pools

P3: Long-term Implementation
9. Distributed Storage (Ceph-like)  (2000 lines, 10-15 days)
   - Learn from: Proxmox VE Ceph
   - Impact: Distributed redundancy

10. Docker Volume Driver  (500 lines, 3-5 days)
    - Learn from: Unraid Docker integration
    - Impact: Docker ecosystem

Not Recommended:
- VM Management (positioning mismatch)
- Docker Container Management (positioning mismatch)
- HA Cluster (positioning mismatch)
- GPU Passthrough (positioning mismatch)

Implementation Roadmap:
- Phase 11: 1700 lines, 7-10 days (4 features)
- Phase 12: 1200 lines, 7-10 days (2 features)
- Phase 13: 1400 lines, 8-12 days (2 features)
- Phase 14: 2500 lines, 13-20 days (2 features)
- Total: 6800 lines, 35-52 days, 10 features

Coverage After Optimization:
- Storage Management: 60% → 80% (+20%)
- File Services: 250% → 300% (+50% with NFS)
- Web UI: 50% → 85% (+35%)
- System Management: 20% → 70% (+50%)

Recommended Implementation Order:
1. User/Group UI (smallest effort, biggest impact)
2. Share UI (smallest effort, biggest impact)
3. NFS Support (medium effort, biggest impact)
4. Dashboard (medium effort, biggest impact)
5. SMART monitoring (medium effort, medium impact)
6. Plugin system (largest effort, biggest impact)
2026-06-24 04:50:19 +08:00
2026-06-12 12:59:54 +08:00
2026-06-22 00:06:35 +08:00
2026-05-16 15:37:37 +08:00
2026-05-16 15:37:37 +08:00
2026-05-16 15:37:37 +08:00
2026-05-16 15:37:37 +08:00
2026-05-16 15:37:37 +08:00
2026-05-16 15:37:37 +08:00

MarkBase

Momentry Display Engine - Markdown渲染與檔案樹管理系統

功能特色

  • Markdown渲染支援表格、footnote、tasklist -檔案樹管理SQLite持久化
  • REST API18+路由)
  • 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

#安裝 SwitchAudioSourcemacOS
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 Actionshttps://gitea.momentry.ddns.net

License

MIT

Description
No description provided
Readme 536 MiB
Languages
C 36.9%
Rust 30.3%
D 13.2%
Assembly 7.6%
Swift 2.8%
Other 9%