rsnext/examples/api-routes-graphql
Steven 4466ba436b
chore(examples): use default prettier for examples/templates (#60530)
## Description
This PR ensures that the default prettier config is used for examples
and templates.

This config is compatible with `prettier@3` as well (upgrading prettier
is bigger change that can be a future PR).

## Changes
- Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will
be needed upgrading to prettier@3)
- Added `examples/.prettierrc.json` with default config (this will
change every example)
- Added `packages/create-next-app/templates/.prettierrc.json` with
default config (this will change every template)

## Related

- Fixes #54402
- Closes #54409
2024-01-11 16:01:44 -07:00
..
pages chore(examples): use default prettier for examples/templates (#60530) 2024-01-11 16:01:44 -07:00
.gitignore Add .yarn/install-state.gz to .gitignore (#56637) 2023-10-18 16:34:48 +00:00
next-env.d.ts Remove incorrect entries for pnpm debug log (#47241) 2023-03-26 22:26:05 -07:00
package.json examples: Bump SWR to v2.0.0 (#44790) 2023-01-12 09:36:29 -08:00
README.md update example Deploy button URLs (#48842) 2023-04-26 13:31:44 -04:00
tsconfig.json chore(examples): Convert api-routes-graphql example to TypeScript (#38357) 2022-07-08 11:44:39 +00:00

API routes with GraphQL server

Next.js ships with API routes, which provide an easy solution to build your own API. This example showcases how to build a lightweight and blazing fast GraphQL API with minimum configuration using GraphQL Yoga.

GraphQL Yoga comes with strong defaults:

  • CORS is enabled by default
  • Automatically masking unexpected errors and preventing sensitive information from leaking to clients.
  • Shipped with GraphiQL

Yoga also brings support (with no additional dependency) for subscriptions, file uploads, and your favorite schema-building library (GraphQL Tools, Pothos, Nexus, TypeGraphQL, SDL first schema-design approaches, graphql-js, Apollo Tools).

More information on all available features are available on the official documentation.

Finally, GraphQL Yoga is built on top of Envelop. Envelop is a library that helps build GraphQL API faster and flexibly with plugin-based architecture.

Similar to Express middlewares allowing you to customize requests' behavior, Envelop applies the same idea to GraphQL requests.

More information on Envelop documentation.

Deploy your own

Deploy the example using Vercel or preview live with StackBlitz

Deploy with Vercel

How to use

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

npx create-next-app --example api-routes-graphql api-routes-graphql-app
yarn create next-app --example api-routes-graphql api-routes-graphql-app
pnpm create next-app --example api-routes-graphql api-routes-graphql-app

Deploy it to the cloud with Vercel (Documentation).