MDN Web Docs
Tap a star to rate
What MDN Web Docs is
MDN Web Docs is Mozilla's free reference and learning site for web developers. For a learner it does two jobs: it is the reference documentation for HTML, CSS, JavaScript and the browser's Web APIs, and it has its own structured curriculum, "Learn web development", that takes a beginner from installing a code editor to building and deploying web apps. Everything is free to read without an account. The homepage tagline is "Resources for Developers, by Developers", and it says the site has been "Documenting CSS, HTML, and JavaScript, since 2005." A featured blog post on the homepage marks "20 years of MDN".
MDN sits within the Mozilla Project, which Mozilla's About page describes as "a global community of people who believe that openness, innovation, and opportunity are key to the continued health of the internet", working together "since 1998". The organizations under that umbrella include the Mozilla Foundation and Mozilla Corporation, which makes Firefox. Mozilla's product menu lists MDN Plus alongside Firefox and Thunderbird.
The Learn web development curriculum
The curriculum is the part of MDN most relevant to someone learning to code. It is split into Getting started modules, Core modules, Extension modules and an MDN Curriculum overview, and the site menu also links a Frontend developer course.
The Getting started modules cover the ground most courses skip: environment setup (installing software, code editors, dealing with files, the command line), a first website from content to publishing, how the web and browsers work, and soft skills such as research, teamwork, workflows and finding a job.
The Core modules are the backbone. Structuring content with HTML runs from basic syntax and metadata through links, images, video and audio, tables and forms to debugging HTML. CSS styling basics covers selectors, the box model, the cascade, values and units, sizing, backgrounds and borders, and overflow, followed by CSS text styling and a CSS layout module on floats, positioning, flexbox, grid and responsive design with media queries. Dynamic scripting with JavaScript then teaches variables, numbers, strings, arrays, conditionals, loops, functions, events, objects, DOM scripting, network requests, JSON and debugging. Further core modules cover JavaScript frameworks (with a React getting started sequence and a React to-do app), accessibility including WAI-ARIA, design for developers and version control.
The Extension modules go further: advanced JavaScript objects and classes, client-side web APIs, asynchronous JavaScript with promises and workers, web forms in depth, client-side tooling and deployment, server-side websites with full Django (Python) and Express (Node.js) tutorials that build a local library app, web performance, and cross-browser testing.
How a module teaches
Each module page sets out prerequisites and an ordered list of tutorials. The JavaScript module, for example, says you need no previous JavaScript knowledge but "should at least know HTML and the basic fundamentals of CSS", and suggests online editors for anyone on a device where they cannot create files. Its first practical tutorial builds a "Guess the number" game step by step, and the next one teaches how to find and fix the errors you probably made.
Practice is built in at two levels. Challenge articles ask you to apply a block of lessons to a small project: a silly story generator, a JavaScript image gallery, and a house data UI that fetches JSON, filters it from form controls and renders the results. The HTML and CSS modules have their own challenges, such as a bird watching site, a planet data table, a feedback form and a mobile-first layout. Between tutorials, MDN places "Test your skills" articles "to check whether you have retained the most important information before you move on". This is self-study: there is no instructor, no account-based progress tracking and no certificate described on these pages. The sidebar also links Resources for educators who want to use the curriculum in a classroom.
Reference documentation and tools
Beyond the curriculum, MDN is the reference a working developer keeps open. The menus cover the HTML reference (elements, global attributes), CSS reference (properties, selectors, at-rules) and guides on the box model, animations and flexbox, a CSS layout cookbook, the JavaScript reference and guides on control flow, loops, objects and classes, and Web API guides such as the Fetch, History and Web Speech APIs. The JavaScript Guide goes into deeper topics such as inheritance and the prototype chain, equality comparisons, closures and memory management. Other sections cover accessibility, HTTP, web extensions, WebAssembly and WebDriver.
MDN also offers browser-based tools: a Playground for trying code, the HTTP Observatory, generators for border-image, border-radius, box-shadow and shapes, a color format converter and a color mixer. A recent homepage post introduces an MDN MCP server, which the post says "brings MDN's documentation and browser compatibility data directly into your editor or IDE".
A paid video option through a partner
For learners who prefer video, MDN points to a partner. The menu says "Check out the video course from Scrimba, our partner", and the JavaScript module describes Scrimba's Learn JavaScript course as teaching JavaScript "through solving 140+ interactive coding challenges, building projects including a game, a browser extension, and even a mobile app". It adds that "The first 40 lessons are free, and the complete course is available for a small one-time payment." That course is Scrimba's product; MDN's own material stays free.
Languages and community
The site is available in English, German, Spanish, French, Japanese, Korean, Brazilian Portuguese, Russian and simplified and traditional Chinese, and the homepage shows recent commits to its translated content. Content is written in the open: every page links "View this page on GitHub" and "Report a problem with this content", shows when it was last modified, and the footer lists writing guidelines, community resources and an MDN Discord. Content is available under a Creative Commons license.
Who it suits
MDN suits self-taught learners who want a thorough, free path through HTML, CSS and JavaScript and are comfortable learning from text, students whose teachers use it as course material, and working developers who need an accurate reference. Its depth, from first file to Django and Express back ends, is unusual for a free resource. It suits less well someone who wants a video-led course, a mentor or a formal credential to show an employer, since the curriculum is self-directed reading with built-in exercises; the Scrimba partnership is the route MDN itself suggests for video.