rsnext/examples/with-graphql-gateway
Balázs Orbán 335e91800b
chore(examples): remove next-env.d.ts files (#41041)
They are added to `.gitignore` already. Follow-up on #39051


## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the
feature request has been accepted for implementation before opening a
PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing
doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2022-09-29 16:39:47 -07:00
..
pages Open deploy link in new window for examples (#40804) 2022-09-22 09:33:36 -07:00
public feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00
styles feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00
.gitignore Update default gitignore templates (#39051) 2022-07-26 20:08:40 -05:00
.meshrc.yaml feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00
next.config.js feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00
package.json feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00
README.md docs(examples): improve DX while copying command to create new project (#38410) 2022-07-26 21:57:48 -05:00
tsconfig.json feat(examples): build a GraphQL Gateway with GraphQL Mesh and Next.js API routes (#36439) 2022-05-23 11:02:21 -05:00

GraphQL Gateway using GraphQL Mesh and Next.js API routes

This is a simple set up for Next.js using GraphQL Mesh to build a GraphQL Gateway based on a REST API.

GraphQL Mesh is a framework that allows to build GraphQL Gateway server, based on one or multiple source APIs (REST, SOAP, gRPC, GraphQL or Databases).

graph TD;
subgraph AA [" "]
A[Mobile app];
B[Web app];
C[Node.js client];
end
subgraph BB [" "]
E[REST API];
F[GraphQL API];
G[SOAP API];
end
Z[GraphQL Gateway API on a Next.js API route];
A & B & C --> Z;
Z --> E & F & G;

Configuring GraphQL Mesh only requires installing the required packages and providing a .meshrc.yaml configuration file.

This project translate the PetStore REST API (https://petstore.swagger.io/) to a GraphQL API by simply providing the following configuration:

.meshrc.yaml

sources:
  - name: PetStore
    handler:
      newOpenapi:
        baseUrl: https://petstore.swagger.io/v2/
        oasFilePath: https://petstore.swagger.io/v2/swagger.json

More information on GraphQL Mesh configuration and concepts are available in our documentation.


Deploy your own

Deploy the example using Vercel:

Deploy with Vercel


How to use

Execute create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example with-graphql-gateway with-graphql-gateway-app
yarn create next-app --example with-graphql-gateway with-graphql-gateway-app
pnpm create next-app --example with-graphql-gateway with-graphql-gateway-app