archelon_core/lib.rs
1//! > **This crate has been renamed to [`sapphire-journal-core`](https://crates.io/crates/sapphire-journal-core).**
2//! > Please use `sapphire-journal-core` going forward.
3//!
4//! Core library for **archelon** — a Markdown-based task and note manager that
5//! keeps your data alive as plain text.
6//!
7//! This crate provides the data models, parsing utilities, and high-level
8//! operations that are shared across the CLI and MCP frontends.
9//!
10//! # Modules
11//!
12//! - [`entry`] — Core data structures: [`entry::Entry`], [`entry::Frontmatter`],
13//! [`entry::TaskMeta`], and [`entry::EventMeta`].
14//! - [`entry_ref`] — [`entry_ref::EntryRef`]: a canonical input type that
15//! accepts either a filesystem path, an exact CarettaId, or a title.
16//! - [`error`] — Library-wide [`error::Error`] and [`error::Result`] types.
17//! - [`journal`] — Journal directory discovery, entry collection, and
18//! configuration loading.
19//! - [`labels`] — Status label classification for entry types and freshness.
20//! - [`ops`] — High-level entry operations (list, create, update, delete)
21//! shared across frontends.
22//! - [`parser`] — Markdown + YAML frontmatter parsing and serialization.
23//! - [`period`] — Time period types used to filter entries by timestamp ranges.
24
25pub mod cache;
26pub mod chunker;
27pub mod embed;
28pub mod labels;
29#[cfg(feature = "lancedb-store")]
30pub mod lancedb_store;
31pub mod vector_store;
32pub mod entry;
33pub mod entry_ref;
34pub mod error;
35pub mod journal;
36pub mod journal_state;
37pub mod ops;
38pub mod parser;
39pub mod period;
40pub mod user_config;
41
42pub use journal_state::JournalState;