cardinal_core/lib.rs
1//! Core domain and command grammar for Cardinal.
2//!
3//! Cardinal follows a command-first model:
4//!
5//! ```text
6//! Workspace displays.
7//! Prompt acts.
8//! ```
9//!
10//! This crate intentionally avoids terminal, filesystem, and network effects.
11//! It should remain easy to unit-test.
12
13pub mod calendar;
14pub mod command;
15pub mod mail;
16pub mod reducer;
17pub mod workspace;
18
19pub use command::{
20 parse_command, AgendaRange, CalendarView, CardinalCommand, EventCommand, InviteCommand,
21 ListTarget, MarkState, ParseError, Selector, SyncTarget,
22};
23pub use reducer::{dispatch_command, CommandOutcome, DomainEffectRequest};