Skip to content

calternal-notes-core

Pure Markdown note and daily note logic for calternal

Pure Markdown note and Daily note logic.

This crate does not read files, the network, or the clock. Hosts pass time values in and apply returned byte edits through calternal-fs.

Source: crates/calternal-notes-core/src/lib.rs

Module Summary
attachments Map each attachment purpose and file type to its default Home folder.
canvas Lossless Canvas files and bounded scene validation (DESIGN §60, #976).
canvas_export Bounded, lossless editable export metadata (DESIGN §60, #976).
composer One-line composer parser.
dayfile Lossless Daily note parser and builder for the Notes Plugin.
frontmatter Lossless YAML-safe Note frontmatter access.
identity Stable Note identity and cross-platform filename shaping.
links Markdown reference scanning and byte-scoped link edits.
markdown Block-level markdown (de)serialization for the editor boundary (DESIGN §2, §4.1).
model Small value types shared by the composer NLP pipeline.
nlp NLP composer — deterministic, Foundation-only logic ported from the Swift reference (ComposerNLPPipeline.run + JournalNLP.parse + ComposerModeClassifier).
note_resolver Pure Note reference resolution over rows from the rebuildable Notes index.
notes Pure Note creation helpers built on the shared identity and frontmatter rules.
notes_index Pure projections for the rebuildable Notes Index.
reminders Lossless calternal-reminders frontmatter projection.
rename Pure title-retitle planning.
tasks Shared Task models, parsers and writers for Notes (#430, DESIGN §40).
templates Pure Note template rendering and frontmatter merging.
pub fn valid_note_text(text: &str) -> bool

Reject invisible direction controls in user-authored labels before they become frontmatter, headings, or Log entry text.

Source: crates/calternal-notes-core/src/lib.rs:88

pub fn valid_note_title(title: &str) -> bool

No doc comment.

Source: crates/calternal-notes-core/src/lib.rs:94

pub fn valid_tag_name(tag: &str) -> bool

Return whether a Tag name follows the shared Notes and Files grammar. Measure its length after NFC normalization so the server and calternald accept the same canonically equivalent Finder labels (#473).

Source: crates/calternal-notes-core/src/lib.rs:101