1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
---
title: Guia do desenvolvedor
slug: Mozilla/Developer_guide
translation_of: Mozilla/Developer_guide
original_slug: Guia_do_desenvolvedor
---
<p><span class="seoSummary">There are lots of ways to contribute to the Mozilla project: coding, testing, improving the build process and tools, or contributing to the documentation. This guide provides information that will not only help you get started as a Mozilla contributor, but that you'll find useful to refer to even if you are already an experienced contributor.</span></p>
<div class="row topicpage-table">
<div class="section">
<h2 class="Documentation" id="Documentation_topics">Documentation topics</h2>
<dl>
<dt><a href="/en-US/docs/Introduction" title="Introduction">Getting Started</a></dt>
<dd>A step-by-step beginner's guide to getting involved with Mozilla.</dd>
<dt><a href="/en-US/docs/Mozilla/Developer_guide/Articles_for_new_developers">For new Mozilla developers</a></dt>
<dd>A directory of articles which are particularly helpful for new Mozilla developers.</dd>
</dl>
<dl>
<dt><a class="internal" href="/en-US/docs/Developer_Guide/Source_Code" title="en-US/docs/Developer_Guide/Source_Code">Working with Mozilla Source Code</a></dt>
<dd>A code overview, how to get the code, and the coding style guide.</dd>
<dt><a class="internal" href="/en-US/docs/Developer_Guide/Build_Instructions" title="en-US/docs/Developer_Guide/Build_Instructions">Build Instructions</a></dt>
<dd>How to build Firefox, Thunderbird, SeaMonkey, or other Mozilla applications.</dd>
<dt><a class="internal" href="/en-US/docs/Developer_Guide/Editor_Configuration" title="en-US/docs/Developer_Guide/Editor_Configuration">Editor Configuration</a></dt>
<dd>Tips on setting up your favorite IDE or text editor to work with Mozilla projects.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Development_process_overview" title="en-US/docs/Developer Guide/Development process overview">Development process overview</a></dt>
<dd>An overview of the entire Mozilla development process.</dd>
<dt><a href="/en-US/docs/Mozilla/Multiple_Firefox_Profiles" title="en-US/docs/Mozilla/Multiple_Firefox_Profiles">Managing multiple profiles</a></dt>
<dd>When working with prerelease versions of Firefox, it's often helpful to have multiple Firefox profiles, such as one for each channel, or for different kinds of testing.</dd>
<dt><a class="internal" href="/en-US/docs/Mozilla_automated_testing" title="en-US/docs/Mozilla automated testing">Automated Testing</a></dt>
<dd>How to run Mozilla's automated tests, and how to write new tests.</dd>
<dt><a class="internal" href="/en-US/docs/Developer_Guide/How_to_Submit_a_Patch" title="en-US/docs/Getting your patch in the tree">How to submit a patch</a></dt>
<dd>After getting your patch written, you need to get it checked into the tree. This article explains the review process and how to get your patch approved.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Getting_documentation_updated" title="en-US/docs/Developer_Guide/Getting documentation updated">Getting documentation updated</a></dt>
<dd>How to ensure that documentation is kept up to date as you develop.</dd>
<dt><a class="internal" href="/en-US/docs/Mozilla_Modules_and_Module_Ownership" title="en-US/docs/Mozilla Modules and Module Ownership">Mozilla modules and module ownership</a></dt>
<dd>This article provides information about Mozilla's modules, what the role of a module owner is, and how module owners are selected.</dd>
<dt><a class="internal" href="/en-US/docs/Code_snippets" title="en-US/docs/Code_snippets">Code snippets</a></dt>
<dd>Useful code samples for a wide variety of things you might need to figure out how to do.</dd>
<dt><a class="internal" href="/en-US/docs/Mozilla_Development_Strategies" title="en-US/docs/Mozilla Development Strategies">Mozilla development strategies</a></dt>
<dd>Tips for how to make the most of your time working on the Mozilla project.</dd>
<dt><a class="internal" href="/en-US/docs/Debugging" title="en-US/docs/Debugging">Debugging</a></dt>
<dd>Find helpful tips and guides for debugging Mozilla code.</dd>
<dt><a href="/en-US/docs/Performance" title="en-US/docs/Performance">Performance</a></dt>
<dd>Performance guides and utilities to help you make your code perform well (and to play nicely with others).</dd>
<dt><a class="internal" href="/en-US/docs/The_Mozilla_platform" title="en-US/docs/The Mozilla platform">The Mozilla platform</a></dt>
<dd>Information about the workings of the Mozilla platform.</dd>
<dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla">Mozilla</a></dt>
<dd>Much more additional information about Mozilla coding practices.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Adding_APIs_to_the_navigator_object" title="en-US/docs/Developer_Guide/Adding_APIs_to_the_navigator_object">Adding APIs to the navigator object</a> {{ gecko_minversion_inline("9.0") }}</dt>
<dd>How to augment the {{ domxref("window.navigator") }} object with additional APIs.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Interface_Compatibility" title="en-US/docs/Developer Guide/Interface Compatibility">Interface Compatibility</a></dt>
<dd>Guidelines for modifying scriptable and binary APIs in Mozilla.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Customizing_Firefox" title="en-US/docs/Developer Guide/Customizing Firefox">Customizing Firefox</a></dt>
<dd>Information about creating customized versions of Firefox.</dd>
<dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Task_graph" title="en-US/docs/Developer Guide/Customizing Firefox">Task-Graph Generation</a></dt>
<dd>What controls the jobs that run on a push to version control? How can you change that?</dd>
<dt><a href="/en-US/docs/Developer_Guide/Virtual_ARM_Linux_environment" title="Virtual ARM Linux environment">Virtual ARM Linux environment</a></dt>
<dd>How to set up an ARM emulator running Linux for testing ARM-specific, but not necessarily platform-specific, code. Useful for mobile developers.</dd>
<dt><a href="/en-US/docs/Introduction/Obsolete_Build_Caveats_and_Tips" title="Obsolete Build Caveats and Tips">Obsolete Build Caveats and Tips</a></dt>
<dd>A place to put build tips which are no longer relevant to building the latest version of the code from main but are relevant when building old codebases.</dd>
<dt><a href="https://firefox-source-docs.mozilla.org/">Firefox Source Docs</a></dt>
<dd>Web-hosted documentation built from the mozilla-central source code.</dd>
</dl>
</div>
<div class="section">
<h2 class="Tools" id="Tools">Tools</h2>
<dl>
<dt><a class="link-https" href="https://bugzilla.mozilla.org/" title="https://bugzilla.mozilla.org/">Bugzilla</a></dt>
<dd>The <a class="internal" href="/en-US/docs/Bugzilla" title="en-US/docs/Bugzilla">Bugzilla</a> database used to track issues for Mozilla projects.</dd>
<dt><a href="https://dxr.mozilla.org/">DXR</a></dt>
<dd>Next generation of searching Mozilla's source code. In active development.</dd>
<dt><a href="https://www.searchfox.org/">SearchFox</a></dt>
<dd>Another option for Mozilla code searching. Indexes JS as well as C++, includes blame capabilities. In active development.</dd>
<dt><a class="internal" href="/en-US/docs/Mercurial" title="en-US/docs/Mercurial">Mercurial</a></dt>
<dd>The distributed version-control system used to manage Mozilla's source code.</dd>
<dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Using_the_VM">Mozilla build VM</a></dt>
<dd>A VirtualBox compatible virtual machine configured with all the software needed to build and work on Firefox.</dd>
<dt><a class="external" href="https://docs.taskcluster.net">TaskCluster</a></dt>
<dd>TaskCluster is the task execution framework that supports Mozilla's continuous integration and release processes.</dd>
<dt><a class="external" href="https://treeherder.mozilla.org/">Treeherder</a></dt>
<dd>Treeherder shows the status of the tree (whether or not it currently builds successfully). Check this before checking in and out, to be sure you're working with a working tree.</dd>
<dt><a href="https://treeherder.mozilla.org/perf.html">Perfherder</a></dt>
<dd>Perfherder is used to aggregate the results of automated performance tests against the tree.</dd>
<dt><a class="internal" href="/en-US/docs/Crash_reporting" title="en-US/docs/Crash reporting">Crash tracking</a></dt>
<dd>Information about the <a class="link-https" href="https://crash-reports.mozilla.com/reports">Socorro</a> crash reporting system.</dd>
<dt><a href="/en-US/docs/Developer_Guide/Callgraph" title="en-US/docs/Developing Mozilla/Callgraph">Callgraph</a></dt>
<dd>A tool to help perform static analysis of the Mozilla code by generating callgraphs automatically.</dd>
<dt><a class="external" href="https://www.mozilla.org/en-US/about/forums/">Developer forums</a></dt>
<dd>A topic-specific list of discussion forums and mailing lists where you can talk about Mozilla development issues.</dd>
<dt><a class="external" href="https://web.archive.org/web/20160813112326/http://www.codefirefox.com:80/cheatsheet">Mozilla Platform Development Cheat Sheet</a> (archive.org)</dt>
<dd>Brian Bondy's list of frequently referenced information for platform developers. Brian Bondy <a href="https://brianbondy.com/blog/173/shutting-down-code-firefox">took down</a> codefirefox.com, but the archived cheatsheet might still be useful.</dd>
<dt><a class="external" href="http://www.codefirefox.com/videos/">Firefox development video tutorials</a></dt>
<dd>Brian Bondy's video tutorials on Firefox development.</dd>
</dl>
</div>
</div>
<p> </p>
|