Skip to content

Commit cbcd43d

Browse files
committed
Iterate on wording
1 parent 8338eab commit cbcd43d

File tree

1 file changed

+30
-15
lines changed

1 file changed

+30
-15
lines changed

src/components/index-page/use-cases/index.tsx

Lines changed: 30 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"use client"
22

33
import clsx from "clsx"
4-
import { useState, Fragment } from "react"
4+
import { useState, Fragment, ReactNode } from "react"
55

66
import { Button } from "@/app/conf/_design-system/button"
77
import { StripesDecoration } from "@/app/conf/_design-system/stripes-decoration"
@@ -11,7 +11,7 @@ import blurBean from "./blur-bean.webp"
1111

1212
type UseCase = {
1313
label: string
14-
description: string
14+
description: ReactNode
1515
cta: string
1616
href: string
1717
}
@@ -26,36 +26,50 @@ const USE_CASES: UseCase[] = [
2626
},
2727
{
2828
label: "A mobile app",
29-
description:
30-
"Fetch only the data you need to minimize payload size and round-trips. Build resilient UIs that work well on variable networks.",
31-
cta: "Mobile Patterns",
32-
href: "TODO",
29+
description: (
30+
<>
31+
GraphQL lets you request exactly what you need in one call with no
32+
overfetching to preserve battery and work on slow networks. With
33+
libraries like{" "}
34+
<a
35+
className="typography-link"
36+
href="https://nearform.com/open-source/urql/docs/graphcache/offline/#offline-behavior"
37+
>
38+
GraphCache
39+
</a>{" "}
40+
your app can work offline on planes and trains, and versionless schema
41+
evolution makes it easy to iterate without breaking old versions of the
42+
app.
43+
</>
44+
),
45+
cta: "Performance Optimization",
46+
href: "/learn/performance",
3347
},
3448
{
3549
label: "A frontend-heavy app with advanced UI needs",
3650
description:
37-
"Co-locate queries with components and keep state consistent. Compose data from many backends without bespoke endpoints.",
38-
cta: "Frontend Integration Guide",
39-
href: "TODO",
51+
"GraphQL makes building complex UIs easier by allowing components to declare their data needs directly alongside their code with no performance hit. You can aggregate data from multiple services into a single request and maintain consistent state without creating custom endpoints for every view.",
52+
cta: "GraphQL Queries",
53+
href: "/learn/queries",
4054
},
4155
{
4256
label: "An app with real-time updates",
4357
description:
44-
"Use subscriptions for low-latency updates while keeping the schema as the single contract for clients and servers.",
58+
"Replace polling and complex WebSocket management with GraphQL subscriptions. Your app gets notified instantly when data changes, using the same queries and types you already have. Real-time becomes part of your API instead of a separate system to maintain.",
4559
cta: "Real-time with Subscriptions",
46-
href: "TODO",
60+
href: "/learn/subscriptions",
4761
},
4862
{
4963
label: "A simple full stack TypeScript app",
5064
description:
51-
"Strong types end-to-end with code generation and great DX. Ship faster without compromising correctness.",
52-
cta: "Full Stack TS Starter",
53-
href: "TODO",
65+
"Define your GraphQL schema once and GraphQL Codegen does the rest. Your frontend gets perfectly typed API calls, your backend stays in sync, and any schema changes immediately show up as TypeScript errors throughout your app. Full-stack type safety reduces bugs and makes pivots and refactors easier.",
66+
cta: "Schema-First Development",
67+
href: "/learn/schema",
5468
},
5569
{
5670
label: "An AI-powered app",
5771
description:
58-
"Build apps with soft core with GraphQL MCP, using GraphQL schema introspection to give access and teach an LLM about your data.",
72+
"Build apps with soft core using GraphQL MCP. Your schema documents itself, so AI agents can discover your API capabilities, understand data relationships, and generate valid queries without custom integration work.",
5973
cta: "MCP GraphQL",
6074
href: "https://github.com/graphql/graphql-mcp",
6175
},
@@ -70,6 +84,7 @@ export function UseCases({
7084

7185
return (
7286
<section
87+
id="graphql-use-cases"
7388
className={clsx("gql-container dark:text-neu-0", className)}
7489
{...props}
7590
>

0 commit comments

Comments
 (0)