diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 93b80fe5d36..185b9adc04a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,89 +35,22 @@ Please be patient. Sooner or later, somebody will answer. ## What should I know before I get started? -FreeSewing is not a small open source project -- with a dozen repositories and more than 60 packages. +Most of FreeSewing's source code lives in [our monorepo](https://github.com/freesewing/freesewing). -When you initially consider contributing to FreeSewing, you might be unsure about which of the repositories implements the functionality you want to change or report a bug for. -This section should help you with that. +There are some exceptions: -### FreeSewing repositories - -The most important repositories are these: - - - [`freesewing`](https://github.com/freesewing/freesewing): Our monorepo holding all our NPM packages. This is also where we triage all issues - - [`freesewing.org`](https://github.com/freesewing/freesewing.org): The respository holding the source code for freesewing.org, our website for makers - - [`freesewing.dev`](https://github.com/freesewing/freesewing.dev): The respository holding the source code for freesewing.dev, our website for developers - - [`markdown`](https://github.com/freesewing/markdown): The repository holding our markdown (and MDX) content for both our websites - - [`backend`](https://github.com/freesewing/backend): The repository holding the source code for our backend - [`svgtopdf`](https://github.com/freesewing/svgtopdf): The repository holding the source code for our on-demand tiler backend - [`tile`](https://github.com/freesewing/tile): The repository holding the source code for our command-line tiler - - -We are gradually placing more and more content into our monorepo to minimize overheads. - -This is also why we prefer that you [create all issues in our monorepo](https://github.com/freesewing/freesewing/issues/new/choose). - - - ### FreeSewing packages We publish a lot of JavaScript packages on NPM. You can find the full list [in the `packages` folder of our monorepo](https://github.com/freesewing/freesewing/tree/develop/packages). ## How Can I Contribute? -### Showcase our patterns +This file is mostly geared towards code contributors, but there's plenty of other ways you can contribute. -Anytime somebody has made one of our patterns, we like to showcase it on [freesewing.org](https://freesewing.org/showcase/). - -Unpublished showcases are tracked as [GitHub issues](https://guides.github.com/features/issues/). -Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=&labels=%F0%9F%91%8D+good+first+issue%2C+%F0%9F%93%B8+showcase%2C+%F0%9F%A4%97+community&template=showcase-template.md&title=Create+showcase+from+this+content) when you've made one of our patterns, or have came across pictures from another maker who did. - -To make sure we can add the showcase, provide the following information: - -* **A link to the content** like an Instragram post, or blog post, or anything. You can also attach pictures to the issue itself. -* **Permission to repost**. If you're the original author, please mention that we can repost the images. If you are not the original author, either mention who is (good) or have them leave a comment giving permission to repost the images (best). -* **Include the author's FreeSewing username**. We need this to link the showcase to the author so they will show up on the author's profile page. - -### Triage issues - -Triaging issues is a great way to get involved FreeSewing. You can do tasks such as: - - - Making sure issues are properly labeled - - Ensuring they have a good title that explains the issue in brief - - Assigning issues to people to make sure they are tended to - - Keeping an eye on stale issues, and either updating or closing them - - Assigning issues to milestones so we can plan our releases - -All FreeSewing contributors have triage permissions that allows them to do this. -If you don't have the rights, or bump into any issues, [reach out to us via chat](https://discord.freesewing.org). - -### Reporting Bugs - -Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/). -Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=&labels=%F0%9F%90%9B+bug&template=bug-report.md&title=Bug+report) if you've found one. - -Explain the problem and include additional details to help maintainers reproduce the problem: - -* **Use a clear and descriptive title** for the issue to identify the problem. -* **Describe the exact steps which reproduce the problem** in as many details as possible. -* **Include relevant information** such as your username on the site, or the person you draften a pattern for. - -Provide more context by answering these questions: - -* **Did the problem start happening recently** (e.g. it worked fine before but since the latest update it doesn't) -* **Can you reliably reproduce the issue?** If not, provide details about how often the problem happens and under which conditions it normally happens. - -### Suggesting Enhancements - -This section guides you through submitting an enhancement or feature request for FreeSewing, including completely new features and minor improvements to existing functionality. -Following these guidelines helps maintainers and the community understand your suggestion :pencil: and find related suggestions :mag_right:. - -Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com/features/issues/). -Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=&labels=%F0%9F%92%8E+enhancement&template=feature-request.md&title=Feature+request) if you want to submit one. - -* **Use a clear and descriptive title** for the issue to identify the suggestion. -* **Explain why this enhancement would be useful** to other FreeSewing users. +As it happens, we keep a list of suggestions at: https://freesewing.dev/howtos/ways-to-contribute ### Your first contribution