stats: history and culture collector (step 4): events, offices, people, holidays, UNESCO, religion, long-run series
Some checks failed
Deploy production / deploy (push) Failing after 1m0s

This commit is contained in:
2026-10-25 23:25:46 +00:00
parent fa3aa25f0b
commit 0088e5202e
8 changed files with 39743 additions and 2 deletions

View File

@@ -47,7 +47,11 @@ const hostGapMs: Record<string, number> = {
'webgate.ec.europa.eu': 2000,
'files.worldhappiness.report': 1000,
'trends.google.com': 3000,
'api.gdeltproject.org': 5500
'api.gdeltproject.org': 5500,
'query.wikidata.org': 1500,
'date.nager.at': 300,
'data.unesco.org': 1000,
'nl.wikipedia.org': 1000
};
const lastHit = new Map<string, number>();
@@ -326,6 +330,47 @@ export const SOURCES = [
licence: 'Open, unrestricted use with citation',
key_required: false,
attribution: 'Source: The GDELT Project'
},
{
source_id: 'wikidata',
name: 'Wikidata Query Service',
base_url: 'https://query.wikidata.org/sparql',
licence: 'CC0 1.0',
key_required: false,
attribution: 'Source: Wikidata (CC0)'
},
{
source_id: 'nager',
name: 'Nager.Date public holiday API',
base_url: 'https://date.nager.at/api/v3',
licence: 'MIT',
key_required: false,
attribution: 'Source: Nager.Date'
},
{
source_id: 'unesco',
name: 'UNESCO World Heritage List (open data)',
base_url: 'https://data.unesco.org/explore/dataset/whc001/',
licence: 'CC BY-SA 3.0 IGO',
key_required: false,
attribution: 'Source: UNESCO World Heritage Centre, CC BY-SA 3.0 IGO'
},
{
source_id: 'pew',
name: 'Pew Research Center: religious composition by country 2010–2020',
base_url:
'https://www.pewresearch.org/religion/feature/religious-composition-by-country-2010-2020/',
licence: 'Free use with attribution',
key_required: false,
attribution: 'Source: Pew Research Center (2025), via Our World in Data'
},
{
source_id: 'history',
name: 'Curated history and culture notes',
base_url: 'https://stanrunge.dev/stats/history',
licence: 'CC BY-SA 4.0 (texts summarised from the linked sources, mostly Wikipedia)',
key_required: false,
attribution: 'Curated; every entry links to its source'
}
] as const;