+21
![opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>](/assets/img/avatar_default.png)






![opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>](/assets/img/avatar_default.png)
![opencode-agent[bot]](/assets/img/avatar_default.png)
opencode-agent[bot]
opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
James Long
Aiden Cline
Dustin Deus
starptech
Frank
Luke Parker
opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
𝓛𝓲𝓽𝓽𝓵𝓮 𝓕𝓻𝓪𝓷𝓴
Aiden Cline
Dax
usrnk1
Jay
Brendan Allan
Brendan Allan
runvip
Shoubhit Dash
Jack
opencode
Aarav Sareen
Julian Coy
Vladimir Glafirov
Adam
Kit Langton
Simon Klee
Jay
David Hill
James Long
冯基魁
Aiden Cline
687dbba6a3
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com> Co-authored-by: James Long <longster@gmail.com> Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> Co-authored-by: Dustin Deus <deusdustin@gmail.com> Co-authored-by: starptech <starptech@starptechs-MBP.fritz.box> Co-authored-by: Frank <frank@anoma.ly> Co-authored-by: Luke Parker <10430890+Hona@users.noreply.github.com> Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com> Co-authored-by: 𝓛𝓲𝓽𝓽𝓵𝓮 𝓕𝓻𝓪𝓷𝓴 <little-frank@opencord.local> Co-authored-by: Aiden Cline <aidenpcline@gmail.com> Co-authored-by: Dax <mail@thdxr.com> Co-authored-by: usrnk1 <7547651+usrnk1@users.noreply.github.com> Co-authored-by: Jay <53023+jayair@users.noreply.github.com> Co-authored-by: Brendan Allan <git@brendonovich.dev> Co-authored-by: Brendan Allan <14191578+Brendonovich@users.noreply.github.com> Co-authored-by: runvip <164729189+runvip@users.noreply.github.com> Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com> Co-authored-by: Jack <jack@anoma.ly> Co-authored-by: opencode <opencode@sst.dev> Co-authored-by: Aarav Sareen <96787824+arvsrn@users.noreply.github.com> Co-authored-by: Julian Coy <julian@ex-machina.co> Co-authored-by: Vladimir Glafirov <vglafirov@gitlab.com> Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com> Co-authored-by: Kit Langton <kit.langton@gmail.com> Co-authored-by: Simon Klee <hello@simonklee.dk> Co-authored-by: Jay <air@live.ca> Co-authored-by: David Hill <1879069+iamdavidhill@users.noreply.github.com> Co-authored-by: James Long <jlongster@users.noreply.github.com> Co-authored-by: 冯基魁 <56265583+fengjikui@users.noreply.github.com> Co-authored-by: Aiden Cline <rekram1-node@users.noreply.github.com>
282 lines
12 KiB
TypeScript
282 lines
12 KiB
TypeScript
import { type Locale } from "./lib/language"
|
|
import { dict as ar } from "./i18n/ar"
|
|
import { dict as br } from "./i18n/br"
|
|
import { dict as da } from "./i18n/da"
|
|
import { dict as de } from "./i18n/de"
|
|
import { dict as es } from "./i18n/es"
|
|
import { dict as fr } from "./i18n/fr"
|
|
import { dict as it } from "./i18n/it"
|
|
import { dict as ja } from "./i18n/ja"
|
|
import { dict as ko } from "./i18n/ko"
|
|
import { dict as no } from "./i18n/no"
|
|
import { dict as pl } from "./i18n/pl"
|
|
import { dict as ru } from "./i18n/ru"
|
|
import { dict as th } from "./i18n/th"
|
|
import { dict as tr } from "./i18n/tr"
|
|
import { dict as uk } from "./i18n/uk"
|
|
import { dict as zh } from "./i18n/zh"
|
|
import { dict as zht } from "./i18n/zht"
|
|
|
|
const en = {
|
|
"app.title": "AI Model Usage Rankings | OpenCode Data",
|
|
"app.description":
|
|
"Explore OpenCode Go usage across AI models, including token volume, rankings, market share, token pricing, session cost, cache ratio, and geo breakdowns.",
|
|
"app.unfurlAlt": "OpenCode Data wordmark on a dark patterned background",
|
|
"nav.dataHome": "Data Home",
|
|
"nav.topModels": "Top Models",
|
|
"nav.leaderboard": "Leaderboard",
|
|
"nav.uniqueUsers": "Unique Users",
|
|
"nav.sessionCost": "Session Cost",
|
|
"nav.tokenCost": "Token Cost",
|
|
"nav.cacheRatio": "Cache Ratio",
|
|
"nav.marketShare": "Market Share",
|
|
"nav.geoBreakdown": "Geo Breakdown",
|
|
"nav.overview": "Overview",
|
|
"nav.usage": "Usage",
|
|
"nav.users": "Users",
|
|
"nav.efficiency": "Efficiency",
|
|
"nav.peers": "Peers",
|
|
"nav.models": "Models",
|
|
"header.brandLabel": "Data home",
|
|
"header.sectionNavLabel": "Data sections",
|
|
"header.githubAria": "Star OpenCode on GitHub",
|
|
"header.github": "GitHub",
|
|
"header.tryOpenCode": "Try OpenCode",
|
|
"header.openNav": "Open navigation",
|
|
"header.closeNav": "Close navigation",
|
|
"theme.groupLabel": "Theme",
|
|
"theme.dark": "Dark",
|
|
"theme.light": "Light",
|
|
"theme.system": "System",
|
|
"footer.modelData": "Model Data",
|
|
"footer.legal": "Legal",
|
|
"footer.connect": "Connect",
|
|
"footer.newsletter": "Newsletter",
|
|
"footer.newsletterBody": "Be the first to know about new releases.",
|
|
"footer.language": "Language",
|
|
"footer.subscribe": "Subscribe",
|
|
"footer.terms": "Terms of service",
|
|
"footer.privacy": "Privacy policy",
|
|
"footer.contact": "Contact us",
|
|
"footer.community": "Community",
|
|
"footer.youtube": "YouTube",
|
|
"footer.homeAria": "OpenCode home",
|
|
"footer.status": "All systems Operational",
|
|
"footer.copyright": "© 2026 Anomaly Innovations Inc.",
|
|
"bridge.learnMore": "LEARN MORE",
|
|
"modal.closeNewsletter": "Close newsletter signup",
|
|
"modal.title": "OpenCode Newsletter",
|
|
"modal.body": "Be the first to know\nabout new releases.",
|
|
"modal.email": "Email address",
|
|
"modal.subscribe": "Subscribe",
|
|
"modal.subscribing": "Subscribing...",
|
|
"modal.success": "You're subscribed.",
|
|
"modal.error": "Failed to subscribe",
|
|
"product.allUsers": "All Users",
|
|
"product.zen": "Zen",
|
|
"product.go": "Go",
|
|
"range.1D": "1 Day",
|
|
"range.1W": "1 Week",
|
|
"range.2W": "2 Weeks",
|
|
"range.1M": "1 Month",
|
|
"range.2M": "2 Months",
|
|
"chart.daily": "Daily",
|
|
"chart.input": "Input",
|
|
"chart.output": "Output",
|
|
"chart.cached": "Cached",
|
|
"chart.uncached": "Uncached",
|
|
"chart.ratio": "Ratio",
|
|
"chart.model": "Model",
|
|
"chart.cacheRatio": "Cache Ratio",
|
|
"chart.costSession": "Cost/Session",
|
|
"chart.tokensSession": "Tokens/Session",
|
|
"chart.costPerSession": "COST / SESSION",
|
|
"chart.tokensPerSession": "TOKENS / SESSION",
|
|
"chart.live": "Live",
|
|
"chart.percent": "percent",
|
|
"chart.leaderboardAria": "Model token leaderboard",
|
|
"chart.scrollableLeaderboardAria": "Scrollable model token leaderboard",
|
|
"chart.byAuthor": "by {{author}}",
|
|
"home.updated": "Updated",
|
|
"home.noRows": "No rows yet",
|
|
"home.justNow": "just now",
|
|
"home.heroCopy": "See which models are winning real usage, how the mix is shifting, and what that means for cost.",
|
|
"home.loadingTitle": "Loading data",
|
|
"home.loadingDescription": "Reading model aggregates.",
|
|
"home.usageTitle": "Usage",
|
|
"home.topModelsDescription": "Usage of models across OpenCode Go.",
|
|
"home.noUsageTitle": "No usage data",
|
|
"home.noUsageDescription": "No model rows matched this product and range.",
|
|
"home.noLeaderboardTitle": "No leaderboard data",
|
|
"home.noLeaderboardDescription": "No model rows matched this product and range.",
|
|
"home.productFilter": "Product filter",
|
|
"home.dateRange": "Date range",
|
|
"home.stackedUsageChart": "Stacked top model usage chart",
|
|
"home.total": "total",
|
|
"home.modelUsers": "model users",
|
|
"home.new": "New",
|
|
"home.uniqueUsersTitle": "Unique Users",
|
|
"home.uniqueUsersDescription": "Daily unique OpenCode Go users by model.",
|
|
"home.noUserDataTitle": "No user data",
|
|
"home.noUserDataDescription": "No user-bearing model rows matched this window.",
|
|
"home.uniqueUsersChart": "Stacked unique user chart by model",
|
|
"home.marketShareTitle": "Market Share",
|
|
"home.marketShareDescription": "Compare token share by model author.",
|
|
"home.noMarketTitle": "No market data",
|
|
"home.noMarketDescription": "No model rows matched this range.",
|
|
"home.marketChart": "Market share by model author",
|
|
"home.noData": "No data",
|
|
"home.geoTitle": "Geo Breakdown",
|
|
"home.geoDescription": "Tokens used by country.",
|
|
"home.noGeoTitle": "No geo data",
|
|
"home.noGeoDescription": "No geo rows matched this range.",
|
|
"home.worldMap": "World map of token usage by country",
|
|
"home.geoMapTitle": "Geo Breakdown map",
|
|
"home.unknown": "Unknown",
|
|
"home.tokenCostTitle": "Token Cost",
|
|
"home.tokenCostDescription": "Price per 1M tokens.",
|
|
"home.noTokenCostTitle": "No token cost data",
|
|
"home.noTokenCostDescription": "No cost-bearing model rows matched this product.",
|
|
"home.cacheRatioTitle": "Cache Ratio",
|
|
"home.cacheRatioDescription": "Share of input tokens served from cache.",
|
|
"home.noCacheTitle": "No cache ratio data",
|
|
"home.noCacheDescription": "No input-token model rows matched this product.",
|
|
"home.sessionCostTitle": "Session Cost",
|
|
"home.sessionCostDescription": "Average cost per session.",
|
|
"home.noSessionCostTitle": "No session cost data",
|
|
"home.noSessionCostDescription": "No session-bearing model rows matched this product.",
|
|
"home.costSession": "Cost/Session",
|
|
"lab.title": "{{lab}} AI Model Usage & Rankings | OpenCode Data",
|
|
"lab.description":
|
|
"Compare {{lab}} models used in OpenCode Go, including token usage, model rankings, context windows, release dates, costs, and model-specific data.",
|
|
"lab.loadingTitle": "Model Lab",
|
|
"lab.loadingDescription": "Reading model availability and recent OpenCode usage.",
|
|
"lab.notFound": "No models matched this lab.",
|
|
"lab.heroPrefix": "Explore {{count}} {{lab}} models used in OpenCode",
|
|
"lab.heroIncluding": "including {{models}}",
|
|
"lab.heroSuffix": "Compare recent token usage, context windows, release dates, and model data.",
|
|
"lab.tokensProcessed": "Tokens Processed",
|
|
"lab.pending": "Pending",
|
|
"lab.usageAfterActivity": "Usage appears after model activity lands",
|
|
"lab.latestRelease": "Latest release {{date}}",
|
|
"lab.shareOfUsage": "{{share}} of recent OpenCode usage",
|
|
"lab.usageTitle": "{{lab}} token usage",
|
|
"lab.usageDescription": "Daily token volume.",
|
|
"lab.noUsageTitle": "No usage yet",
|
|
"lab.noUsageDescription": "Recent token usage appears here once this lab has activity.",
|
|
"lab.dailyTokenChart": "{{lab}} daily token usage chart",
|
|
"lab.dailyTokens": "Daily tokens",
|
|
"lab.tokens": "tokens",
|
|
"lab.modelsTitle": "{{lab}} models",
|
|
"lab.modelsDescription": "Catalog details plus recent usage.",
|
|
"lab.recentUsageAndLimits": "Recent usage and limits.",
|
|
"lab.usage": "Usage",
|
|
"lab.share": "Share",
|
|
"model.title": "{{model}} Usage, Cost & Rank | OpenCode Data",
|
|
"model.description":
|
|
"View {{model}} OpenCode Go usage data, including token volume, weekly rank, token mix, costs, cache ratio, sessions, geo breakdowns, and peer models.",
|
|
"model.loadingTitle": "Model Data",
|
|
"model.loadingDescription": "Reading model aggregates.",
|
|
"model.loadingProfile": "Reading the model profile.",
|
|
"model.noDataTitle": "No model data",
|
|
"model.noDataDescription": "Try opening a model from the leaderboard.",
|
|
"model.noMatched": "No model facts or usage rows matched {{id}}.",
|
|
"model.fallback": "Model",
|
|
"model.catalogFallback":
|
|
"Model facts from the shared model index. OpenCode Go usage appears once this model has activity.",
|
|
"model.unranked": "Unranked across last week's OpenCode Go usage",
|
|
"model.ranked": "Ranked #{{rank}} across last week's OpenCode Go usage",
|
|
"model.observedVolume": "with {{share}} of observed 2M volume.",
|
|
"model.weights": "Model weights: {{label}}",
|
|
"model.rank": "7D Rank",
|
|
"model.profile": "Model Profile",
|
|
"model.listed": "Listed",
|
|
"model.noCurrentUsage": "No OpenCode Go usage in the current data window.",
|
|
"model.facts": "Model facts",
|
|
"model.context": "Context",
|
|
"model.output": "Output",
|
|
"model.knowledge": "Knowledge",
|
|
"model.release": "Release",
|
|
"model.inputs": "Inputs",
|
|
"model.overviewDescription": "Recent tokens, unique users, and market position.",
|
|
"model.noSummaryTitle": "No usage summary",
|
|
"model.noSummaryDescription": "This model has no OpenCode Go usage rows yet.",
|
|
"model.tokens": "Tokens",
|
|
"model.uniqueUsers": "Unique Users",
|
|
"model.lastTwoMonths": "last two months",
|
|
"model.sessions": "Sessions",
|
|
"model.completedSessions": "completed sessions",
|
|
"model.tokenShare": "Token Share",
|
|
"model.totalModels": "{{count}} models",
|
|
"model.momentum": "Momentum",
|
|
"model.vsPreviousWindow": "vs previous window",
|
|
"model.usageDescription": "Daily token volume.",
|
|
"model.noUsageTitle": "No usage",
|
|
"model.noUsageDescription": "No usage landed in the current window.",
|
|
"model.dailyTokenChart": "Daily token usage chart",
|
|
"model.usersDescription": "Daily unique users.",
|
|
"model.noUsersTitle": "No user data",
|
|
"model.noUsersDescription": "No user-bearing rows landed in the current window.",
|
|
"model.dailyUserChart": "Daily unique user chart",
|
|
"model.efficiencyDescription": "Cost, cache behavior, and average session shape.",
|
|
"model.noEfficiencyTitle": "No efficiency data",
|
|
"model.noEfficiencyDescription": "Efficiency data appears after usage lands.",
|
|
"model.totalSpendLabel": "Total spend",
|
|
"model.cost": "Cost",
|
|
"model.totalSpend": "total spend",
|
|
"model.costPerMillion": "Cost / 1M",
|
|
"model.costInput": "Cost input",
|
|
"model.costOutput": "Cost output",
|
|
"model.inputOutput": "input / output",
|
|
"model.observedTokens": "observed all tokens",
|
|
"model.costSession": "Cost / Session",
|
|
"model.averageCostSession": "Average cost / Session",
|
|
"model.average": "average",
|
|
"model.tokensSession": "Tokens / Session",
|
|
"model.averageTokensSession": "Average tokens / session",
|
|
"model.cacheRatio": "Cache Ratio",
|
|
"model.inputTokens": "input tokens",
|
|
"model.geoDescription": "OpenCode Go model tokens used by country.",
|
|
"model.noGeoTitle": "No geo data",
|
|
"model.noGeoDescription": "No OpenCode Go geo rows matched this model.",
|
|
"model.worldMap": "World map of model token usage by country",
|
|
"model.peersDescription": "Nearby models by recent OpenCode Go token volume.",
|
|
"model.noPeersTitle": "No peers",
|
|
"model.noPeersDescription": "Peer rankings appear after usage lands.",
|
|
"model.noUsageLastWeek": "No usage last week",
|
|
"model.newThisWeek": "New this week",
|
|
"model.sameAsPreviousWeek": "Same as previous week",
|
|
"model.vsPreviousWeek": "{{change}} vs previous week",
|
|
"model.pdf": "PDF",
|
|
"format.users": "users",
|
|
"format.tokens": "tokens",
|
|
} as const
|
|
|
|
export type Key = keyof typeof en
|
|
export type Dict = Record<Key, string>
|
|
|
|
const dictionaries = {
|
|
ar,
|
|
br,
|
|
da,
|
|
de,
|
|
en,
|
|
es,
|
|
fr,
|
|
it,
|
|
ja,
|
|
ko,
|
|
no,
|
|
pl,
|
|
ru,
|
|
th,
|
|
tr,
|
|
uk,
|
|
zh,
|
|
zht,
|
|
} satisfies Record<Locale, Dict>
|
|
|
|
export function dict(locale: Locale) {
|
|
return dictionaries[locale]
|
|
}
|