···3131parser, printer, and visitor, which only support the GraphQL query language and
3232are tested to 100% coverage and built to match GraphQL.js’ performance.
33333434+In an average app using the GraphQL library for a GraphQL client aliasing this
3535+package could save you 7kB gzip effortlessly.
3636+3737+> **Note:** If you’re using `@urql/core@^4` you’re already benefitting from
3838+> `@0no-co/graphql.web`’s size reduction and aliasing `graphql-web-lite` will
3939+> only benefit you if you import from `graphql` in any of your other code or
4040+> libraries.
4141+3442## Installation
35433644`graphql-web-lite` mirrors the folder structure of the regular `graphql` package and
···288296### Bundlesize Impact
289297290298Most GraphQL client-side libraries use the following common set of imports from the `graphql` library.
291291-Assuming a transformation like [`babel-plugin-modular-graphql`](https://github.com/kitten/babel-plugin-modular-graphql/)
292292-or granular imports in general this creates a short list of utilities.
293299294300```js
295295-export { valueFromASTUntyped } from 'graphql/utilities/valueFromASTUntyped.mjs';
296296-export { GraphQLError } from 'graphql/error/GraphQLError.mjs';
297297-export { Kind } from 'graphql/language/kinds.mjs';
298298-export { parse } from 'graphql/language/parser.mjs';
299299-export { print } from 'graphql/language/printer.mjs';
300300-export { visit } from 'graphql/language/visitor.mjs';
301301+export { BREAK, isSelectionNode, parse, print, GraphQLError, Kind, visit } from 'graphql';
301302```
302303303303-The minzipped size of the imports is about `11.2kB` in a given output bundle, which assumes all the above imports are
304304-in use. When the GraphQL language parser is dropped from the bundle, for instance by precompiling queries and excluding
305305-it in a compilation step, the resulting minzipped size drops to `5.55kB`.
306306-307307-When `graphql-web-lite` replaces the `graphql` package the minzipped size drops from the `11.2kB` figure down to `5.44kB`,
308308-and `3.19kB` without the parser.
304304+The minzipped size of the imports is about `10kB` in a given output bundle, which assumes all the above imports are
305305+in use. When `graphql-web-lite` replaces the `graphql` package the minzipped size drops to about `3kB`.