You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Then, use [Yarn](https://yarnpkg.com/getting-started/install) to install and load all the necessary dependencies:
38
+
Then, use [pnpm](https://pnpm.io) to install and load all the necessary dependencies:
39
39
40
-
```bash
41
-
yarn
40
+
```sh
41
+
pnpm i
42
42
```
43
43
44
-
> Note: [Yarn is currently the only way to run the site locally](https://github.com/graphql/graphql.github.io/issues/946).
44
+
> Note: [pnpm is currently the only way to run the site locally](https://github.com/graphql/graphql.github.io/issues/946).
45
45
46
-
Run the `start` script to launch the server:
46
+
Run the `dev` script to launch the server:
47
47
48
-
```bash
49
-
yarn start
48
+
```sh
49
+
pnpm dev
50
50
```
51
51
52
-
Finally, open http://localhost:8000 to view it in the browser.
52
+
Finally, open http://localhost:3000 to view it in the browser.
53
53
54
-
The GraphQL website is built with [Gatsby](https://gatsbyjs.com/docs). This means that a hot-reloading development environment will be accessible by default.
54
+
The GraphQL website is built with [Nextra](https://nextra.site). This means that a hot-reloading development environment will be accessible by default.
55
55
56
56
### Branching
57
57
58
58
Active development for graphql.org happens on the `source` branch. Be sure to create any new branches or direct any pull requests back to `source`.
59
59
60
60
### Project structure
61
61
62
-
-`static`: Files that will be copied directly to `public`.
63
-
-`public`: Output files that will be served by a static HTTP server.
64
-
-`src`: Markdown and the TypeScript/JavaScript files used to generate the website.
65
-
-`assets`: All the [`less`](http://lesscss.org/) files that contain stylesheets.
66
-
-`components` and `Containers`: React components used for layouts and pages.
67
-
-`content`: Markdown files with the content of pages.
68
-
-`templates`: Layout templates.
69
-
-`utils`: Helper functions.
62
+
-`public`: Static files, like images, can be referenced by your code starting from the base URL (`/`)
63
+
-`out`: Output files that will be served by a static HTTP server
64
+
-`src`: Markdown and the TypeScript/JavaScript files used to generate the website
65
+
-`app`: A new App Router built on React Server Components which supports shared layouts, nested routing, loading states, error handling, and more
66
+
-`pages`: A file-system based router, when a file is added to the `pages` directory, it's automatically available as a route
67
+
-`components`: React components used for pages
70
68
71
69
### Publishing the updated site
72
70
@@ -78,11 +76,11 @@ Your changes will be merged into the `source` branch. Then, the CI will automati
78
76
79
77
If you notice something wrong in the text or code samples, please follow our [development guide](#development-guide) to [open a pull request](https://github.com/graphql/graphql.github.io/pulls) with your fix.
80
78
81
-
All of the content on graphql.org is written and formatted in [Markdown](https://www.gatsbyjs.com/docs/mdx/markdown-syntax/).
79
+
All of the content on https://graphql.org is written and formatted in [Markdown](https://nextra.site/docs/guide/markdown).
82
80
83
81
### Add a library, tool, or service to the Code page
84
82
85
-
The [Code page](https://graphql.org/code/) is a collection of libraries, tools, and services built for GraphQL.
83
+
The [Code page](https://graphql.org/code) is a collection of libraries, tools, and services built for GraphQL.
86
84
87
85
#### General guidelines
88
86
@@ -107,39 +105,39 @@ We rely on these concrete signals before removing a resource. Even if a project
107
105
108
106
To add or remove a resource to this page, follow our [development guide](#development-guide) to [open a pull request](https://github.com/graphql/graphql.github.io/pulls).
109
107
110
-
The content for this page is located in [various directories under `src/content/code`](./src/). Everything is written and formatted in [Markdown](https://www.gatsbyjs.com/docs/mdx/markdown-syntax/).
108
+
The content for this page is located in [various directories under `src/code`](./src/code). Everything is written and formatted in [Markdown](https://nextra.site/docs/guide/markdown).
111
109
112
110
### Add a resource to the Community page
113
111
114
-
The [Community page](https://graphql.org/community/) highlights resources and groups that help people get more involved with GraphQL.
112
+
The [Community page](https://graphql.org/community) highlights resources and groups that help people get more involved with GraphQL.
115
113
116
114
To add something to this page, follow our [development guide](#development-guide) to [open a pull request](https://github.com/graphql/graphql.github.io/pulls).
117
115
118
-
The content for this page is located in a [directory under `src/content/community`](./src/). Everything is written and formatted in [Markdown](https://www.gatsbyjs.com/docs/mdx/markdown-syntax/).
116
+
The content for this page is located in a [directory under `src/pages/community`](./src/pages/community). Everything is written and formatted in [Markdown](https://nextra.site/docs/guide/markdown).
119
117
120
118
### Add a question to the FAQ
121
119
122
-
Our [Frequently Asked Questions (FAQ) page](https://graphql.org/faq/) is designed to help answer questions from the community. This page is still in development, so if you think there's a question missing - please [open an issue](https://github.com/graphql/graphql.github.io/issues/new)! It'd be great if you could include both the question and a proposed answer outline in the issue description.
120
+
Our [Frequently Asked Questions (FAQ) page](https://graphql.org/faq) is designed to help answer questions from the community. This page is still in development, so if you think there's a question missing - please [open an issue](https://github.com/graphql/graphql.github.io/issues/new)! It'd be great if you could include both the question and a proposed answer outline in the issue description.
123
121
124
-
Once you have approval from a maintainer, use the [development guide](#development-guide) to add your question and answer. The content for the FAQ is located in [`src/content/faq`](./src/content/faq/). Each section has its own [Markdown](https://www.gatsbyjs.com/docs/mdx/markdown-syntax/) file.
122
+
Once you have approval from a maintainer, use the [development guide](#development-guide) to add your question and answer. The content for the FAQ is located in [`src/pages/faq`](./src/pages/faq). Each section has its own [Markdown](https://nextra.site/docs/guide/markdown) file.
125
123
126
124
> Note: All answers in this section should be vendor-neutral and accessible to GraphQL users of all levels.
127
125
128
-
When your answer is ready, [open a pull request](https://github.com/graphql/graphql.github.io/pulls/).
126
+
When your answer is ready, [open a pull request](https://github.com/graphql/graphql.github.io/pulls).
129
127
130
128
### Write a new section or guide
131
129
132
130
There are still several [Best Practices guides that no one has written](https://github.com/graphql/graphql.github.io/issues/41) yet. If you want to take one of these, comment on [the original issue](https://github.com/graphql/graphql.github.io/issues/41) and mention which topic you'll work on.
133
131
134
-
Then, use our [development guide](#development-guide) to determine where your new page best fits. Our documentation is written and formatted in [Markdown](https://www.gatsbyjs.com/docs/mdx/markdown-syntax/).
132
+
Then, use our [development guide](#development-guide) to determine where your new page best fits. Our documentation is written and formatted in [Markdown](https://nextra.site/docs/guide/markdown).
135
133
136
-
Once it's ready for review, please [open a pull request](https://github.com/graphql/graphql.github.io/pulls/).
134
+
Once it's ready for review, please [open a pull request](https://github.com/graphql/graphql.github.io/pulls).
137
135
138
136
## Making changes to the code
139
137
140
138
Before diving into any code updates, please [open an issue](https://github.com/graphql/graphql.github.io/issues/new) describing the change(s) you'd like to make.
141
139
142
-
If you're working off an [existing issue](https://github.com/graphql/graphql.github.io/issues/), follow our [development guide](#development-guide) to make your changes. Once it's ready for review, please [open a pull request](https://github.com/graphql/graphql.github.io/pulls/) and reference the original issue.
140
+
If you're working off an [existing issue](https://github.com/graphql/graphql.github.io/issues), follow our [development guide](#development-guide) to make your changes. Once it's ready for review, please [open a pull request](https://github.com/graphql/graphql.github.io/pulls) and reference the original issue.
143
141
144
142
### Browser support
145
143
@@ -157,7 +155,7 @@ If you run into any problems or have questions while contributing, you're always
157
155
158
156
You can also ping our team in the [#website channel on the GraphQL Slack](https://graphql.slack.com/messages/website/). [Get your invite here!](https://graphql-slack.herokuapp.com/)
159
157
160
-
This repository is managed by EasyCLA. Project participants must sign the free ([GraphQL Specification Membership agreement](https://preview-spec-membership.graphql.org) before making a contribution. You only need to do this one time, and it can be signed by [individual contributors](http://individual-spec-membership.graphql.org/) or their [employers](http://corporate-spec-membership.graphql.org/).
158
+
This repository is managed by EasyCLA. Project participants must sign the free [GraphQL Specification Membership agreement](https://preview-spec-membership.graphql.org) before making a contribution. You only need to do this one time, and it can be signed by [individual contributors](https://individual-spec-membership.graphql.org) or their [employers](https://corporate-spec-membership.graphql.org).
161
159
162
160
To initiate the signature process please open a PR against this repo. The EasyCLA bot will block the merge if we still need a membership agreement from you.
0 commit comments