//! {{TOOL_NAME}} Core Library
//!
//! A production-ready library for [description of what this tool does].
//!
//! # Features
//!
//! - [Feature 1]
//! - [Feature 2]
//! - [Feature 3]
//!
//! # Quick Start
//!
//! ```rust,no_run
//! use {{TOOL_NAME}}_core::{{MainType}};
//!
//! #[tokio::main]
//! async fn main() -> Result<(), Box<dyn std::error::Error>> {
//!     // Example usage
//!     Ok(())
//! }
//! ```
//!
//! # Architecture
//!
//! This crate is organized into modules:
//!
//! - [`types`] - Core domain types
//! - [`error`] - Error handling
//! - [`handlers`] - Business logic handlers
//!

#![forbid(unsafe_code)]
#![warn(missing_docs, missing_debug_implementations)]

pub mod error;
pub mod types;
pub mod handlers;

pub use error::{{{ToolName}}Error, {{ToolName}}ErrorKind, Result};
pub use types::*;
pub use handlers::*;

/// Version of {{TOOL_NAME}}
pub const VERSION: &str = env!("CARGO_PKG_VERSION");

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn test_version() {
        assert!(!VERSION.is_empty());
    }
}
