Skip to content

Commit 37de61b

Browse files
authored
Update CONTRIBUTING.md
1 parent 6addd72 commit 37de61b

1 file changed

Lines changed: 52 additions & 48 deletions

File tree

CONTRIBUTING.md

Lines changed: 52 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,24 @@ _Read the [Solid Docs Manifesto](https://github.com/solidjs/solid-docs-next#the-
44

55
# Contributing to the Solid Docs
66

7-
We welcome contributions of any size and contributors of any skill level. As an open source project, we believe in giving back to our contributors. We are happy to help with guidance on PRs, technical writing, and turning any feature idea into a reality.
7+
We welcome contributions of any size and contributors of any skill level. As an open source project, we believe in giving back to our contributors. We are happy to help with guidance on PRs, technical writing, and turning a feature idea into a reality.
88

99
> **Tip for new contributors:**
1010
> Take a look at [this GitHub guide](https://docs.github.com/en/get-started/quickstart/hello-world) to learn how to use Git and GitHub to contribute to open-source.
1111
12-
1312
## Getting Started
1413

15-
Our `#docs` channel on Discord is our home for general docs discussion. Feel free to introduce yourself there!
14+
Our `#docs` channel on [Discord](https://discord.com/invite/solidjs) is our home for general docs discussion. Feel free to introduce yourself there!
15+
16+
### Using GitHub Issues
1617

17-
[Submit a new GitHub Issue](https://github.com/solidjs/solid-docs-next/issues/new/choose) to propose a change or addition to the docs.
18+
- [Submit a new GitHub Issue](https://github.com/solidjs/solid-docs-next/issues/new/choose) to propose a change or addition to the docs.
1819

19-
Bugs must be reported as Issues; it isn't enough to tell us on Discord!
20+
- Bugs must be reported as Issues; it isn't enough to tell us on Discord!
2021

21-
GitHub Issues allow us to assign tasks and prioritize them, thanks to our [GitHub project board](https://github.com/solidjs/solid-docs-next/projects/1). This is our task management tool.
22+
- GitHub Issues allow us to assign tasks and prioritize them, thanks to our [GitHub project board](https://github.com/solidjs/solid-docs-next/projects/1). This is our task management tool.
2223

23-
Because this project is new, most of our Issues represent new content that must be created. If you're interested in writing new content—or editing content to our standards—be sure to read the [Writing Guide](https://github.com/solidjs/solid-docs-next/blob/main/WRITING.md) before contributing.
24+
- Because this project is new, most of our Issues represent new content that must be created. If you're interested in writing new content—or editing content to our standards—be sure to read the [Writing Guide](https://github.com/solidjs/solid-docs-next/blob/main/WRITING.md) before contributing.
2425

2526
### Do you need to know Solid to contribute?
2627

@@ -36,62 +37,65 @@ If you don't _yet_ know how to use Solid, but you're learning, here's how you ca
3637

3738
That said, if you want to contribute to open-source but aren't interested in Solid or documentation, we'd be happy to help you find an open-source project that suits you.
3839

39-
## Finding something to work on
40-
41-
To find something to help with, check out our [existing Issues](https://github.com/solidjs/solid-docs-next/issues). You can sort by labels, which categorize the issues.
42-
43-
We have a label for each [Content Type](https://github.com/solidjs/solid-docs-next/issues). For example, you know you prefer to work on deep concept explanations, you can choose the `concept` label.
44-
45-
We use the `new content` label when something needs to be written from scratch, and `docs-migration` when content already exists but needs to be rewritten.
46-
47-
48-
49-
- The kanban board
50-
- The roadmap
51-
52-
- CATEGORIES:
53-
54-
- Content
55-
- Structure
56-
- Infrastructure
57-
- Meta / Management
58-
59-
- TYPES:
60-
61-
- BUG (fix either a code bug or content typo / mistake)
62-
- NEW (add a feature or section / piece of writing / proposal)
63-
- REVISE
40+
## Finding Something to Work On
6441

65-
- SOLID EXPERIENCE NEEDED:
66-
- NONE
67-
- LOW
68-
- ADVANCEDs
69-
- RYAN
42+
To find something to help with, check out our [existing Issues](https://github.com/solidjs/solid-docs-next/issues). We're also happy to help you find something that suits you: ask a member of the Docs Team on [Discord](https://discord.com/invite/solidjs) to help get you situated.
7043

44+
### Issue Labels
45+
You can sort by labels, which categorize the issues. These include:
46+
- a label for each of the four [content types](https://github.com/solidjs/solid-docs-next/issues). For example, you know you prefer to work on deep concept explanations, you can choose the `concept` label.
47+
- `new content` for when something needs to be written from scratch.
48+
- `docs-migration` is used when content already exists but needs to be rewritten.
49+
- `infrastructure` for technical changes; great if you're interested in diving into our codebase
50+
- `advanced-experience` for issues that require advanced Solid knowledge to implement
51+
- `no-experience-needed` for issues that you can help with even if you don't have Solid knowledge
7152

72-
## Making a new issue
53+
## Submitting a Pull Request
7354

55+
> **Note**
56+
> If you've never submitted a pull request on GitHub before, check out [this overview](https://opensource.guide/how-to-contribute/#opening-a-pull-request).
7457
58+
- Make sure your PR addresses an existing Issue.
59+
- Group your work so that one PR solves one problem.
60+
- Before you make a large PR, try to discuss it with the Docs Team on #docs. This will make sure we're on the same page and increase the chance of your PR getting merged.
61+
on, as unsolicited material may not fit into our existing plans.
62+
- When you make a PR, you get a Netlify preview link. If you're not done with your changes but want that link to share with us, feel free to make a draft PR and add `[Draft]` to the title.
7563

76-
Solve one issue at a time
64+
> **Note** Existing PRs and Issues need reviewing, triaging, and feedback, too! You can make valuable contributions by commenting, suggesting, testing, researching, brainstorming and generally helping in all areas on GitHub!
7765
66+
## Navigating the Codebase
7867

79-
## How to contribute
68+
Our site is build on [SolidStart](https://github.com/solidjs/solid-start). This is a framework that's still in development, so if you have any issues, check out the #docs or #solid-start channels on Discord. (In fact, the SolidStart team is working on documentation [within our repo](https://github.com/solidjs/solid-docs-next/tree/main/src/routes/start), too!)
8069

81-
- How to use GitHub
70+
### Folder structure
8271

83-
- How to use Discord
72+
The action happens in the `src` folder. Of note:
73+
- `src/components`: General components, like the sidebar navigation, footer, and Asides.
74+
- `src/routes`: Content pages and components that are specific to them. Within are folders corresponding to our [four content types](https://github.com/solidjs/solid-docs-next/blob/main/WRITING.md#content-types):
75+
- `src/routes/tutorials`
76+
- `src/routes/concepts`
77+
- `src/routes/how-to-guides`
78+
- `src/routes/api-reference`
79+
- `src/NAV_SECTIONS.ts`: This file determines the two sidebar navigation sections, **Guides** and **Reference**. **Guides** contains Tutorials and How-To Guides, and **Reference** contains Concept pages and API reference.
8480

85-
- Code Style Guide
81+
Every content page must have its own folder, even if it only has one page. For example, the Tracking concept page is one page, so it is found in an `index.md` file inside `routes/concepts/tracking`. The Getting Started with Solid tutorial has several pages, which are found inside `routes/tutorials/getting-started-with-solid`.
8682

87-
- Writing Style Guide (probably a separate link)
83+
These folders will automatically generate routes; so, `routes/tutorials/getting-started-with-solid/installing-solid` will be shown at `https://docs.solidjs.com/tutorials/getting-started-with-solid/installing-solid`.
8884

89-
- Before you make a new feature / content PR, try to discuss it with other docs contributors on #docs! This will make sure we're on the same page and increase the chance of your PR getting merged.
85+
If a content page has its own custom components and code snippets, place these inside its content folder. See [the Getting Started with Solid folder](https://github.com/solidjs/solid-docs-next/tree/main/src/routes/tutorials/getting-started-with-solid) for an example.
86+
87+
> **Warning** There is also `start` folder in `src/routes`; it is a heavy work-in-progress managed by the SolidStart team and does not follow these rules.
9088
89+
### Adding New Content Pages
9190

91+
1. Choose one of the four folders inside `src/routes/`, corresponding to your page's [content type](https://github.com/solidjs/solid-docs-next/blob/main/WRITING.md#content-types)
92+
2. Create a new folder inside that folder. The new folder's name should be the kebab case of your page's title: e.g., `getting-started-with-solid`.
93+
3. Add `mdx` files for each subpage.
9294

93-
Submitting an Issue is usually the first step to making a change. After an Issue has been considered by the community, we often reach out to community members to encourage them to submit PRs based on existing Issues.
95+
Feel free to submit a PR at this stage, and we can handle adding it to the nav. But if you'd like to do that:
9496

95-
Larger contributions to the docs are encouraged after consultation, as unsolicited material may not fit into our existing plans.
97+
4. Open `NAV_SECTIONS.ts`. This will allow you to add your new page to the nav. If your page is a tutorial or how-to guide, edit the `GUIDES_SECTIONS` object; if it's a concept page, edit the `REFERENCE_SECTIONS` object.
98+
5. Find the object key corresponding to your content type. Then, add a new object to its `pages` array.
99+
6. If your page doesn't have subpages, provide a `name` and a `link` property. (Search the file for "Tracking" for an example)
100+
7. If your page does subpages, provide a `name` property and a `pages` array which contains your subpages. (Search the file for "Getting Started with Solid" for an example)
96101

97-
> Tip: Existing PRs and Issues need reviewing, triaging, and feedback, too! You can make valuable contributions by commenting, suggesting, testing, researching, brainstorming and generally helping in all areas on GitHub!

0 commit comments

Comments
 (0)