Welcome to the MDN learning area. This set of articles aims to provide complete beginners to web development with all that they need to start coding websites.

The aim of this area of MDN is not to take you from "beginner" to "expert" but to take you from "beginner" to "comfortable." From there, you should be able to start making your way, learning from the rest of MDN, and other intermediate to advanced resources that assume a lot of previous knowledge.

If you are a complete beginner, web development can be challenging — we will hold your hand and provide enough detail for you to feel comfortable and learn the topics properly. You should feel at home whether you are a student learning web development (on your own or as part of a class), a teacher looking for class materials, a hobbyist, or someone who just wants to understand more about how web technologies work.

What's new?

The content in the learning area is being added to regularly. We have started keeping Learning area release notes to show what has changed — keep checking back frequently!

If you have questions regarding topics you'd like to see covered or feel are missing, drop us a message on our Discourse forum.

Looking to become a front-end web developer? We have put together a course that includes all the essential information you need to work towards your goal. Get started

Where to start

Note: Our glossary provides terminology definitions. Besides, if you have a specific question about web development, our Common questions section may have something to help you.

Random glossary entry Ruby Ruby is an open-source programming language. In a Web context, Ruby is often used server-side with the Ruby On Rails (ROR) framework to produce websites/apps.

Topics covered

The following is a list of all the topics we cover in the MDN learning area.

Getting our code examples

The code examples you'll encounter in the Learning Area are all available on GitHub. If you want to copy them all to your computer, the easiest way is to download a ZIP of the latest master code branch.

If you prefer to copy the repo in a more flexible way that allows for automatic updates, you can follow the more complex instructions:

Install Git on your machine. This is the underlying version control system software that GitHub works on top of. Open your computer's command prompt (Windows) or terminal (Linux, macOS). To copy the learning area repo to a folder called learning-area in the current location your command prompt/terminal is pointing to, use the following command: git clone https://github.com/mdn/learning-area You can now enter the directory and find the files you are after (either using your Finder/File Explorer or the cd command).

You can update the learning-area repository with any changes made to the master version on GitHub with the following steps:

In your command prompt/terminal, go inside the learning-area directory using cd . For example, if you were in the parent directory: cd learning-area Update the repository using the following command: git pull

If you want to get in touch with us about anything, the best way is to drop us a message on our Discourse forum. We'd like to hear from you about anything you think is wrong or missing on the site, requests for new learning topics, requests for help with items you don't understand, or any other questions or concerns.

If you're interested in helping develop/improve the content, take a look at how you can help and get in touch! We are more than happy to talk to you, whether you are a learner, teacher, experienced web developer, or someone else interested in helping to improve the learning experience.

See also