diff --git a/packages/console/app/src/lib/stats-proxy.ts b/packages/console/app/src/lib/stats-proxy.ts index 7375170b0..399bf0efd 100644 --- a/packages/console/app/src/lib/stats-proxy.ts +++ b/packages/console/app/src/lib/stats-proxy.ts @@ -10,7 +10,7 @@ export async function statsProxy(evt: APIEvent) { targetUrl.hostname = Resource.App.stage === "production" ? "stats.opencode.ai" : "stats.dev.opencode.ai" targetUrl.port = "" - if (targetUrl.pathname.startsWith(`${dataPath}/_build/`) || targetUrl.pathname === `${dataPath}/banner.png`) { + if (targetUrl.pathname.startsWith(`${dataPath}/_build/`) || targetUrl.pathname === `${dataPath}/banner.jpg`) { targetUrl.pathname = targetUrl.pathname.slice(dataPath.length) } diff --git a/packages/stats/app/public/banner.jpg b/packages/stats/app/public/banner.jpg new file mode 100644 index 000000000..e6b19bbd3 Binary files /dev/null and b/packages/stats/app/public/banner.jpg differ diff --git a/packages/stats/app/public/banner.png b/packages/stats/app/public/banner.png deleted file mode 100644 index 57579c32a..000000000 Binary files a/packages/stats/app/public/banner.png and /dev/null differ diff --git a/packages/stats/app/src/app.tsx b/packages/stats/app/src/app.tsx index 1d46cb782..b969043ab 100644 --- a/packages/stats/app/src/app.tsx +++ b/packages/stats/app/src/app.tsx @@ -7,8 +7,8 @@ import "./app.css" function AppMeta() { return ( <> - OpenCode Stats - + OpenCode Data + ) } diff --git a/packages/stats/app/src/routes/[lab]/[model].tsx b/packages/stats/app/src/routes/[lab]/[model].tsx index c7c928bb4..fe86ecde9 100644 --- a/packages/stats/app/src/routes/[lab]/[model].tsx +++ b/packages/stats/app/src/routes/[lab]/[model].tsx @@ -41,7 +41,7 @@ const modelHeaderLinks: readonly HeaderLink[] = [ { href: "#peers", label: "Peers" }, ] const modelFooterLinks: readonly HeaderLink[] = [ - { href: import.meta.env.BASE_URL, label: "Stats Home" }, + { href: import.meta.env.BASE_URL, label: "Data Home" }, { href: `${import.meta.env.BASE_URL}#top-models`, label: "Top Models" }, { href: `${import.meta.env.BASE_URL}#leaderboard`, label: "Leaderboard" }, { href: `${import.meta.env.BASE_URL}#session-cost`, label: "Session Cost" }, @@ -110,10 +110,10 @@ export default function StatsModel() { const [themePreference, setThemePreference] = createSignal("system") const modelName = createMemo(() => catalogEntry()?.name ?? stats()?.model ?? modelParam() ?? "Model") const labName = createMemo(() => formatCatalogLabName(catalogEntry()?.lab ?? stats()?.provider ?? labParam())) - const modelTitle = createMemo(() => `${modelName()} Stats`) + const modelTitle = createMemo(() => `${modelName()} Data`) const modelDescription = createMemo(() => stats() - ? `${modelName()} usage, rank, token mix, cost, geo breakdown, and peer stats across OpenCode.` + ? `${modelName()} usage, rank, token mix, cost, geo breakdown, and peer data across OpenCode.` : `${modelName()} model facts, limits, and OpenCode usage availability.`, ) const modelUrl = createMemo(() => @@ -183,15 +183,15 @@ function ModelLoading() {
- Stats + Data -

Model Stats

+

Model Data

Reading model aggregates from model_stat.

- +
) @@ -204,7 +204,7 @@ function ModelNotFound(props: { lab: string; model: string }) {
- Stats + Data

{props.model || "Model"}

No model facts or model_stat rows matched {props.lab ? `${props.lab}/${props.model}` : props.model}.

@@ -225,7 +225,7 @@ function ModelHero(props: { data: StatsModelData | null; catalog: ModelCatalogEn return (
- Stats + Data
@@ -279,7 +279,7 @@ function ModelCatalogCallout(props: { catalog: ModelCatalogEntry | null }) {
Model Profile {props.catalog?.releaseDate ? formatCatalogDate(props.catalog.releaseDate) : "Listed"} -

No OpenCode usage in the current stats window.

+

No OpenCode usage in the current data window.

) } @@ -446,7 +446,7 @@ function ModelEfficiencySection(props: { data: StatsModelData | null }) { + } > {(data) => ( diff --git a/packages/stats/app/src/routes/[lab]/index.tsx b/packages/stats/app/src/routes/[lab]/index.tsx index c4a59aad6..2e39e1ffa 100644 --- a/packages/stats/app/src/routes/[lab]/index.tsx +++ b/packages/stats/app/src/routes/[lab]/index.tsx @@ -35,7 +35,7 @@ const labHeaderLinks: readonly HeaderLink[] = [ { href: "#models", label: "Models" }, ] const labFooterLinks: readonly HeaderLink[] = [ - { href: import.meta.env.BASE_URL, label: "Stats Home" }, + { href: import.meta.env.BASE_URL, label: "Data Home" }, { href: `${import.meta.env.BASE_URL}#top-models`, label: "Top Models" }, { href: `${import.meta.env.BASE_URL}#market-share`, label: "Market Share" }, { href: `${import.meta.env.BASE_URL}#geo-breakdown`, label: "Geo Breakdown" }, @@ -69,7 +69,7 @@ export default function StatsLab() { const labTitle = createMemo(() => `${labName()} Models`) const labDescription = createMemo( () => - `Explore ${labName()} models used in OpenCode, with recent token usage, context windows, release dates, and model-specific stats.`, + `Explore ${labName()} models used in OpenCode, with recent token usage, context windows, release dates, and model-specific data.`, ) const labUrl = createMemo(() => new URL( @@ -136,7 +136,7 @@ function LabLoading() {
- Stats + Data

Model Lab

Reading model availability and recent OpenCode usage.

@@ -152,7 +152,7 @@ function LabNotFound(props: { lab: string }) {
- Stats + Data

{formatCatalogLabName(props.lab)}

No models matched this lab.

@@ -175,7 +175,7 @@ function LabHero(props: { lab: ModelCatalogLab; stats: StatsLabData | null }) { return (
- Stats + Data
@@ -184,7 +184,7 @@ function LabHero(props: { lab: ModelCatalogLab; stats: StatsLabData | null }) {

Explore {props.lab.models.length} {props.lab.name} models used in OpenCode 0}> including {formatList(featuredModels())}. Compare recent - token usage, context windows, release dates, and model-specific stats. + token usage, context windows, release dates, and model-specific data.

diff --git a/packages/stats/app/src/routes/index.css b/packages/stats/app/src/routes/index.css index 91949a591..33e916252 100644 --- a/packages/stats/app/src/routes/index.css +++ b/packages/stats/app/src/routes/index.css @@ -145,22 +145,10 @@ } [data-page="stats"] [data-slot="stats-wordmark"] { - display: flex; + display: block; flex-shrink: 0; - align-items: center; - gap: 12px; -} - -[data-page="stats"] [data-slot="brand-mark"] { - display: block; - width: 19px; - height: 24px; -} - -[data-page="stats"] [data-slot="brand-label"] { - display: block; - width: 50.851px; - height: 14px; + width: 66px; + height: 20px; } [data-page="stats"] [data-component="section-nav"] { diff --git a/packages/stats/app/src/routes/index.tsx b/packages/stats/app/src/routes/index.tsx index 53d1bd154..db3d0da2a 100644 --- a/packages/stats/app/src/routes/index.tsx +++ b/packages/stats/app/src/routes/index.tsx @@ -48,11 +48,11 @@ const rangeLabels: Record = { "1M": "1 Month", "2M": "2 Months", } -const statsHomeTitle = "OpenCode Stats" -const statsHomeDescription = "OpenCode usage, market share, token cost, and session cost stats." +const statsHomeTitle = "OpenCode Data" +const statsHomeDescription = "OpenCode usage data, market share, token cost, and session cost." const statsHomeFallbackUrl = "https://opencode.ai/data/" -const statsUnfurlPath = "banner.png" -const statsUnfurlAlt = "OpenCode Stats wordmark on a dark patterned background" +const statsUnfurlPath = "banner.jpg" +const statsUnfurlAlt = "OpenCode Data wordmark on a dark patterned background" const usageColors = [ "#ed6aff", "#a684ff", @@ -146,7 +146,7 @@ export default function StatsHome() { - + @@ -265,7 +265,7 @@ function Hero(props: { updatedAt: string | null }) {

-