diesel_timescaledb/lib.rs
1//! # diesel-timescaledb
2//!
3//! A Diesel extension for TimescaleDB functionality.
4//!
5//! This crate provides Diesel-compatible types, functions, and utilities
6//! for working with TimescaleDB's time-series database features.
7//!
8//! ## Quick Start
9//!
10//! ```rust
11//! use diesel::prelude::*;
12//! use diesel_timescaledb::prelude::*;
13//!
14//! table! {
15//! metrics (id) {
16//! id -> Int4,
17//! timestamp -> Timestamptz,
18//! value -> Float8,
19//! }
20//! }
21//!
22//! // Make it a hypertable
23//! hypertable!(metrics, timestamp);
24//!
25//! // Use TimescaleDB functions
26//! // let results = metrics::table
27//! // .time_bucket(metrics::timestamp, "1 hour")
28//! // .load(&mut conn)?;
29//! ```
30
31pub mod connection;
32pub mod dsl;
33pub mod functions;
34pub mod prelude;
35pub mod schema;
36pub mod types;
37
38// Re-export commonly used items
39pub use connection::TimescaleDbConnection;
40pub use types::*;