adrs_core/
lib.rs

1//! # adrs-core
2//!
3//! Core library for managing Architecture Decision Records (ADRs).
4//!
5//! This library provides the foundational types and operations for working with ADRs,
6//! including parsing, creating, linking, and querying decision records.
7//!
8//! ## Modes
9//!
10//! The library supports two modes:
11//!
12//! - **Compatible mode** (default): Writes markdown-only format compatible with adr-tools,
13//!   but can read both legacy and next-gen formats.
14//! - **Next-gen mode**: Uses YAML frontmatter for structured metadata, enabling richer
15//!   features like typed links and better validation.
16
17mod config;
18pub mod doctor;
19mod error;
20mod parse;
21mod repository;
22mod template;
23mod types;
24
25pub use config::{Config, ConfigMode, ConfigSource, DiscoveredConfig, discover};
26pub use doctor::{Check, Diagnostic, DoctorReport, Severity, check as doctor_check};
27pub use error::{Error, Result};
28pub use parse::Parser;
29pub use repository::Repository;
30pub use template::{Template, TemplateEngine, TemplateFormat, TemplateVariant};
31pub use types::{Adr, AdrLink, AdrStatus, LinkKind};