Skip to content

shellicar/graphql-codegen-treeshake

Repository files navigation

@shellicar/graphql-codegen-treeshake

A graphql-codegen preset that tree-shakes unused types from TypeScript output

npm package build status

Features

  • Only generates TypeScript types reachable from your actual operations and fragments
  • Wraps @graphql-codegen/client-preset — drop-in replacement
  • Reduces generated output size by excluding unused schema types

Installation & Quick Start

pnpm add -D @shellicar/graphql-codegen-treeshake
// codegen.ts
import { preset } from '@shellicar/graphql-codegen-treeshake';
import type { CodegenConfig } from '@graphql-codegen/cli';

const config: CodegenConfig = {
  schema: 'src/**/*.graphql',
  documents: ['src/**/requests.ts'],
  generates: {
    'src/lib/graphql/': {
      preset,
      presetConfig: {
        fragmentMasking: false,
      },
    },
  },
};

export default config;

@shellicar TypeScript Ecosystem

Core Libraries

Reference Architectures

Build Tools

Framework

Logging & Monitoring

About

A graphql-codegen preset that tree-shakes unused types from TypeScript output

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors