1Contributing to Mozilla projects 2================================ 3 4This page is here to help you get from "I want to build Firefox" 5to "I'm building my own Firefox" to "I can contribute to Firefox". 6So if you'd like to help Mozilla build the best web browsers in the 7world, you're in the right place. 8 9.. rubric:: Need help? 10 :name: Need_help 11 12The Mozilla community prides itself on being an open, accessible, and 13friendly community for new participants. If you have any difficulties 14getting involved or finding answers to your questions, please `come and 15ask your questions in our 16chatroom <https://chat.mozilla.org/#/room/#introduction:mozilla.org>`_, 17where we can help you get started. 18 19We know even before you start contributing that getting set up to work 20on Firefox and finding a bug that's a good fit for your skills can be a 21challenge, and we're always looking for ways to improve this process: making 22Mozilla more open, accessible, and easier to participate with. If you're 23having any trouble following this documentation, or hit a barrier you 24can't get around, please join us in the the Introduction room on Matrix 25or contact Mike Hoye directly at mhoye@mozilla.com. 26 27What skills do I need? 28---------------------- 29 30Mozilla maintains small and large projects and we are thrilled to have contributors with 31very diverse skills: 32 33- If you know **C++,** **Rust,** **JavaScript,** **HTML** or **CSS**, 34 you can :ref:`contribute to the core layers <Firefox Contributors' Quick Reference>` of 35 Firefox and many other Mozilla projects. 36- If you know **Rust**, you can also contribute to the `Rust programming 37 language <https://github.com/rust-lang/rust>`_ itself, numerous crates like `grcov <https://github.com/mozilla/grcov/>`_ 38 or `Servo <https://servo.org/>`_, the web browser engine designed for parallelism and safety. 39- If you know **Kotlin**, you can contribute to `Firefox 40 for Android <https://github.com/mozilla-mobile/fenix>`_ (code name: 41 "Fenix"). 42- If you know **Swift**, you can contribute to `Firefox for 43 iOS <https://github.com/mozilla-mobile/firefox-ios>`_ and `Firefox 44 Focus for iOS <https://github.com/mozilla-mobile/focus-ios>`_. 45- If you know **C++**, you can contribute to our `VPN client <https://github.com/mozilla-mobile/mozilla-vpn-client>`_. 46- If you know **Python**, you can contribute to our web services, 47 including Firefox Sync and Firefox Accounts. 48- If you know **Make**, **shell**, **Perl**, or **Python**, you can 49 contribute to our build systems, release engineering, and automation. 50- If you know **Go** or **JavaScript**, you can contribute to `TaskCluster 51 <https://github.com/taskcluster/taskcluster>`_ our CI infrastructure. 52- If you know **C**, you can contribute to `NSS <https://developer.mozilla.org/docs/Mozilla/Projects/NSS>`_, 53 `Opus <https://opus-codec.org/>`_, and `Daala <https://wiki.xiph.org/Daala>`_. 54- There are even many ways to contribute to the Mozilla mission without 55 programming. If getting involved in design, support, translation, 56 testing, or other types of contributions sparks your interest please 57 see the `Volunteer Opportunities 58 wiki <https://contribute.mozilla.org>`_ or the `Mozilla 59 community <https://mozilla.community/>`_ site. 60 61Perhaps you do not know programming yet, but you want to start learning? 62There are `plenty of 63resources <https://developer.mozilla.org/learn>`_ available on 64the MDN Web Docs! 65