Contributing to MDN

MDN Web Docs needs your help! We have a large number of typos to fix, examples to write, bugs to fix, people to talk to, and more, and the number is growing as more people start using the site. This page outlines what you can do to help.

Note: If you haven't contributed to MDN previously, the Getting Started guide explains the process in four simple steps. Good news, you're already on step 2: "Picking a task to complete."!

What can I do to help?

There are multiple avenues you can take to contribute to MDN depending on your skillset and interests. Along with each task we provide a short description and an approximate time that each type of task typically takes.

If you are not sure what to do, you are always welcome to ask for help.

Primary contribution types

The links in this section lead to detailed guides explaining how to do a particular contribution task that we are most interested in getting community help with, either because they are a critical function, and/or because they have a large backlog associated with them. Please consider helping out with these tasks before you consider contributing in other ways.

Tasks Description Skillset required
Fixing MDN content bugs Our content repo is where people submit issues to report problems found with MDN docs. We get a lot of content bugs, and any help you can give in fixing them would be much appreciated.
  • Knowledge of the web technologies you choose to help with (e.g. JavaScript, CSS).
  • A reasonable understanding of the English language (don't worry if your English is not perfect; we can help you with it).
Reviewing MDN edits People submit pull requests on our content repo all the time to update MDN content, and we need help reviewing them. Head over to our REVIEWING.md page to find out how the reviewing process works, and how you can get involved.
  • Knowledge of the web technologies you choose to help with (e.g. JavaScript, CSS).
  • A reasonable understanding of the English language (don't worry if your English is not perfect; we can help you with it).
Help beginners to learn on MDN Our Learn web development pages get over a million views per month and have active forums where people go to ask for general help, or request that their assessments be marked. We'd love some help with answering posts and growing our learning community.
  • Knowledge of the web technologies you choose to help with (e.g. JavaScript, CSS).
  • Enthusiasm for explaining technical topics and helping beginners learn to code.
  • Reasonable proficiency with the English language; it really doesn't need to be perfect.

We will add more tasks here as time goes on.

Priority ratings

You can also look at priority ratings to give you an idea of what the most important work is to work on — we've started giving content bug issues labels of P0, P1, P2, P3, and P4 to signify how important they are, with lower numbers being more important than higher numbers.

These are figured out during the regular MDN bug triage process, based on the MDN documentation priority list.

Other task types

If our main priorities listed above don't interest you, you can find a number of other, more general task types to get involved with below, split up by skillset.

If you are more interested in words, you could do the following:

If you are more interested in code, you could try your hand at the following:

If you are interested in words and code, you could try your hand at the following:

Note: If you have found something that is incorrect on MDN but you're not sure how to fix it, you can report problems by filing a documentation issue. Please give the issue a descriptive title. (It's not helpful to say "Dead link" without saying where you found the link).

Other useful pages

Basic etiquette for open source projects
If you've not worked on an open source project (OSP) before, it is a good idea to read this article before starting to contribute to MDN (or other open source projects). There are a few best practices to adopt that will help ensure that you and the other project contributors feel valued and safe, and stay productive.
Documentation processes
The MDN documentation project is enormous; there are a vast number of technologies we cover through the assistance of hundreds of contributors from across the world. To help us bring order to chaos, we have standard processes to follow when working on specific documentation-related tasks. Here you'll find guides to those processes.
Fixing MDN content bugs
Problems with MDN docs are reported as content repo issues. This article helps you find the best issues to work on, based on your expertise and how much time you have available, and outlines the main steps to fixing them.
Getting started on MDN
We are an open community of developers building resources for a better Web, regardless of brand, browser, or platform. Anyone can contribute, and each person who does contribute makes us stronger. Together we can continue to drive innovation on the Web to serve the greater good. It starts here, with you.
GitHub best practices for MDN
This page contains best practices for working with GitHub to contribute to MDN, mainly centered around how to work with issues.
GitHub cheatsheet
This article provides a quick reference to the essential commands you'll need when using Git and GitHub to contribute to MDN. If you are new to these tools and need a helping hand, our GitHub for complete beginners tutorial teaches the basics.
GitHub for complete beginners
Git and GitHub are challenging tools to learn and master, but with a few simple commands and some good advice, you should be able to do enough to start contributing to MDN without too much trouble. The aim of this article is not to help you master Git or GitHub, but to give you just enough to be productive with it at a basic level and contribute to MDN.
Help beginners to learn on MDN!
Our Learn web development pages get over a million views per month, and have active forums where people go to ask for general help, or request that their assessments be marked. We'd love some help with answering posts, and growing our learning community.
Localizing MDN
Since December 14th 2020, MDN has been running on the new GitHub-based Yari platform. This has a lot of advantages for MDN, but we've needed to make radical changes to the way in which we handle localization. This is because we've ended up with a lot of unmaintained and out-of-date content in our non-en-US locales, and we want to manage it better in the future.
Markdown in MDN
This page describes how we use Markdown to write documentation on MDN. We have chosen GitHub-Flavored Markdown (GFM) as a baseline, and added some extensions to support some of the things we need to do on MDN that aren't readily supported in GFM.
MDN contribution changelog
This document provides a record of MDN content processes, constructs, and best practices that have changed, and when they changed. It is useful to allow regular contributors to check in and see what has changed about the process of creating content for MDN.
MDN documentation priority list
This document defines the different priority tiers on MDN, and states what documentation topics exist inside each tier — we are calling them Tier 1 and Tier 2.
MDN web docs: How-to guides
These articles provide step-by-step guides to accomplishing specific goals when contributing to MDN.
Send feedback about MDN Web Docs
Welcome to MDN Web Docs! If you have suggestions for, or are having problems using the MDN Web Docs, this is the right place to be. The very fact that you're interested in offering feedback makes you even more a part of the Mozilla community, and we thank you in advance for your interest.
Where is everything on MDN? A guide to our repos
MDN is a complex project with lots of moving parts. Contributing to the site is easy to begin with if you have a bit of GitHub knowledge and are starting out on some simple typo fixes or code snippet improvements. However, when you start making more significant contributions such as adding entirely new pages, you'll notice that there are quite a few bits of the content that aren't stored in the page sources and instead come from somewhere else.