data_gov/lib.rs
1//! High-level bindings for the U.S. [data.gov](https://data.gov) CKAN portal.
2//!
3//! The `data-gov` crate bundles an ergonomic async client, CLI-friendly utilities,
4//! and configuration helpers on top of the lower-level [`data_gov_ckan`] crate. It
5//! is designed for read-only exploration workflows such as search, dataset
6//! inspection, and downloading published resources. The main entry point is
7//! [`DataGovClient`], which requires a Tokio runtime.
8
9/// Base URL for the public data.gov CKAN API (`/api/3`).
10///
11/// This constant is provided for convenience when you need to construct direct
12/// HTTP calls or configure the lower-level [`data_gov_ckan::Configuration`].
13pub const DATA_GOV_BASE_URL: &str = "https://catalog.data.gov/api/3";
14
15// Re-export the CKAN crate for direct access
16pub use data_gov_ckan as ckan;
17
18// Public modules
19pub mod client;
20pub mod config;
21pub mod error;
22pub mod ui;
23
24// Re-export main types for convenience
25pub use client::DataGovClient;
26pub use config::{DataGovConfig, OperatingMode};
27pub use error::{DataGovError, Result};
28pub use ui::{
29 DownloadBatch, DownloadFailed, DownloadFinished, DownloadProgress, DownloadStarted,
30 StatusReporter,
31};