{"id":15176821,"url":"https://github.com/juicycleff/nestjs-graphql-gateway","last_synced_at":"2025-10-01T16:30:44.295Z","repository":{"id":50315232,"uuid":"217742032","full_name":"juicycleff/nestjs-graphql-gateway","owner":"juicycleff","description":"Apollo Federation support for NextJS GraphQL module. Note: There is support for federation in the official package now so this project is deprecated","archived":true,"fork":false,"pushed_at":"2020-02-13T13:53:52.000Z","size":704,"stargazers_count":14,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-14T09:58:57.515Z","etag":null,"topics":["apollo-federation","apollo-gateway","apollographql","graphql","library","nestjs","nestjs-graphql"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juicycleff.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-26T17:05:37.000Z","updated_at":"2023-08-03T02:30:05.000Z","dependencies_parsed_at":"2022-08-28T07:52:12.935Z","dependency_job_id":null,"html_url":"https://github.com/juicycleff/nestjs-graphql-gateway","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juicycleff%2Fnestjs-graphql-gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juicycleff%2Fnestjs-graphql-gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juicycleff%2Fnestjs-graphql-gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juicycleff%2Fnestjs-graphql-gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juicycleff","download_url":"https://codeload.github.com/juicycleff/nestjs-graphql-gateway/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234882567,"owners_count":18901295,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apollo-federation","apollo-gateway","apollographql","graphql","library","nestjs","nestjs-graphql"],"created_at":"2024-09-27T13:42:53.354Z","updated_at":"2025-10-01T16:30:38.964Z","avatar_url":"https://github.com/juicycleff.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\nNestJs GraphQL Gateway (supports type-graphql)\n\u003c/h1\u003e\n  \n\u003cp align=\"center\"\u003e\n  NestJS GraphQL Apollo Federation extension. You keep using @nestjs/graphql for all other steps\n\u003c/p\u003e\n    \u003cp align=\"center\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://www.npmjs.com/package/nestjs-graphql-gateway\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/nestjs-graphql-gateway?style=flat-square\" alt=\"NPM Version\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://img.shields.io/github/license/juicycleff/nestjs-graphql-gateway?style=flat-square\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/github/license/juicycleff/nestjs-graphql-gateway?style=flat-square\" alt=\"License\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://img.shields.io/github/languages/code-size/juicycleff/nestjs-graphql-gateway?style=flat-square\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/github/languages/code-size/juicycleff/nestjs-graphql-gateway?style=flat-square\" alt=\"Code Size\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://img.shields.io/github/languages/top/juicycleff/nestjs-graphql-gateway?style=flat-square\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/github/languages/top/juicycleff/nestjs-graphql-gateway?style=flat-square\" alt=\"Top Language\"/\u003e\u003c/a\u003e\n\u003ca href=\"https://img.shields.io/codacy/grade/81314c5a5cb04baabe3eb5262b859288?style=flat-square\" target=\"_blank\"\u003e\u003cimg src=\"https://img.shields.io/codacy/grade/dc460840375d4ac995f5647a5ed10179?style=flat-square\" alt=\"Top Language\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## Installation\n\n```bash\n$ yarn install nestjs-graphql-gateway\n```\n\n## Setup federated service\n\n```typescript\nimport { Module } from '@nestjs/common';\nimport { GraphqlDistributedModule } from 'nestjs-graphql-gateway';\n\n@Module({\n  imports: [\n    GraphqlDistributedModule.forRoot({\n      typePaths: [path.join(process.cwd() + '/apps/service-auth/src', '/**/*.graphql')],\n      introspection: true,\n      playground: {\n        workspaceName: 'GRAPHQL CQRS',\n        settings: {\n          'editor.theme': 'light',\n        },\n      },\n      context: (ctx) =\u003e ctx,\n    })\n  ]\n})\nexport class AppModule {}\n\n\n// Code first TypegraphQl\n\n@Module({\n  imports: [\n    GraphqlDistributedModule.forRoot({\n      autoSchemaFile: 'graphs/demo.gql',\n      \n      // optional orphaned types\n      buildSchemaOptions: {\n        orphanedTypes: [Tenant, TenantMember, User],\n      },\n      \n      context: (ctx) =\u003e ctx,\n    })\n  ]\n})\nexport class AppModule {}\n```\n\n## Setup Gateway\n\n```typescript\nimport { Module } from '@nestjs/common';\nimport { GraphqlDistributedGatewayModule } from 'nestjs-graphql-gateway';\n\n@Module({\n  imports: [\n    GraphqlDistributedGatewayModule.forRoot({\n      subscriptions: false,\n      path: '/graphql',\n      context: context =\u003e context,\n      serviceList: [\n        { name: 'auth', url: 'http://localhost:1000/graphql' },\n        { name: 'user', url: 'http://localhost:2000/graphql' },\n        // more services\n      ],\n      buildService({ url }) {\n        return new HeadersDatasource({ url });\n      },\n    }),\n  ]\n})\nexport class AppModule {}\n```\n\n## License\n\nThis project is [MIT licensed](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuicycleff%2Fnestjs-graphql-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuicycleff%2Fnestjs-graphql-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuicycleff%2Fnestjs-graphql-gateway/lists"}