diff --git a/packages/console/app/src/i18n/en.ts b/packages/console/app/src/i18n/en.ts index de0e4e652..065a02be3 100644 --- a/packages/console/app/src/i18n/en.ts +++ b/packages/console/app/src/i18n/en.ts @@ -254,6 +254,32 @@ export const dict = { "go.pricing.body": "Use with any agent. Top up credit if needed. Cancel any time.", "go.graph.free": "Free", "go.graph.go": "Go", + "go.graph.label": "Requests/month", + "go.graph.usageLimits": "Usage limits", + "go.graph.tick": "{{n}}x", + "go.graph.aria": "Requests per month: {{free}} vs {{go}}", + + "go.testimonials.brand.zen": "Zen", + "go.testimonials.brand.go": "Go", + "go.testimonials.handle": "@OpenCode", + "go.testimonials.dax.name": "Dax Raad", + "go.testimonials.dax.title": "ex-CEO, Terminal Products", + "go.testimonials.dax.quoteAfter": "has been life changing, it's truly a no-brainer.", + "go.testimonials.jay.name": "Jay V", + "go.testimonials.jay.title": "ex-Founder, SEED, PM, Melt, Pop, Dapt, Cadmus, and ViewPoint", + "go.testimonials.jay.quoteBefore": "4 out of 5 people on our team love using", + "go.testimonials.jay.quoteAfter": ".", + "go.testimonials.adam.name": "Adam Elmore", + "go.testimonials.adam.title": "ex-Hero, AWS", + "go.testimonials.adam.quoteBefore": "I can't recommend", + "go.testimonials.adam.quoteAfter": "enough. Seriously, it's really good.", + "go.testimonials.david.name": "David Hill", + "go.testimonials.david.title": "ex-Head of Design, Laravel", + "go.testimonials.david.quoteBefore": "With", + "go.testimonials.david.quoteAfter": "I know all the models are tested and perfect for coding agents.", + "go.testimonials.frank.name": "Frank Wang", + "go.testimonials.frank.title": "ex-Intern, Nvidia (4 times)", + "go.testimonials.frank.quote": "I wish I was still at Nvidia.", "go.problem.title": "What problem is Go solving?", "go.problem.body": "We're focused on bringing the OpenCode experience to as many people as possible. OpenCode Go is a low cost ($10/month) subscription designed to bring agentic coding to programmers around the world. It provides generous limits and reliable access to the most capable open source models.", diff --git a/packages/console/app/src/routes/go/index.tsx b/packages/console/app/src/routes/go/index.tsx index ca445e04a..ac2f10a99 100644 --- a/packages/console/app/src/routes/go/index.tsx +++ b/packages/console/app/src/routes/go/index.tsx @@ -27,10 +27,12 @@ const checkLoggedIn = query(async () => { if (workspaceID) throw redirect(`/workspace/${workspaceID}`) }, "checkLoggedIn.get") -function LimitsGraph(props: { href: string; labels: { free: string; go: string } }) { +function LimitsGraph(props: { href: string }) { let root!: HTMLElement const [visible, setVisible] = createSignal(false) + const i18n = useI18n() + onMount(() => { if (typeof IntersectionObserver === "undefined") return setVisible(true) const observer = new IntersectionObserver( @@ -73,7 +75,7 @@ function LimitsGraph(props: { href: string; labels: { free: string; go: string } return (
- {t}x + {i18n.t("go.graph.tick", { n: t })} )} @@ -118,10 +120,10 @@ function LimitsGraph(props: { href: string; labels: { free: string; go: string }
- {props.labels.free} + {i18n.t("go.graph.free")} - {props.labels.go} + {i18n.t("go.graph.go")}
@@ -130,15 +132,15 @@ function LimitsGraph(props: { href: string; labels: { free: string; go: string }
- Requests/month + {i18n.t("go.graph.label")} - Usage limits + {i18n.t("go.graph.usageLimits")}
- Free + {i18n.t("go.graph.free")} {free.toLocaleString()} @@ -274,10 +276,7 @@ export default function Home() {
- +
@@ -349,57 +348,61 @@ export default function Home() {
- Dax Raad - ex-CEO, Terminal Products + {i18n.t("go.testimonials.dax.name")} + {i18n.t("go.testimonials.dax.title")}
- @OpenCode Zen Go has been life changing, it's truly a no-brainer. + {i18n.t("go.testimonials.handle")} {i18n.t("go.testimonials.brand.zen")}{" "} + {i18n.t("go.testimonials.brand.go")} {i18n.t("go.testimonials.dax.quoteAfter")}
{/*Jay*/}
- Jay V - ex-Founder, SEED, PM, Melt, Pop, Dapt, Cadmus, and ViewPoint + {i18n.t("go.testimonials.jay.name")} + {i18n.t("go.testimonials.jay.title")}
- {"4 out of 5 people on our team love using "} - @OpenCode Zen Go. + {i18n.t("go.testimonials.jay.quoteBefore")} {i18n.t("go.testimonials.handle")}{" "} + {i18n.t("go.testimonials.brand.zen")} {i18n.t("go.testimonials.brand.go")} + {i18n.t("go.testimonials.jay.quoteAfter")}
{/*Adam*/}
- Adam Elmore - ex-Hero, AWS + {i18n.t("go.testimonials.adam.name")} + {i18n.t("go.testimonials.adam.title")}
- {"I can't recommend "} - @OpenCode Zen Go enough. Seriously, it's really good. + {i18n.t("go.testimonials.adam.quoteBefore")} {i18n.t("go.testimonials.handle")}{" "} + {i18n.t("go.testimonials.brand.zen")} {i18n.t("go.testimonials.brand.go")}{" "} + {i18n.t("go.testimonials.adam.quoteAfter")}
{/*David*/}
- David Hill - ex-Head of Design, Laravel + {i18n.t("go.testimonials.david.name")} + {i18n.t("go.testimonials.david.title")}
- {"With "} - @OpenCode Zen Go I know all the models are tested and perfect for coding agents. + {i18n.t("go.testimonials.david.quoteBefore")} {i18n.t("go.testimonials.handle")}{" "} + {i18n.t("go.testimonials.brand.zen")} {i18n.t("go.testimonials.brand.go")}{" "} + {i18n.t("go.testimonials.david.quoteAfter")}
{/*Frank*/}
- Frank Wang - ex-Intern, Nvidia (4 times) + {i18n.t("go.testimonials.frank.name")} + {i18n.t("go.testimonials.frank.title")}
-
I wish I was still at Nvidia.
+
{i18n.t("go.testimonials.frank.quote")}