Skip to content

Commit

Permalink
Update comparison doc
Browse files Browse the repository at this point in the history
  • Loading branch information
kitten committed Mar 15, 2023
1 parent 200bbec commit af80008
Showing 1 changed file with 22 additions and 22 deletions.
44 changes: 22 additions & 22 deletions docs/comparison.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,28 +35,28 @@ All features are marked to indicate the following:

### Core Features

| | urql | Apollo | Relay |
| ------------------------------------------ | ----------------------------------- | -------------------------------------------------------------------------- | ------------------------------ |
| Extensible on a network level | ✅ Exchanges | ✅ Links | ✅ Network Layers |
| Extensible on a cache / control flow level | ✅ Exchanges | 🛑 | 🛑 |
| Base Bundle Size | **5.9kB** (7.1kB with bindings) | 32.9kB | 27.7kB (34.1kB with bindings) |
| Devtools | |||
| Subscriptions | |||
| Client-side Rehydration | |||
| Polled Queries | 🔶 |||
| Lazy Queries | |||
| Stale while Revalidate / Cache and Network | |||
| Focus Refetching |`@urql/exchange-refocus` | 🛑 | 🛑 |
| Stale Time Configuration |`@urql/exchange-request-policy` || 🛑 |
| Persisted Queries |`@urql/exchange-persisted-fetch` |`apollo-link-persisted-queries` ||
| Batched Queries | 🛑 |`apollo-link-batch-http` | 🟡 `react-relay-network-layer` |
| Live Queries | 🛑 | 🛑 ||
| Defer & Stream Directives | | ✅ / 🛑 (`@defer` is supported in >=3.7.0, `@stream` is not yet supported) | 🟡 (unreleased) |
| Switching to `GET` method | || 🟡 `react-relay-network-layer` |
| File Uploads | | 🟡 `apollo-upload-client` | 🛑 |
| Retrying Failed Queries |`@urql/exchange-retry` |`apollo-link-retry` |`DefaultNetworkLayer` |
| Easy Authentication Flows |`@urql/exchange-auth` | 🛑 (no docs for refresh-based authentication) | 🟡 `react-relay-network-layer` |
| Automatic Refetch after Mutation | ✅ (with document cache) | 🛑 ||
| | urql | Apollo | Relay |
| ------------------------------------------ | ---------------------------------- | -------------------------------------------------------------------------- | ------------------------------ |
| Extensible on a network level | ✅ Exchanges | ✅ Links | ✅ Network Layers |
| Extensible on a cache / control flow level | ✅ Exchanges | 🛑 | 🛑 |
| Base Bundle Size | **5.9kB** (7.1kB with bindings) | 32.9kB | 27.7kB (34.1kB with bindings) |
| Devtools ||||
| Subscriptions ||||
| Client-side Rehydration ||||
| Polled Queries | 🔶 |||
| Lazy Queries ||||
| Stale while Revalidate / Cache and Network ||||
| Focus Refetching |`@urql/exchange-refocus` | 🛑 | 🛑 |
| Stale Time Configuration |`@urql/exchange-request-policy` || 🛑 |
| Persisted Queries |`@urql/exchange-persisted` |`apollo-link-persisted-queries` ||
| Batched Queries | 🛑 |`apollo-link-batch-http` | 🟡 `react-relay-network-layer` |
| Live Queries | 🛑 | 🛑 ||
| Defer & Stream Directives || ✅ / 🛑 (`@defer` is supported in >=3.7.0, `@stream` is not yet supported) | 🟡 (unreleased) |
| Switching to `GET` method ||| 🟡 `react-relay-network-layer` |
| File Uploads || 🟡 `apollo-upload-client` | 🛑 |
| Retrying Failed Queries |`@urql/exchange-retry` |`apollo-link-retry` |`DefaultNetworkLayer` |
| Easy Authentication Flows |`@urql/exchange-auth` | 🛑 (no docs for refresh-based authentication) | 🟡 `react-relay-network-layer` |
| Automatic Refetch after Mutation | ✅ (with document cache) | 🛑 ||

Typically these are all additional addon features that you may expect from a GraphQL client, no
matter which framework you use it with. It's worth mentioning that all three clients support some
Expand Down

0 comments on commit af80008

Please sign in to comment.