Expand description
Core types, SQLite snapshot store, source traits, and velocity scoring for trendkit.
The crate is deliberately small: sources implement source::TrendSource,
observations land in store::Store, and score turns snapshot pairs
into per-day velocities. Time is always injected as a
clock_kit::Clock so collectors and scoring are deterministic under
test.
Re-exports§
pub use error::Result;pub use error::TrendError;pub use model::Observation;pub use model::RepoListed;pub use model::SourceKind;pub use model::SubjectRecord;pub use model::VelocityRow;pub use source::CollectCtx;pub use source::CollectReport;pub use source::TrendSource;pub use store::Store;
Modules§
- clock
- Time helpers on top of
clock-kit. - cratesio
- crates.io source: most-downloaded crates, snapshotted over time.
- error
- Error type for trendkit-core.
- github
- GitHub source: Search-API trending collection and user repo listing.
- hn
- Hacker News source via the Algolia HN Search API (no auth).
- model
- Shared data model for snapshot collection and reporting.
- score
- Velocity and personal-relevance scoring.
- source
- Source trait and collection context.
- store
- SQLite snapshot store.
- telegram
- Telegram digest delivery via the Bot API.
- trending
- GitHub trending-page source: the one source with no API.