1afc38933f
The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-GRAPHQL-5905181 Co-authored-by: snyk-bot <snyk-bot@snyk.io> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> |
||
---|---|---|
.. | ||
.vscode | ||
app | ||
gql | ||
grafbase | ||
lib | ||
.env.local.example | ||
.gitignore | ||
codegen.ts | ||
next-env.d.ts | ||
next.config.js | ||
package.json | ||
postcss.config.js | ||
README.md | ||
tailwind.config.js | ||
tsconfig.json |
Next.js with Grafbase
This example shows to use Grafbase with Next.js. This example features fetching from a local GraphQL backend powered by the Grafbase CLI, and GraphQL Code Generator for making type-safe queries.
Demo
You can see a demo of this online at https://nextjs-rsc-demo.grafbase-vercel.dev.
Deploy to Vercel
Make sure to provide your GRAFBASE_API_URL
and GRAFBASE_API_KEY
to Vercel as environment variables when deploying.
How to use
Execute create-next-app
with npm, Yarn, or pnpm to bootstrap the example:
npx create-next-app --example with-grafbase with-grafbase-app
yarn create next-app --example with-grafbase with-grafbase-app
pnpm create next-app --example with-grafbase with-grafbase-app
To run the example locally you need to:
-
Copy the
.env.local.example
to.env.local
and provide your API URL and API Key:cp .env.local.example .env.local
— the defaults will be fine for development mode. -
Run the Grafbase CLI using
npx grafbase@latest dev
-
Populate the backend with some
Post
entries using a GraphQL mutation:
mutation {
postCreate(
input: {
title: "I love Next.js!"
slug: "i-love-nextjs"
comments: [{ create: { message: "me too!" } }]
}
) {
post {
id
slug
}
}
}
-
Run the app locally and go to http://localhost:3000 to navigate to each post page! This data is fetched from the local backend.
-
Optionally run
npm run codegen
to watch for any changes to queries inside of the app and automatically generate types.
Learn more
- Grafbase Quickstart — get started with Grafbase, quickly!
- Create an account — deploy to the edge with Grafbase!
- Next.js Documentation — learn more about Next.js