trendkit_core/lib.rs
1//! Core types, SQLite snapshot store, source traits, and velocity scoring
2//! for trendkit.
3//!
4//! The crate is deliberately small: sources implement [`source::TrendSource`],
5//! observations land in [`store::Store`], and [`score`] turns snapshot pairs
6//! into per-day velocities. Time is always injected as a
7//! [`clock_kit::Clock`] so collectors and scoring are deterministic under
8//! test.
9
10pub mod ai;
11pub mod clock;
12pub mod cratesio;
13pub mod error;
14pub mod github;
15pub mod hf;
16pub mod hn;
17pub mod model;
18pub mod score;
19pub mod source;
20pub mod store;
21pub mod telegram;
22pub mod trending;
23
24pub use error::{Result, TrendError};
25pub use model::{Observation, RepoListed, SourceKind, SubjectRecord, VelocityRow};
26pub use source::{CollectCtx, CollectReport, TrendSource};
27pub use store::Store;