10 questions about how Europeans live, each answered for every country from figures published by Eurostat, the OECD and the ECB. Pick your country and see all 10 at once, on a map, with every country
翻譯準備中
資料Astro · JavaScriptGitHub @simeonvanegeraat-code上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證10 questions about how Europeans live, each answered for every country from figures published by Eurostat, the OECD and the ECB. Pick your country and see all 10 at once, on a map, with every country listed.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗humanaverage.com answers one question per page: where does a country sit, and where do you sit inside it? Each page takes a single published statistic — the age at which half of young people have left home, household wealth — and turns it into a map of Europe, a sortable table of every country, and a comparison with whatever the reader enters about themselves.
Every figure comes from Eurostat, the OECD or the ECB. Nothing on the site is estimated on top of what those sources publish, and no number is typed into a page by hand: the text is calculated from the data at build time, so it cannot go stale when a source updates.
Astro with static output, no client-side framework, and exactly one dependency. The data pipeline is plain Node.
npm install
npm run dev # http://localhost:4321
npm run build # static build into dist/, then the sitemap
npm run preview # serve the build locally
Each data source has three steps — fetch into data/raw/ (git-ignored), build a compact
JSON file that is committed, validate it:
npm run leaving # Eurostat: leaving the parental home
npm run wealth # ECB: household wealth
npm run geo:build # Natural Earth: the map geometry
Every dataset has a scripts/validate-*.mjs that must pass before anything is published.
It does not trust the built file: it recomputes each published figure from the raw API
response, checks that aggregates like EU27 were not counted as countries, that each
country carries its own reference year, and — for Eurostat — that no comparison spans a
break in the series.
That last one matters more than it sounds. Eurostat reorganised the Labour Force Survey in 2021 and flags the break; the break year itself is transitional. Measured from 2005 the spread between countries appears to grow, and measured across comparable years it shrinks. The code refuses to calculate the first version rather than footnoting it.
Where each dataset comes from, what it covers and what its licence allows is recorded per
source in data/sources.md.
| Path | |
|---|---|
src/pages/ | The English site |
src/components/, src/lib/ | Map, table, hero and the calculations behind them |
scripts/ | Fetch, build and validate, one set per source |
data/ | Committed JSON; data/raw/ is ignored |
public/nl/, public/tools/, public/articles/ | A frozen Dutch set of browser-based reaction, typing and memory tests. Still served, no longer developed |
research/ | How the metrics were chosen and how the design was arrived at |
Push to main; Vercel builds and deploys. Before that: the data gate passes, npm run build succeeds, and the page has been looked at in a browser.
No advertising code is on the site. When it is added, the consent banner and the privacy policy go first.