diff --git a/docs/FAQ.md b/docs/FAQ.md index 36d2702a21..7f8ac53a5e 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -1,24 +1,12 @@ -### I am new to GitHub and Open Source, where should I start? +### I am new to GitHub and Open Source. Where should I start? -Read our ["How to Contribute to Open Source Guide"](https://github.com/freeCodeCamp/how-to-contribute-to-open-source). It's a compresensive resource of first timer friendly projects and guidelines. +Read our ["How to Contribute to Open Source Guide"](https://github.com/freeCodeCamp/how-to-contribute-to-open-source). It's a comprehensive reference for first-timer-friendly projects. And it includes a lot of open source contribution tips. ### Can I translate freeCodeCamp's curriculum? -We will be kicking-off the localization efforts on freeCodeCamp starting with the **Chinese** first. +Yes. We will roll out the tools for translating freeCodeCamp's curriculum soon. -We intend to make the curriculum available in more languages, but can't commit to any deadlines yet. Several operational limits like staff, active contributors and server costs play a role in driving the internationalisation (i18n) efforts. - -We intend to start i18n efforts in these languages: Arabic, Portuguese, Russian and Spanish (in no particular order) after we have released the curriculum in Chinese. - -**Why are you focusing on Chinese curriculum first?** - -China is the largest demographic regions, in our non-native English speaking audience. Currently, we have hundreds of thousands of users using an old version of the platform. Focusing on the Chinese curriculum will give us an estimate of logistics involved in the i18n. - -We will focus on Latin America as the demographic region for Portuguese and Spanish. - -We do not have any plans for i18n to any other languages other than the above for the foreseeable future. - -We do not encourage you to work on i18n on the above languages. We may accept pull requests, without any expectation of any timelines on deployments. +Eventually, we intend to localize freeCodeCamp into several major world languages, starting with: Arabic, Chinese, Hindi, Portuguese, Russian, and Spanish. ### How can I report a new bug? @@ -26,19 +14,17 @@ If you think you've found a bug, first read the ["Help I've Found a Bug"](https: If you're confident it's a new bug, go ahead and create a new GitHub issue. Be sure to include as much information as possible so that we can reproduce the bug. We have a pre-defined issue template to help you through this. -Please note that any issues that seek coding help on a challenge will be closed. The issue tracker is strictly for codebase related issues and discussions. Whenever in doubt, you should [seek assistance on the forum](https://forum.freecodecamp.org) before making a report. +Please note that these GitHub issues are for codebase-related issues and discussions – not for getting help with learning to code. Whenever in doubt, you should [seek assistance on the forum](https://forum.freecodecamp.org) before creating a GitHub issue. ### How can I report a security issue? Please don't create GitHub issues for security issues. Instead, please send an email to `security@freecodecamp.org` and we'll look into it immediately. -### I am a student, can I or our team work on a feature for academic credits? +### I am a student. Can I work on a feature for academic credits? -Yes, sure. +Yes. Please note we are unable to commit to any timelines or paperwork that may be a requirement by your college or university. We receive many pull-requests and code contributions by volunteer developers, and we respect their time and efforts. Out of respect for all of our other contributors, we will not give any PR special priority just because it happens to be school-related. -While, we are open to all contributions, please note we are unable to commit to any timelines that may be a requirement at your college or university. We receive many pull-requests and code contributions by volunteer developers, and we respect their time and efforts. We will not be able to give any PR any special attention to be fair to all. - -We request you to plan ahead and work on a feature with this in mind. +We request you to plan ahead and work on code contributions with this in mind. ### What do these different labels that are tagged on issues mean? @@ -48,42 +34,37 @@ The code maintainers [triage](https://en.wikipedia.org/wiki/Software_bug#Bug_man You should go through [**`help wanted`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) or [**`first timers only`**](https://github.com/freeCodeCamp/freeCodeCamp/issues?q=is%3Aopen+is%3Aissue+label%3A%22first+timers+only%22) issues for a quick overview of what is available for you to work on. -> [!TIP] **`help wanted`** issues are up for grabs, and you do not need to seek permission before working on them. However, issues with the **`first timers only`** label are reserved for people that have not contributed to the freeCodeCamp codebase before. If these issues lack clarity on what needs to be done, feel free to ask questions in the comments. +> [!TIP] **`help wanted`** issues are up for grabs, and you do not need to seek permission before working on them. However, issues with the **`first timers only`** label are special issues that are designed for people who have not contributed to the freeCodeCamp codebase before. -### I found a typo, should I report an issue before I can make a pull request? +### I found a typo. Should I report an issue before I can make a pull request? -For typos and other wording changes, you can directly open pull requests without creating an issue first. Issues are more for discussing larger problems associated with code or structural aspects of the curriculum. +For typos and other wording changes, you can directly open pull requests without creating an issue first. Please be sure to mention details in the pull request description to help us understand and review your contribution – even if it's just a minor change. -However, please mention details, context etc. in the pull request's description area to help us understand and review your contribution even for minor changes. +Please do create an issue if you want to discuss bigger aspects of the codebase or curriculum. -### How do I get an issue assigned to me? +### How can I get an issue assigned to me? -We typically do not assign issues to anyone other than long-time contributors to avoid ambiguous no-shows. Instead, we follow the below policy to be fair to everyone: +We typically do not assign issues to anyone other than long-time contributors. Instead, we follow the below policy to be fair to everyone: -1. The first pull request for any issue is preferred to be merged. -2. In the case of multiple pull requests for the same issue, we give priority to the quality of the code in the pull requests. +1. We are most likely to merge the first pull request that addresses the issue. +2. In the case of multiple contributors opening a pull request for the same issue at around the same time, we will give priority to the pull request that best addresses the issue. Some of the things we consider: - Did you include tests? - Did you catch all usecases? - - Did you ensure all tests pass, and you confirmed everything works locally? -3. Finally, we favor pull requests which follow our recommended guidelines. + - Did you ensure all tests pass, and confirm everything works locally? +3. Finally, we give priority to pull requests which follow our recommended guidelines. - Did you follow the pull request checklist? - - Did you name your pull request title meaningfully? - -You do not need any permission for issues that are marked `help wanted` or `first timers only` as explained earlier. - -Follow the guidelines carefully and open a pull request. + - Did you give your pull request a meaningful title? ### I am stuck on something that is not included in this documentation. **Feel free to ask for help in:** - The `Contributors` category of [our community forum](https://forum.freecodecamp.org/c/contributors). -- The public `Contributors` [chat room on Gitter](https://gitter.im/FreeCodeCamp/Contributors). - The `#Contributors` channel on [our Discord community server](https://discord.gg/pFspAhS). -We are excited to help you contribute to any of the topics that you would like to work on. Feel free to ask us questions on the related issue threads, and we will be glad to clarify. Make sure you search for your query before posting a new one. +We are excited to help you contribute to any of the topics that you would like to work on. If you ask us questions on the related issue threads, we will be glad to clarify. Be sure to search for your question before posting a new one. -Be polite and patient. Our community of volunteers and moderators are always around to guide you through your queries. +Thanks in advance for being polite and patient. Remember – this community is run mainly by volunteers. **Additional Assistance:** diff --git a/docs/how-to-open-a-pull-request.md b/docs/how-to-open-a-pull-request.md index ab43499880..88dcc96a97 100644 --- a/docs/how-to-open-a-pull-request.md +++ b/docs/how-to-open-a-pull-request.md @@ -1,6 +1,6 @@ # How to open a Pull Request (PR) -A pull request enables you to send changes from your fork on GitHub to freeCodeCamp.org's main repository. Once you are done making changes to the code, or coding challenges you should follow these guidelines to send a PR. +A pull request (PR) enables you to send changes from your fork on GitHub to freeCodeCamp.org's main repository. Once you are done making changes to the code, you can follow these guidelines to open a PR. ## Prepare a good PR title @@ -73,7 +73,7 @@ Some examples of good PRs titles would be: Our moderators will now take a look and leave you feedback. Please be patient with the fellow moderators and respect their time. All pull requests are reviewed in due course. -If you need any assistance please discuss in the [contributors chat room](https://gitter.im/FreeCodeCamp/Contributors), we are more than happy to help you. +And as always, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [our Discord server](https://discord.gg/6vJYm9V). > [!TIP] > If you are to be contributing more pull requests, we recommend you read the [making changes and syncing](https://contribute.freecodecamp.org/#/how-to-setup-freecodecamp-locally?id=making-changes-locally) guidelines to avoid having to delete your fork. diff --git a/docs/how-to-setup-freecodecamp-locally.md b/docs/how-to-setup-freecodecamp-locally.md index f3428aa280..2ec32cdafe 100644 --- a/docs/how-to-setup-freecodecamp-locally.md +++ b/docs/how-to-setup-freecodecamp-locally.md @@ -1,19 +1,19 @@ Follow these guidelines for setting up freeCodeCamp locally on your system. This is highly recommended if you want to contribute regularly. -For some of the contribution workflows, you need to have freeCodeCamp running locally. For example, previewing coding challenges or debugging and fixing bugs in the codebase. +Some of these contribution workflows – like fixing bugs in the codebase or curriculum – need you to run freeCodeCamp locally on your computer. > [!TIP] -> If you are not interested in setting up freeCodeCamp locally consider using Gitpod, a free online dev environment. +> If you are not interested in setting up freeCodeCamp locally, consider using Gitpod, a free online dev environment. > > [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/freeCodeCamp/freeCodeCamp) > > (Starts a ready-to-code dev environment for freeCodeCamp in your browser.) -## Prepare your local machine +### How to prepare your local machine Start by installing the prerequisite software for your operating system. -We primarily support development on **\*nix** systems. Our staff and community contributors regularly work with the codebase using tools installed on Ubuntu and macOS. +We primarily support development on Linux and Unix-based systems. Our staff and community contributors regularly work with the codebase using tools installed on Ubuntu and macOS. We also support Windows 10 via WSL2, which you can prepare by [reading this guide](/how-to-setup-wsl). @@ -151,7 +151,7 @@ Now that you have a local copy of freeCodeCamp, you can follow these instruction If you do run into issues, first perform a web search for your issue and see if it has already been answered. If you cannot find a solution, please search our [GitHub issues](https://github.com/freeCodeCamp/freeCodeCamp/issues) page for a solution and report the issue if it has not yet been reported. -And as always, feel free to hop on to our [Contributors Chat room on Gitter](https://gitter.im/FreeCodeCamp/Contributors) or [our Discord server](https://discord.gg/6vJYm9V), for quick queries. +And as always, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [our Discord server](https://discord.gg/6vJYm9V). > [!TIP] > You may skip running freeCodeCamp locally if you are simply editing files. For instance, performing a `rebase`, or resolving `merge` conflicts. @@ -550,6 +550,6 @@ The first time setup can take a while depending on your network bandwidth. Be pa ## Getting Help -If you are stuck and need help, let us know by asking in the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or the [Contributors chat room](https://gitter.im/FreeCodeCamp/Contributors) on Gitter. +If you are stuck and need help, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [our Discord server](https://discord.gg/6vJYm9V). There might be an error in the console of your browser or in Bash / Terminal / Command Line that will help identify the problem. Provide this error message in your problem description so others can more easily identify the issue and help you find a resolution. diff --git a/docs/how-to-work-on-coding-challenges.md b/docs/how-to-work-on-coding-challenges.md index e68d9bd9d6..c576e8db97 100644 --- a/docs/how-to-work-on-coding-challenges.md +++ b/docs/how-to-work-on-coding-challenges.md @@ -2,11 +2,15 @@ Our goal is to develop a fun and clear interactive learning experience. -Designing interactive coding challenges is difficult. It would be much easier to write a lengthy explanation or to create a video tutorial, and there's a place for those on Medium and YouTube. However, for our core curriculum, we're sticking with what works best for most people - a fully interactive, video game-like experience. +Designing interactive coding challenges is difficult. It would be much easier to write a lengthy explanation or to create a video tutorial. But for our core curriculum, we're sticking with what works best for most people - a fully interactive, video game-like experience. We want campers to achieve a flow state. We want them to build momentum and blast through our curriculum with as few snags as possible. We want them to go into the projects with confidence and gain a wide exposure to programming concepts. -Creating these challenges requires immense creativity and attention to detail. There's plenty of help available. You'll have support from a whole team of contributors to whom you can bounce ideas off and demo your challenges. Stay active in the [contributors room](https://gitter.im/freecodecamp/contributors) and ask lots of questions. +Note that for Version 7.0 of the freeCodeCamp curriculum, we are moving toward [an entirely project-focused model with a lot more repetition](https://www.freecodecamp.org/news/python-curriculum-is-live/). + +Creating these challenges requires immense creativity and attention to detail. There's plenty of help available. You'll have support from a whole team of contributors to whom you can bounce ideas off and demo your challenges. + +And as always, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [our Discord server](https://discord.gg/6vJYm9V). With your help we can design an interactive coding curriculum that will help millions of people learn to code for years to come. diff --git a/docs/index.md b/docs/index.md index 2f38911dc7..7084bdf658 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,46 +1,44 @@ -The [freeCodeCamp.org](https://freecodecamp.org) community is possible thanks to thousands of kind volunteers like you. We welcome any and all contributions to the community and are excited to welcome you aboard. +The [freeCodeCamp.org](https://freecodecamp.org) community is possible thanks to thousands of kind volunteers like you. If you want to contribute your time and expertise, we would be excited to welcome you aboard. > [!NOTE] -> Before you proceed, please take a quick 2 minutes to read our [Code of Conduct](https://www.freecodecamp.org/code-of-conduct). We enforce it strictly across our community. We want contributing to freeCodeCamp.org to be a safe and inclusive experience for everyone. +> Before you proceed, please take a quick 2 minutes to read our [Code of Conduct](https://www.freecodecamp.org/code-of-conduct). We strictly enforce it across our community so that contributing to freeCodeCamp.org is a safe, inclusive experience for everyone. Happy contributing. You are welcome to: -- Create, update and fix bugs in our [coding challenges](#coding-challenges). +- Create, update and fix bugs in our [curriculum](#curriculum). - Help us fix bugs in freeCodeCamp.org's [learning platform](#learning-platform). - _(Coming Soon)_ Help us translate freeCodeCamp.org to world languages. -Have questions? Head over to [these FAQs](/FAQ.md) where we answer some common queries about contributing. +We answer the most common questions about contributing [in our contributor FAQ](/FAQ.md). -## Coding Challenges +## Curriculum -All our coding challenges are curated by the community, bringing in expert knowledge from volunteers like you. +Our curriculum is curated by the global freeCodeCamp community. This way, we are able to incorporate expert knowledge from volunteers like you. -You can help expand them and make their wording better. You can also update the user stories to explain the concept better or remove redundant ones and improve the challenge tests to make them more accurately test people's code. +You can help expand and improve the curriculum. You can also update project user stories to better-explain concepts. And you can improve our automated tests so that we can more accurately test people's code. -**If you're interested in improving these coding challenges, here's [how to work on coding challenges](how-to-work-on-coding-challenges.md).** +**If you're interested in improving our curriculum, here's [how to contribute to the curriculum](how-to-work-on-coding-challenges.md).** ## Learning Platform -Our learning platform runs on a modern JavaScript stack. It has various components, tools, and libraries, including but not limited to, Node.js, MongoDB, LoopBack, OAuth 2.0, React, Gatsby, Webpack, and more. +Our learning platform runs on a modern JavaScript stack. It has various components, tools, and libraries. These include Node.js, MongoDB, OAuth 2.0, React, Gatsby, Webpack, and more. -Broadly, +Broadly, we use -- We have a Node.js based API server. -- A set of React-based client applications. -- A script that we use to evaluate our front-end projects. +- a Node.js based API server +- a set of React-based client applications +- and testing scripts to evaluate camper-submitted curriculum projects. -Contributing to this requires some understanding of APIs, ES6 Syntax, and a lot of curiosity. +If you want to productively contribute to the curriculum, we recommend some familiarity with these tools. -Essentially, we expect basic familiarity with some of the aforementioned technologies, tools, and libraries. With that being said, you are not required to be an expert on them to contribute. +If you want to help us improve our codebase... -**If you want to help us improve our codebase, you can either use Gitpod, a free online dev environment** +**you can either use Gitpod, a free online dev environment that starts a ready-to-code dev environment for freeCodeCamp in your browser.** [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/freeCodeCamp/freeCodeCamp) -(Starts a ready-to-code dev environment for freeCodeCamp in your browser.) +Or you can... -OR - -**you can [set up freeCodeCamp locally](how-to-setup-freecodecamp-locally.md) on your machine.** +**[set up freeCodeCamp locally](how-to-setup-freecodecamp-locally.md) on your machine.** \ No newline at end of file diff --git a/docs/moderator-handbook.md b/docs/moderator-handbook.md index 8a45641863..be0d310a6a 100644 --- a/docs/moderator-handbook.md +++ b/docs/moderator-handbook.md @@ -452,7 +452,7 @@ Thanks again! 😊 --- -> If you have any questions, feel free to reach out through [Gitter](https://gitter.im/FreeCodeCamp/Contributors) or by commenting below. 💬 +> If you have any questions, feel free to ask questions on the ['Contributors' category on our forum](https://forum.freecodecamp.org/c/contributors) or [our Discord server](https://discord.gg/6vJYm9V). ``` ### Closing invalid pull requests