Skip to main content

us_excel_template_data/
lib.rs

1//! This crate embeds the open dataset **US Search Demand for Excel & Google Sheets
2//! Templates — 1,008 Keywords (2026)** and exposes a small, zero-dependency Rust API to
3//! query it. The source CSV is embedded in the binary via `include_str!` and parsed
4//! lazily by a tiny internal parser — no allocation beyond the returned rows, no
5//! external crates.
6//!
7//! # What the data contains
8//!
9//! 1,008 template-related search queries (US, English) with their estimated monthly US
10//! search volume for 2026, grouped into 16 practical categories — project management,
11//! bookkeeping & accounting, CRM & sales KPIs, HR & payroll scheduling, invoicing,
12//! construction, real estate, weddings & events, and more. 146 keywords also carry the
13//! URL of a free, no-signup spreadsheet implementation, so a keyword can be traced to
14//! the actual artifact behind the demand.
15//!
16//! # Provenance
17//!
18//! The dataset was compiled in 2026 by the Data & Research Team of
19//! [TableTemplates](https://tabletemplates.com/), while building an open catalog of
20//! downloadable spreadsheet templates. Volumes are estimates derived from commercial
21//! keyword research tooling, deduplicated and manually categorized. The dataset is
22//! archived under DOI on [Zenodo](https://doi.org/10.5281/zenodo.21416251) and
23//! [Harvard Dataverse](https://doi.org/10.7910/DVN/A2QIVN), and distributed under
24//! CC BY 4.0.
25//!
26//! # Going further
27//!
28//! The free implementations referenced by the dataset live in the
29//! [free template library](https://tabletemplates.com/free/) — every file there is a
30//! direct, no-signup download. Two category indexes are useful entry points into the
31//! highest-demand segments: the
32//! [project management templates](https://tabletemplates.com/project-management/)
33//! (largest category, 130 keywords) and the
34//! [bookkeeping & accounting templates](https://tabletemplates.com/bookkeeping-accounting/)
35//! (highest demand density — 45 keywords, ~24,200 combined monthly searches).
36//!
37//! # Example
38//!
39//! ```rust
40//! use us_excel_template_data::catalog;
41//!
42//! // The whole catalog.
43//! let rows = catalog::all();
44//! assert_eq!(rows.len(), 1008);
45//!
46//! // The single highest-demand keyword.
47//! let top = catalog::top(1);
48//! assert_eq!(top[0].keyword, "excel accounting software");
49//! assert_eq!(top[0].monthly_search_volume_us, 8250);
50//!
51//! // Substring search, ordered by volume.
52//! let hits = catalog::search("invoice");
53//! assert!(hits.iter().all(|r| r.keyword.contains("invoice")));
54//!
55//! // Demand aggregated by category.
56//! let cats = catalog::categories();
57//! assert_eq!(cats.len(), 16);
58//! ```
59
60pub mod catalog;