Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: reference GraphOS router features in overview #11793

Merged
merged 2 commits into from
Apr 22, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 22 additions & 5 deletions docs/source/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,46 @@ title: Introduction to Apollo Client

import { Link } from 'gatsby';

**Apollo Client** is a comprehensive state management library for JavaScript that enables you to manage both local and remote data with GraphQL. Use it to fetch, cache, and modify application data, all while automatically updating your UI.
**Apollo Client** is a comprehensive state management library for JavaScript. It enables you to manage both local and remote data with GraphQL. Use it to fetch, cache, and modify application data, all while automatically updating your UI.

Apollo Client helps you structure code in an economical, predictable, and declarative way that's consistent with modern development practices. The core `@apollo/client` library provides built-in integration with React, and the larger Apollo community maintains [integrations for other popular view layers](#community-integrations).

<p>
<ButtonLink
size="lg"
colorScheme="indigo"
href="./get-started/"
colorScheme="navy"
>
Get started!
</ButtonLink>
</p>

## Features
## Core features

Some of Apollo Client's core capabilities include:

- **Declarative data fetching:** Write a query and receive data without manually tracking loading states.
- **Normalized request and response caching:** Boost performance by responding almost immediately to queries with cached data.
- **Excellent developer experience:** Enjoy helpful tooling for TypeScript, Chrome / Firefox devtools, and VS Code.
- **Designed for modern React:** Take advantage of the latest React features, such as hooks.
- **Incrementally adoptable:** Drop Apollo into any JavaScript app and incorporate it feature by feature.
- **Designed for modern React:** Take advantage of the latest React features, such as hooks and Suspense.
- **Incrementally adoptable:** Drop Apollo Client into any JavaScript app and incorporate it feature by feature.
- **Universally compatible:** Use any build setup and any GraphQL API.
- **Community driven:** Share knowledge with thousands of developers in the GraphQL community.

## GraphOS supported features

Apollo Client works seamlessly with these GraphOS router supported features:

- Receiving data for specific fields incrementally with the [`@defer` directive](/graphos/operations/defer)
- Real-time updates via [GraphQL subscriptions](/graphos/operations/subscriptions)
- Safelisting with [persisted queries](/graphos/operations/persisted-queries)

<Note>

Apollo Client also supports `@defer` and GraphQL subscription implementations outside of GraphOS.

</Note>

## Recommended docs

After you [get started](./get-started/), check out the full Apollo Client documentation in the navigation on the left.
Expand Down
Loading