{ "id": "03c5eba9f9f780f0971bb43c", "source": "solid:signals", "type": "github-document", "title": "CONTRIBUTING", "content": "# CONTRIBUTION GUIDE\n\nThank you for helping us make this project great and being a part of the Solid community!\n\nWe welcome contributions from anyone, regardless of your skill level.\nWe are happy to help with guidance on PRs, technical writing, and turning features into realities.\n\n\u003e **New to contributing?**\n\u003e Take a look at [this GitHub guide](https://docs.github.com/en/get-started/start-your-journey/hello-world) to learn how to use Git and GitHub to contribute to open-source.\n\nIf you're new to Solid, we ask that you check out our [Writing Guide](https://github.com/solidjs/solid-docs-next/blob/main/WRITING.md).\n\n## Types of contributions\n\nThere are many ways to contribute to the Solid's documentation!\n\nThe Solid Docs website is built on Solid!\nMaintaining it requires not only written content and Solid code maintenance, but it also needs to address accessibility (a11y), CSS, UI, and UX concerns.\nWe also aim to make our documentation available in several languages, so we need help translating the entire site.\n\nYou can help out by leaving review comments on [PRs](https://github.com/solidjs/solid-docs-next/pulls) and adding ideas in existing GitHub [issues ](https://github.com/solidjs/solid-docs-next/issues) and [discussions](https://github.com/solidjs/solid-docs-next/discussions).\n\nEvery PR, especially translation PRs, will need reviewers.\nReviewing PRs and leaving comments, suggestions, or even saying \"Looks good!\" can be a great way to get started on contributing alongside our Docs team.\nIt's also a great way to learn more about Solid!\n\nWe encourage you to:\n\n- File an issue\n- Start a discussion\n- Make a PR\n- Look at our existing issues\n- Review existing PRs\n\n## File an issue\n\nIssues are a great way to keep track of tasks, enhancements, and bugs for our projects. They're typically the first step to making a change.\n\nAfter 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.\n\nWe encourage larger contributions to the docs after you participate in Issues and Discussions, as unsolicited material may not fit into our existing plans.\n\n\u003e While you're more than welcome to mention a bug that you've encountered on our Discord, we ask that you also report it as an issue!\n\n### Writing an issue\n\nHelpful issues generally include:\n\n- Clear, descriptive titles\n- Links to relevant pages/files\n- Explanations as to why (or _for whom_) this is a problem\n- _Option_: proposed solutions\n\n### Examples of helpful new issues\n\n- An explanation is confusing (with a reason why)\n- a code example is wrong (with or without a proposed fix)\n- accessibility (a11y) issues discovered\n- missing content\n- request for an example on how to implement a specific feature (e.g. responsive nav bar).\n\n### Issue labels\n\nWe use labels as a way to organize and categorize our issues. Here are some common labels that you will see:\n\n- `a11y` - related to anything accessibility.\n- `bug` - when something isn't working.\n- `good first issue` - a good place to start for newcomers\n- `help wanted` - when we are looking for assistance on an issue\n- `i18n` - anything to do with internationalization and translation\n\n## Start a discussion\n\nDiscussions are a place within this repository where we can have open-ended conversations.\nIt's the perfect place for Q\u0026A, sharing ideas, community engagement, and connecting with other members.\n\nFeel free to start a [new discussion](https://github.com/solidjs/solid-docs-next/discussions) on any topic related to our docs!\n\n### Examples of helpful discussions\n\n- Is a page in the right section of the docs?\n- Notice the colors are too bold? Too muted?\n- Is the site navigation clear and helpful?\n- Any suggestions of content that you think could be helpful adding\n\n## Make a PR (Pull Request)\n\n\u003e If you've never submitted a pull request on GitHub before, check out [this overview on how to open a PR](https://opensource.guide/how-to-contribute/#opening-a-pull-request).\n\nPRs are the heart of collaboration on GitHub.\nWhen you open a pull request, you are putting forward your suggested changes, inviting us to review it, and requesting for these changes to be merged into our main branch.\n\nHere's how to effectively contribute via a PR:\n\n- **Understand the Scope**: Before creating a PR, ensure it addresses an existing issue. Remember to link your PR to the issue it solves for easy tracking and understanding.\n- **Singular Focus**: Each PR should address a single issue or enhancement. Want to propose a larger change? Reach out to us on [Discord](https://discord.com/invite/solidjs) and let's discuss the best way forward!\n- **Drafts for Early Feedback**: If you're seeking early feedback but aren't quite finished with your changes, consider creating a draft PR. Simply prefix your PR title with `**[Draft]**`. This way, you can get input on your work-in-progress.\n- **Quality over Quantity**: Strive for the quality of your contribution rather than the quantity. A well-thought-out, cleanly coded, and thoroughly tested PR is much more valuable than a hastily done large one.\n Contributing via PRs not only enhances the project, but also allows you to be a part of the active community, sharing ideas, learning, and growing with the project.\n\n\u003e 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!\n\n### Writing a PR\n\n\u003e Need help making a PR? [Join us on Discord](https://discord.com/invite/solidjs), we'll be more than happy to help you out!\n\nContributions to the documentation site are made by editing the docs repository.\nYou can do this directly on GitHub.com or by creating a copy of the repository locally, making your changes there, and contributing back to our repository.\n\n#### Examples of helpful PRs\n\n- PRs addressing an existing fix.\n- Unsolicited PRs addressing typos, broken links, and other minor problems.\n- Translating an entry.\n\n### Edit this page via GitHub\n\nEvery page on [docs.solidjs.com](https://docs.solidjs.com/) has an **Edit this page** link at the bottom.\nYou can click on that button to edit the source code for that page in **GitHub**.\n\nAfter you make your changes, click **Commit changes**.\nThis will automatically create a [fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks) of the docs in your GitHub account with the changes.\n\nOnce you have committed your edits within your fork, follow the prompts to create a **pull request** and submit your changes for review.\n\nEvery pull request needs to be reviewed by our contributors and approved by a maintainer.\n\n### Translating\n\nThough it is not a hard requirement, we'd deeply appreciate if you could recommend a native speaker to review your newly added translations. This ensures translations can also adhere to our review-based system for Pull Requests.\n\n#### Adding support to a new language\n\n1. Create a dictionary file in `src/i18n/dictionaries/{locale}/ui.ts`. The name should follow our locale convention.\n\n - language (ISO 639-1 - set 1): https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes\n - country code(optional) (ISO 3166-1 alpha-2): https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2\n - E.g.: Canadian French would be: `fr-ca`\n\n2. Add the `import` and language information to the objects in the barrel file: `./src/i18n/dictionaries/index.ts`. So it will be identified by the routing system, and an entry its added to the language dropdown.\n3. Add the language to the `array` in `./scripts/collections/index.mjs` so internal files are created.\n4. Add the important UI translations to `./src/i18n/dictionaries/{locale}/ui.ts`\n5. Add at least the index page `./src/routes/{locale}/index.mdx`, so others and yourself could see things in action.\n\n#### Adding translations to a supported language\n\nTo translate a new entry to an existing language, go to `src/routes/{locale}` and add the entry following the exact same structure as the default.\n\n\u003e [!NOTE]\n\u003e We can't accept half translated entries because there is not a way of tracking if an entry is not fully translated. Please, make sure you have the time to do the whole entry in your PR.\n\n### Open a PR\n\nOnce you have made your changes using your preferred method, you're ready to create a 'pull request'.\n\nThis will let the Solid docs team know you have some changes you would like to propose.\nAt this point, we can give you feedback and possibly request changes.\n\n[Read more about making a pull request in GitHub's docs.](https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project#making-a-pull-request)\n\nPlease include a clear title.\nThe description will have some pre-filled questions that we would like you to answer.\n\nEvery pull request generates a preview of the site, including your proposed changes, using **Netlify** for anyone to see.\n\nUse the **Deploy Preview** link in your pull request to review and share your changes.\n\nThe docs site will be automatically updated whenever pull requests are merged.\n\n## Helpful information\n\n### Forks\n\nOn GitHub, you will need a 'fork' of this repository to work on.\nThis is your own copy of the code base where you can make changes. You can read more about forks in [GitHub's documentation](https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project).\n\nNot sure how to get started with GitHub, forks, pull requests, or want a refresher?\nYou can watch this video series: [How to Contribute to an Open Source Project on GitHub](https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github).\n\n#### Creating a fork\n\nTo create your copy, click the `Fork` button at the top right of any page in this repository.\n\n#### Maintaining a fork\n\nWhen you first create your fork, it will be an exact copy of this repository.\nOver time, our docs will change as they are updated, but your fork won’t automatically stay up-to-date.\nHere are some ways to keep your fork in sync with this repo:\n\n##### Update through GitHub UI\n\n1. Navigate to your fork on GitHub\n2. Click `Sync fork` and then `Update branch`\n\n##### Update from your command line\n\nIn the terminal on your computer:\n\n1. Make sure you're on the main branch and then run `git checkout main`\n2. Fetch and merge the updates: `git pull upstream main`\n3. Push the updates back to your fork on GitHub: `git push origin main`\n\n##### Using the GitHub app\n\n1. Go to the [\"pull\" GitHub app page](https://github.com/apps/pull)\n2. Click `Install`\n3. Follow the instructions to select\n\n## Next Steps:\n\n- [Read the docs](https://docs.solidjs.com)\n- [Fork the docs](https://github.com/solidjs/solid-docs-next/fork)\n- [Raise an issue](https://github.com/solidjs/solid-docs-next/issues/new)\n- [Discuss the docs](https://discord.com/invite/solidjs)", "url": "https://github.com/solidjs/solid-docs/blob/HEAD/CONTRIBUTING.md", "metadata": { "path": "CONTRIBUTING.md", "repo": "solidjs/solid-docs", "repo_url": "https://github.com/solidjs/solid-docs.git", "size": 10987, "source_type": "github" }, "hash": "d5a023ecd4eea475738bcd244bd6cadb6257e89ec8dbb94efa9015f0cd0d678e", "timestamp": "2026-02-23T11:43:00.18578935+01:00" }