crates/apple-note/README.md
A Rust library for parsing Apple Notes protobuf data, extracting text content, and handling embedded objects like tables.
This crate is a Rust port of apple_cloud_notes_parser by Three Planets Software. The original Ruby implementation provides comprehensive parsing of Apple Notes data from iOS and macOS backups.
The test suite in this crate follows the structure and test cases from the original Ruby implementation's spec directory to ensure compatibility and correctness.
use apple_note::{parse_note_store_proto, note_to_markdown, extract_plaintext};
// Parse a note from gzipped protobuf data
let data = std::fs::read("note_data.bin")?;
let proto = parse_note_store_proto(&data)?;
// Extract plaintext
let text = extract_plaintext(&proto.document.note);
// Convert to markdown
let markdown = note_to_markdown(&proto.document.note);
The test data files in tests/data/ are derived from the test fixtures in the original apple_cloud_notes_parser repository.
See the repository root for license information.