rsnext/examples/api-routes-apollo-server/README.md
Horacio Valencia 081b8fba67
Updates Apollo Server Examples to use Apollo Server 4 & @as-integrations/next (#42771)
Closes https://github.com/vercel/next.js/issues/42769

## Description 

This PR address https://github.com/vercel/next.js/issues/42769 by updating the `api-routes-apollo-server`, `api-routes-apollo-server-and-client` and `api-routes-apollo-server-and-client-auth` examples to use Apollo Server 4 and [@as-integrations/next](https://github.com/apollo-server-integrations/apollo-server-integration-next), which is the Apollo Server Next integration package. The PR also updates the three examples to use Typescript. The functionality of the examples is the same.


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


closes https://github.com/vercel/next.js/pull/33545
closes https://github.com/vercel/next.js/pull/30082
closes https://github.com/vercel/next.js/issues/21984
closes #10413
2022-11-14 12:13:31 +00:00

2.8 KiB

Consume local Apollo GraphQL schema to create Static Generation export

Next.js ships with two forms of pre-rendering: Static Generation and Server-side Rendering. This example shows how to perform Static Generation using a local Apollo GraphQL Server schema within getStaticProps and getStaticPaths. The end result is a Next.js application that uses one Apollo GraphQL schema to generate static pages at build time and also serve a GraphQL API Route at runtime. The integration with Next and Apollo Server is implemented using the apollo-server-integration-next community package.

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-apollo-server api-routes-apollo-server-app
yarn create next-app --example api-routes-apollo-server api-routes-apollo-server-app
pnpm create next-app --example api-routes-apollo-server api-routes-apollo-server-app

Deploy it to the cloud with Vercel (Documentation).

Notes

Static Export

If you wish to export a static HTML + JS version of the site you need to first change the setting in this example in ./pages/[username].js where getStaticPaths has fallback: true - this needs to be false for static export to work. You can then run npm run build and npm run export to export the site as a static folder in ./out directory.

Read more about fallback option