wangdl bae6ef5726 feat: M3 completion — event buffer, FFI search/anchor, PDF strategy, quality fixes
Rust Core:
- events: global Mutex-buffered event queue (push/export/clear/update_position)
- image_meta: use ImageReader::format() for real decoded format instead of extension
- search: change match_start/match_end usize→u64 for FFI compatibility
- epub/pdf: module-level placeholder comments

FFI (UDL exposed, 12 total functions):
- Added: search_markdown_blocks, search_text_content, create_note_anchor
- Added: push_reading_event, update_reading_position, export_pending_events,
  clear_exported_events

Docs:
- README: synced DocumentBlock model (Table.headers + HorizontalRule),
  simplified dependency recommendations, removed nonexistent doc references
- docs/pdf-strategy.md: PDFKit vs PDFium vs MuPDF evaluation, 5 decisions,
  platform strategy matrix, roadmap

Build:
- .cargo/config.toml: cargo xtask alias
- xtask: CLI implementation (test/build-ios/fixtures commands)
- fixtures: markdown/sample.md (9 block types), text/sample.txt
- XCFramework rebuilt, Swift bindings regenerated (1977 lines)

58 tests pass, zero warnings.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 21:23:26 +08:00

565 B

zhixi-document-runtime

A cross-platform document reading kernel.

核心原则

  1. 原文件预览和 AI 解析彻底分离。
  2. Rust Core 不负责网络请求。
  3. Rust Core 不直接访问后端 API。

支持的格式

格式 预览方式 状态
Markdown 内置阅读 已支持
TXT 内置阅读 已支持
图片 内置查看 已支持

第一版目标不是"支持所有文件预览",而是先建立跨平台文档内核。

fn main() {
    println!("Hello, zhixi!");
}

EOF