Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 `<Handbook>` 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
15 changes: 15 additions & 0 deletions contributors/index.md
Original file line number Diff line number Diff line change
@@ -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.
8 changes: 8 additions & 0 deletions docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ const config: Config = {
docs("wg"),
docs("tsc"),
docs("grants"),
docs("contributors"),
],

themeConfig: {
Expand Down Expand Up @@ -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",
Expand Down
7 changes: 7 additions & 0 deletions sidebars.contributors.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import type { SidebarsConfig } from "@docusaurus/plugin-content-docs";

const sidebars: SidebarsConfig = {
docs: [{ type: "autogenerated", dirName: "." }],
};

export default sidebars;
13 changes: 13 additions & 0 deletions src/pages/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,19 @@ export default function Home(): ReactNode {
releases and coordinating between projects.
</p>
</Handbook>
<Handbook
title="Contributing to GraphQL"
url="/contributors"
linkText="Contributors Handbook"
>
<p>
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.
</p>
</Handbook>
</div>
<div className={styles.programsCard}>
💡 Looking for guidance that is not yet documented?{" "}
Expand Down