From b1768d99115bdd35acb5be2f78023d349e4f7f66 Mon Sep 17 00:00:00 2001 From: Jem Gillam <6413628+jemgillam@users.noreply.github.com> Date: Thu, 6 Nov 2025 17:14:03 +0000 Subject: [PATCH] initial commit --- README.md | 15 +++++++++++++++ contributors/index.md | 15 +++++++++++++++ docusaurus.config.ts | 8 ++++++++ sidebars.contributors.ts | 7 +++++++ src/pages/index.tsx | 13 +++++++++++++ 5 files changed, 58 insertions(+) create mode 100644 contributors/index.md create mode 100644 sidebars.contributors.ts diff --git a/README.md b/README.md index f0dd350..ebdf247 100644 --- a/README.md +++ b/README.md @@ -105,3 +105,18 @@ the following to `.vscode/settings.json` to format on save: 1. Run `yarn format` to fix formatting. 1. Run `yarn build` to verify the site compiles. 1. Push your changes and open a pull request, include a description. + +## Start a new handbook + +1. Create a root level folder with a short name for your handbook +1. Write your first page of the handbook inside that folder +1. Add the handbook to `docusaurus.config.ts`: + - Add it to `plugins:` + - Add it to `themeConfig { navbar { items:[ ]}}` in the place where it should + show in the navbar +1. Duplicate a sidebar file (eg `sidebars.ambassadors.ts`) and rename it to + match the new folder name +1. Add the handbook to `src/pages/index.tsx` by adding a `` component + in the existing list +1. Run `yarn start` and check your new handbook links show and work in the + navbar and on the homepage, and the handbook itself works as intended diff --git a/contributors/index.md b/contributors/index.md new file mode 100644 index 0000000..5d8dbed --- /dev/null +++ b/contributors/index.md @@ -0,0 +1,15 @@ +--- +title: GraphQL Contributors +sidebar_position: 0 +--- + +At its core, the GraphQL project is organized around the specification, with a +wide variety of supporting implementations and tools. + +GraphQL has an active and mutually beneficial relationship with its many +implementations. The GraphQL specification is continuously evolving under the +care of the GraphQL Working Group, which consists of GraphQL spec experts, +contributors to public reference implementations, and implementers. At any given +time, GraphQL specification updates are a combination of anticipatory planning +with documentation of patterns and behaviors that are already proven in +production, sometimes at very large scale. diff --git a/docusaurus.config.ts b/docusaurus.config.ts index a056640..276c8a8 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -74,6 +74,7 @@ const config: Config = { docs("wg"), docs("tsc"), docs("grants"), + docs("contributors"), ], themeConfig: { @@ -131,6 +132,13 @@ const config: Config = { label: "Grants", position: "left", }, + { + type: "doc", + docId: "index", + docsPluginId: "contributors", + label: "Contributing", + position: "left", + }, { href: "https://graphql.org/codeofconduct/", label: "Code of Conduct", diff --git a/sidebars.contributors.ts b/sidebars.contributors.ts new file mode 100644 index 0000000..040e34d --- /dev/null +++ b/sidebars.contributors.ts @@ -0,0 +1,7 @@ +import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; + +const sidebars: SidebarsConfig = { + docs: [{ type: "autogenerated", dirName: "." }], +}; + +export default sidebars; diff --git a/src/pages/index.tsx b/src/pages/index.tsx index d4f37ee..a010d52 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -124,6 +124,19 @@ export default function Home(): ReactNode { releases and coordinating between projects.

+ +

+ GraphQL projects are hosted on the GraphQL GitHub + organization. There are many ways to contribute to the GraphQL + project: through working groups, code contributions and + community initiatives. This handbook covers what you need to + know to get started contributing to the code side of things. +

+
💡 Looking for guidance that is not yet documented?{" "}