# Frequently Asked Questions

Answers to common questions.

## 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 comprehensive reference for first-timer-friendly projects. And it includes a lot of open-source contribution tips.

## What do I need to know to contribute to the codebase?

freeCodeCamp runs on a modern JavaScript stack. If you're interested in contributing to our codebase, you will need some familiarity with JavaScript and some of the technologies we use like Node.js, MongoDB, OAuth 2.0, React, Gatsby, and Webpack.

## Can I translate freeCodeCamp's resources?

Yes - You can contribute to any of the 30+ languages we have enabled on our translation platform.

We have user-contributed translations live in some languages. We intend to localize freeCodeCamp into several major world languages. You can read all about this in our [announcement here](https://www.freecodecamp.org/news/help-translate-freecodecamp-language/).

If you are interested in contributing to translations please make sure you [read this guide](how-to-translate-files.md) first.

## Can I contribute articles to freeCodeCamp News or videos to freeCodeCamp's YouTube channel?

Yes - you can contribute to our publication blog and YouTube channel.

If you're interested in writing articles for freeCodeCamp News, please visit this [publication guide](https://www.freecodecamp.org/news/how-to-write-for-freecodecamp/). In addition, please read our [style guide](https://www.freecodecamp.org/news/developer-news-style-guide/) as this will help you write stronger and more effective articles.

To help us make educational videos for our YouTube channel, you can follow the [YouTube channel guide here](https://www.freecodecamp.org/news/how-to-contribute-to-the-freecodecamp-community-youtube-channel-b86bce4c865/).

## How can I report a new bug?

If you think you've found a bug, first read the ["How to Report a Bug"](https://www.freecodecamp.org/news/how-to-report-a-bug-to-freecodecamp/) article and follow its instructions.

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 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 [follow our security policy](https://contribute.freecodecamp.org/#/security).

## I am a student. Can I work on a feature for academic credits?

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 from 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.

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?

The code maintainers [triage](https://en.wikipedia.org/wiki/Software_bug#Bug_management) issues and pull requests based on their priority, severity, and other factors. You can [find a complete glossary of their meanings here](https://github.com/freecodecamp/freecodecamp/labels).

## Where do I start if I want to work on an issue?

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. 然而，具有 **`first timers only`** 标签的 issue 是特别为以前没有为 freeCodeCodeCamp 代码库贡献的人设计的任务。

## 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. 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.

Please do create an issue if you want to discuss bigger aspects of the codebase or curriculum.

## How can I get an issue assigned to me?

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. 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?
   - 你是否考虑了所有用例？
   - 你是否确保通过所有测试，并确认所有东西在本地正常运行？
3. Finally, we give priority to pull requests which follow our recommended guidelines.
   - Did you follow the pull request checklist?
   - Did you give your pull request a meaningful title?

## I am interested in being a moderator at freeCodeCamp. Where should I start?

Our community moderators are our heroes. Their voluntary contributions make freeCodeCamp a safe and welcoming community.

First and foremost, we would need you to be an active participant in the community, and live by our [code of conduct](https://www.freecodecamp.org/news/code-of-conduct/) (not just enforce it).

Here are some recommended paths for some of our platforms:

- To be a **Discord/Chat** moderator, have an active presence in our chat and have positive engagements with others, while also learning and practicing how to deal with potential conflicts that may arise.
- To be a **Forum** moderator, similar to a chat moderator, have an active presence and engage with other forum posters, supporting others in their learning journey, and even giving feedback when asked. Take a look at [The Subforum Leader Handbook](https://forum.freecodecamp.org/t/the-subforum-leader-handbook/326326) for more information.
- To be a **GitHub** moderator, help process GitHub issues that are brought up to see if they are valid and (ideally) try to propose solutions for these issues to be picked up by others (or yourself).

Altogether, be respectful to others. We are humans from all around the world. With that in mind, please also consider using encouraging or supportive language and be mindful of cross-cultural communication.

If you practice the above **consistently for a while** and our fellow moderator members recommend you, a staff member will reach out and onboard you to the moderators' team. Open source work is voluntary work and our time is limited. We acknowledge that this is probably true in your case as well. So we emphasize being **consistent** rather than engaging in the community 24/7.

Take a look at our [Moderator Handbook](moderator-handbook.md) for a more exhaustive list of other responsibilities and expectations we have of our moderators.

## 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 `#Contributors` channel on [our chat server](https://discord.gg/PRyKn3Vbay).

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.

Thanks in advance for being polite and patient. Remember – this community is run mainly by volunteers.

## Additional Assistance

If you have queries about the stack, architecture of the codebase, translations, or anything else, feel free to reach out to our staff team [on the forum](https://forum.freecodecamp.org/g/team).

**You can email our developer staff at: `dev[at]freecodecamp.org`**
