rsnext/examples/api-routes-apollo-server
Oscar Busk 077097b7f8
Remove licence from all example/package.json that has them (#28007)
* Add licences to all example/package.json that lack them

* Revert "Add licences to all example/package.json that lack them"

This reverts commit 5d4e25012f7334772b8ef5924bc355277e827cba.

* Update check-examples to remove `license` field from examples

* Remove `license` from all examples.

This was mentioned in vercel/next.js#27121 but it looks like it didn't end up being in the merge?

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2021-08-14 10:48:39 -05:00
..
pages Example: Static Generation of local Apollo GraphQL schema (#13202) 2020-05-27 06:05:10 +00:00
shared/query-graphql Example: Static Generation of local Apollo GraphQL schema (#13202) 2020-05-27 06:05:10 +00:00
.gitignore Added .gitignore to examples that are deployed to vercel (#15127) 2020-07-16 10:52:23 -04:00
package.json Remove licence from all example/package.json that has them (#28007) 2021-08-14 10:48:39 -05:00
README.md docs: add 'Open in StackBlitz' buttons to various examples (#25853) 2021-06-08 20:45:02 +00:00

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 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.

Preview

Preview the example live on StackBlitz:

Open in StackBlitz

Deploy your own

Deploy the example using Vercel:

Deploy with Vercel

How to use

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

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