SPB Git forge

spb/countryatlas

Public
20commits 1branches 0releases
268.3 MBsize
maindefault branch
12 days agolast push
TypeScript 57% Python 38.6% JavaScript 3.6% CSS 0.6%
15.7 KB · 391 lines typescript
Raw Blame History
1/**2 * English UI dictionary. Every visible string in a component goes through `t()` (src/i18n/index.ts).3 * Placeholders use `{name}`. Keys are flat, dot-namespaced; add new sections at the end of the block4 * they belong to so diffs stay readable.5 */6import { enCompare } from './en.compare';7import { enCore } from './en.core';8import { enExplore } from './en.explore';9import { enFlagship } from './en.flagship';10import { enPlatform } from './en.platform';1112export const en = {13  // --- site14  'site.name': 'CountryAtlas',15  'site.tagline': 'Explore the world through data.',16  'site.description':17    'The interactive data atlas of the world: 218 countries and territories, 260+ indicators, 2 million observations across economy, population, health, energy, climate and more — every number traceable to its source.',18  'site.skip': 'Skip to content',19  'site.licence':20    'Data: World Bank, IMF, OECD, Eurostat, WHO, Our World in Data, BIS, ILO — CC BY 4.0 where applicable. Each value links to its source.',21  'site.footer.made': 'CountryAtlas is an independent, non-commercial data project.',22  'site.footer.sources': 'Sources',23  'site.footer.methodology': 'Methodology',24  'site.footer.api': 'API',25  'site.footer.data': 'Data downloads',26  'site.footer.about': 'About',27  'site.footer.explore': 'Explore',28  'site.footer.reference': 'Reference',29  'site.footer.refreshed': 'Data refreshed {date}',30  'site.footer.build': 'Snapshot {run}',31  'site.footer.madeBy': 'Made by',32  'site.footer.author': 'Simon-Pierre Boucher',33  'site.footer.contact': 'contact@spboucher.ai',34  'site.footer.hostedOn': 'Hosted on',35  'site.footer.host': 'MacLustr',36  'site.footer.credits': 'Credits',37  'site.footer.changes': 'Recent changes',38  'site.footer.explorePage': 'Explore',39  'brand.logoAlt': 'CountryAtlas logo',40  'brand.home': 'CountryAtlas — home',4142  // --- navigation43  'nav.home': 'Home',44  'nav.countries': 'Countries',45  'nav.compare': 'Compare',46  'nav.rankings': 'Rankings',47  'nav.indicators': 'Indicators',48  'nav.regions': 'Regions',49  'nav.data': 'Data',50  'nav.search': 'Search',51  'nav.menu': 'Menu',52  'nav.primary': 'Primary',53  'nav.close': 'Close',5455  // --- theme56  'theme.toggle': 'Toggle colour theme',57  'theme.light': 'Light',58  'theme.dark': 'Dark',59  'theme.system': 'System',6061  // --- search62  'search.placeholder': 'Search countries, indicators, topics…',63  'search.placeholder.short': 'Search…',64  'search.hint': 'Type to search. ↑↓ to navigate, ↵ to open, esc to close.',65  'search.recent': 'Recent',66  'search.clear': 'Clear',67  'search.empty': 'No results for “{q}”.',68  'search.error': 'Search is unavailable right now.',69  'search.loading': 'Searching…',70  'search.shortcut': '⌘K',71  'search.open': 'Open search',72  'search.type.country': 'Country',73  'search.type.indicator': 'Indicator',74  'search.type.topic': 'Topic',75  'search.type.region': 'Region',76  'search.type.source': 'Source',77  'search.results': '{n} results',78  'search.start': 'Start typing to search 218 countries and 260 indicators.',7980  // --- common81  'common.noData': 'No data',82  'common.other': 'Other',83  'common.noDataLong': 'No data available',84  'common.loading': 'Loading…',85  'common.seeAll': 'See all',86  'common.seeFullRanking': 'See full ranking',87  'common.more': 'More',88  'common.less': 'Less',89  'common.compare': 'Compare',90  'common.ranking': 'Ranking',91  'common.download': 'Download',92  'common.downloadCsv': 'Download CSV',93  'common.share': 'Share',94  'common.copied': 'Link copied',95  'common.copyLink': 'Copy link',96  'common.close': 'Close',97  'common.of': 'of',98  'common.and': 'and',99  'common.vs': 'vs {period}',100  'common.source': 'Source',101  'common.retrieved': 'retrieved {date}',102  'common.forecast': 'forecast',103  'common.estimate': 'estimate',104  'common.viewTable': 'View data as table',105  'common.hideTable': 'Hide data table',106  'common.showMore': 'Show {n} more',107  'common.back': 'Back',108  'common.year': 'Year',109  'common.value': 'Value',110  'common.country': 'Country',111  'common.indicator': 'Indicator',112  'common.period': 'Period',113  'common.change': 'Change',114  'common.rank': 'Rank',115  'common.world': 'World',116  'common.region': 'Region',117  'common.income': 'Income group',118  'common.all': 'All',119  'common.filters': 'Filters',120  'common.reset': 'Reset',121  'common.apply': 'Apply',122  'common.sortBy': 'Sort by',123  'common.name': 'Name',124  'common.population': 'Population',125  'common.gdpPerCapita': 'GDP per capita',126  'common.gdp': 'GDP',127  'common.coverage': 'Coverage',128  'common.na': '—',129  'common.up': 'up',130  'common.down': 'down',131  'common.flat': 'unchanged',132  'common.log': 'Log scale',133  'common.linear': 'Linear',134  'common.legend': 'Legend',135  'common.why': 'Why?',136  'common.openProvenance': 'Show source and provenance',137  'common.new': 'New',138  'common.updated': 'Updated',139  'common.notBuilt': 'Data is being prepared',140  'common.notBuiltHint': 'The first data snapshot is still being built. This page will fill in automatically once it is ready.',141  'common.errorTitle': 'Something went wrong',142  'common.errorHint': 'The data service did not respond. Try again in a moment.',143  'common.retry': 'Try again',144  'common.notFound': 'Page not found',145  'common.notFoundHint': 'We could not find that page. Try the search, or start from the list of countries.',146  'common.goHome': 'Go to the home page',147  'common.browseCountries': 'Browse all countries',148  'common.freshness.fresh': 'Fresh',149  'common.freshness.recent': 'Recent',150  'common.freshness.stale': 'Stale',151  'common.freshness.updated': 'Updated {when}',152  'common.status.verified': 'Verified',153  'common.status.imported': 'Imported',154  'common.status.warning': 'Flagged',155  'common.status.stale': 'Stale',156  'common.status.quarantined': 'Quarantined',157  'common.byline': 'CountryAtlas',158  'common.ago.now': 'just now',159  'common.ago.minutes': '{n} min ago',160  'common.ago.hours': '{n} h ago',161  'common.ago.days': '{n} d ago',162  'common.ago.months': '{n} mo ago',163  'common.ago.years': '{n} y ago',164165  // --- provenance166  'prov.title': 'Provenance',167  'prov.source': 'Source',168  'prov.dataset': 'Dataset',169  'prov.series': 'Series code',170  'prov.observation': 'Observation date',171  'prov.retrieved': 'Retrieved',172  'prov.sourceUpdated': 'Source updated',173  'prov.unit': 'Unit',174  'prov.transform': 'Transformation',175  'prov.methodology': 'Methodology',176  'prov.licence': 'Licence',177  'prov.status': 'Status',178  'prov.openSource': 'Open at source',179  'prov.none': 'No transformation',180  'prov.indicatorPage': 'Indicator page',181  'prov.value': 'Value',182183  // --- metric184  'metric.rankWorld': '{rank} of {n}',185  'metric.rankRegion': '{rank} in {region}',186  'metric.rankYearNote': 'Ranked among {year} values',187  'metric.change': '{change} vs {period}',188  'metric.history': 'History',189  'metric.open': 'Open {name}',190191  // --- chart192  'chart.summary.rose': '{subject} rose from {from} in {y0} to {to} in {y1}.',193  'chart.summary.fell': '{subject} fell from {from} in {y0} to {to} in {y1}.',194  'chart.summary.flat': '{subject} was {from} in {y0} and {to} in {y1}.',195  'chart.summary.multi': '{n} series from {y0} to {y1}: {names}.',196  'chart.summary.bars': 'Ranked bars: {top} leads with {value}; {n} entries.',197  'chart.summary.map': 'World map of {name} ({year}) for {n} countries, from {min} to {max}.',198  'chart.summary.dna': 'Country DNA fingerprint of {name}: {dims}.',199  'chart.summary.pyramid': 'Population by age group for {name}: {parts}.',200  'chart.summary.scatter': 'Scatter of {y} against {x} for {n} countries.',201  'chart.summary.slope': 'Change from {y0} to {y1} for {n} entries.',202  'chart.noData': 'No data to chart.',203  'chart.forecastNote': 'Dashed segments are projections.',204  'chart.tooltipForecast': 'Projection',205  'chart.legend.noData': 'No data',206  'chart.map.tapHint': 'Tap a country for its value',207  'chart.map.hoverHint': 'Hover a country for its value; click to open it',208  'chart.map.legend': '{name}, {year}',209  'chart.table.caption': 'Data table for the chart above',210  'chart.download': 'Download this series',211  'chart.axisYear': 'Year',212213  // --- home214  'home.hero.title': 'Explore the world through data.',215  'home.hero.sub':216    '218 countries and territories, 260 indicators, two million observations — every number traceable to its source.',217  'home.snapshot.title': 'Global snapshot',218  'home.snapshot.population': 'World population',219  'home.snapshot.gdp': 'World GDP',220  'home.snapshot.lifeExpectancy': 'Median life expectancy',221  'home.snapshot.countries': 'Countries & territories',222  'home.snapshot.indicators': 'Indicators',223  'home.snapshot.observations': 'Observations',224  'home.snapshot.refreshed': 'Refreshed {date}',225  'home.explore.title': 'Explore countries',226  'home.explore.sub': 'Pick a region, or start from the map.',227  'home.explore.mapTitle': 'GDP per capita, PPP',228  'home.explore.allCountries': 'All countries',229  'home.compare.title': 'Compare countries',230  'home.compare.sub': 'Side by side across every indicator.',231  'home.compare.custom': 'Build your own comparison',232  'home.topics.title': 'Major topics',233  'home.topics.sub': '19 topics, 260 indicators.',234  'home.featured.title': 'Featured indicators',235  'home.featured.sub': 'Global trends and this year’s leaders.',236  'home.changes.title': 'Biggest recent changes',237  'home.changes.sub': 'Detected automatically from the latest data — no editorial picks.',238  'home.changes.all': 'All recent changes',239  'home.rankings.economies': 'Largest economies',240  'home.rankings.growth': 'Fastest population growth',241  'home.rankings.life': 'Highest life expectancy',242  'home.rankings.energy': 'Energy transition leaders',243  'home.updated.title': 'Recently updated data',244  'home.updated.sub': 'Datasets refreshed in the latest snapshot.',245  'home.notBuilt': 'The first data snapshot is being built. Countries, rankings and charts appear here as soon as it is ready.',246247  // --- countries directory248  'countries.title': 'Countries',249  'countries.sub': '{n} countries and territories. Filter by region or income group, sort, or jump by letter.',250  'countries.search': 'Filter by name…',251  'countries.count': '{n} of {total}',252  'countries.noMatch': 'No country matches these filters.',253  'countries.sort.name': 'Name',254  'countries.sort.population': 'Population',255  'countries.sort.gdp': 'GDP per capita',256  'countries.sort.coverage': 'Coverage',257  'countries.letterIndex': 'Jump to letter',258  'countries.territory': 'Territory',259  'countries.filters': 'Filters',260  'countries.filtersActive': '{n} active',261  'countries.populationTrend': 'Population trend',262263  // --- country page264  'country.title': '{name} Data & Statistics',265  'country.description':266    '{name}: population, GDP, growth, inflation, unemployment, life expectancy, energy, climate and 250+ more indicators with sources.',267  'country.capital': 'Capital',268  'country.region': 'Region',269  'country.incomeGroup': 'Income group',270  'country.population': 'Population',271  'country.area': 'Area',272  'country.currency': 'Currency',273  'country.refreshed': 'Data refreshed {date}',274  'country.coverage': '{pct} coverage · {n} indicators',275  'country.compare': 'Compare',276  'country.compareWith': 'Compare {name} with another country',277  'country.download': 'Download',278  'country.downloadHint': 'Full dataset (CSV)',279  'country.share': 'Share',280  'country.headline.title': 'At a glance',281  'country.headline.sub': 'Twelve headline indicators, latest available year.',282  'country.changes.title': 'What changed in {name}',283  'country.changes.sub': 'Statistically notable movements in the latest data.',284  'country.changes.none': 'No notable changes detected in the latest snapshot.',285  'country.similar.title': 'Countries similar to {name}',286  'country.similar.sub': 'Nearest peers by standardised distance on the selected dimension.',287  'country.similar.none': 'Not enough data to compute peers.',288  'country.similar.mode.overall': 'Overall',289  'country.similar.mode.economic': 'Economic',290  'country.similar.mode.demographic': 'Demographic',291  'country.similar.mode.energy': 'Energy',292  'country.similar.mode.social': 'Social',293  'country.similar.score': 'Similarity {score}',294  'country.similar.why': 'Why these are similar',295  'country.similar.contrib': '{indicator}: {a} vs {b}',296  'country.dna.title': 'Country DNA',297  'country.dna.sub': 'Percentile rank among all countries on nine dimensions. Descriptive, not a score.',298  'country.dna.none': 'DNA not available for this country yet.',299  'country.facts.title': 'Key facts',300  'country.facts.sub': 'Computed from the data — no model-generated numbers.',301  'country.facts.none': 'No verified insights yet.',302  'country.timeline.title': 'Timeline',303  'country.timeline.sub': 'Records, reversals and turning points across the whole history.',304  'country.timeline.none': 'No events detected.',305  'country.topics.title': 'Explore {name} by topic',306  'country.topics.sub': '{n} topics · {m} indicators with data.',307  'country.topics.count': '{n} indicators',308  'country.topics.withData': '{n} with data',309  'country.landlocked': 'Landlocked',310  'country.unMember': 'UN member',311  'country.borders': 'Borders',312  'country.languages': 'Languages',313  'country.officialName': 'Official name',314  'country.similar.peerOf': 'Peers of {name}',315  'country.notFound': 'Unknown country',316  'country.notFoundHint': 'No country or territory matches “{slug}”. Check the spelling or browse the directory.',317  'country.severity': 'Severity {n}',318  'country.dna.income': 'Income',319  'country.dna.demographics': 'Demographics',320  'country.dna.urbanization': 'Urbanisation',321  'country.dna.trade': 'Trade',322  'country.dna.energy': 'Energy',323  'country.dna.emissions': 'Emissions',324  'country.dna.innovation': 'Innovation',325  'country.dna.education': 'Education',326  'country.dna.public_spending': 'Public spending',327  'country.overview': 'Overview',328329  // --- topic page330  'topic.title': '{country} — {topic}',331  'topic.description': '{topic} indicators for {country}: {list} and more, with full history, ranks and sources.',332  'topic.noData': 'No data available ({n})',333  'topic.noDataHint': 'These indicators exist in the registry but no source reports a value for {country}.',334  'topic.indicators': '{n} indicators',335  'topic.withData': '{n} with data',336  'topic.latest': 'Latest',337  'topic.rankIn': 'Rank',338  'topic.history': 'Full history',339  'topic.compareLink': 'Compare',340  'topic.rankingLink': 'Ranking',341  'topic.indicatorLink': 'Indicator page',342  'topic.otherTopics': 'Other topics',343  'topic.notFound': 'Unknown topic',344  'topic.overview': 'Overview',345  'topic.jump': 'Jump to a subtopic',346  'topic.collapsedHint': 'Latest values — expand for the charts.',347348  // --- collapsible subtopic groups (compare tabs, topic pages)349  'group.count': '{n} indicators',350  'group.expand': 'Show charts',351  'group.collapse': 'Hide charts',352  'group.jump': 'Jump to',353  'group.latestCol': 'Latest',354  'group.yearCol': 'Year',355356  // --- empty state357  'empty.title': 'No data for {indicator} in {country}.',358  'empty.sourcesChecked': 'Sources checked: {sources}.',359  'empty.generic': 'Nothing to show here yet.',360361  // --- data table362  'table.definitionList': 'Table shown as a list on small screens',363  'table.sortAsc': 'Sorted ascending',364  'table.sortDesc': 'Sorted descending',365366  // --- changes / severity367  'change.kind.yoy_drop': 'Sharp drop',368  'change.kind.yoy_jump': 'Sharp rise',369  'change.kind.record_high': 'Record high',370  'change.kind.record_low': 'Record low',371  'change.kind.n_year_high': '{n}-year high',372  'change.kind.n_year_low': '{n}-year low',373  'change.kind.sign_flip': 'Reversal',374  'change.kind.accelerating': 'Accelerating',375  'change.kind.decelerating': 'Decelerating',376  'change.severity.high': 'Major',377  'change.severity.medium': 'Notable',378  'change.severity.low': 'Minor',379380  // --- opengraph381  'og.alt': '{name} — key statistics on CountryAtlas',382  'og.site': 'countryatlas.co',383  ...enCompare,384  ...enExplore,385  ...enCore,386  ...enFlagship,387  ...enPlatform,388} as const;389390export type DictKey = keyof typeof en;391