Mozilla Developer Documentation
Documentation: Mozilla developer | Web developer | End user
This page provides links to some of the more important documents for people developing for the Mozilla project. The Mozilla Documentation Project page also provides information about the mozilla documentation effort.
Table of Contents
- Introductory Material
- Building Mozilla
- Core Mozilla Architecture
- Core Modules and Libraries
- Modularity and Development Issues
- Performance
- Security
- Miscellaneous
Introductory Material
- Our Mission
- Unity Of Interface
- Mozilla Jargon File
- Source Code Directories Overview - An explanation of each of the main directories in the source tree.
- SeaMonkey Brownbag Training Videos - Video introductions to Mozilla technologies.
- Mozilla Roadmap
- FAQ
- Hacker's Getting Started Guide
- Code Review FAQ (what is r= and sr=?)
- Super-review Guide (who are the srs?)
Building Mozilla
- Win32
- Mac OS X (Mach-O)
- Unix/Linux
- BeOS
- Build a Mozilla Distribution - How to build and package Mozilla for distribution to end-users.
- Understanding the Macintosh Build System
- Tree Verification Processes
- How to add files without breaking the build
- Jar Packaging
- Tree sheriffs
- Embedding Mozilla
Core Mozilla Architecture
- XPCOM
Our Cross-Platform scheme for turning objects into discrete
components.
- Modularization Techniques (What XPCOM is and how to use it)
- Reference implementation of
QueryInterface
- COM Ownership Guidelines
- nsCOMPtr
- The latest String Guide
- an incomplete guide to mozilla/string
- Mozilla Registry
- Console Service
- logging user-visible errors and messages
- Using Console Service - a simple document with code source examples
- IBM developerWorks - XPCOM Overview
- Part 1: An Introduction to XPCOM - Component architecture by Mozilla
- Part 2: XPCOM Component Basics - Introduction to XPCOM Programming
- Part 3: Setting up XPCOM - Building the XPCOM Development Environment
- Part 4: Component Development
- Part 5: Implementation - Coding, installing, and testing XPCOM components
- PyXPCOM is ActiveState's bindings between Python and XPCOM
- XPConnect - Accessing XPCOM based classes through JavaScript
- XPIDL - A cross-platform Interface Description Language used to specify XPCOM interface classes
- XBL - Extensible Binding Language, a markup language for
describing bindings that can be attached to elements in
other documents.
- XBL 1.0 Specification
- The XML Binding Language, by Marcell Ortutay
- XUL
- XML User interface Language, the basis of Mozilla's cross platform UI.
- XUL 1.0 Specification
- Essential XUL Programming by Bullard, Smith and Daconta. This book is a primer on building custom user interfaces using XUL, Mozilla's cross-platform user interface language. See the official XUL book site for corrections.
- XUL Planet
- XUL Tutorial
- XUL 1.0 Guide Everything you need to know to update your existing XUL code to be compatible with XUL 1.0
- XUL Programmer's Reference (Zipped-up HTML and French version)
- XPInstall - A technology for doing cross-platform installations, packaging, and software updates
- NSPR - Cross Platform operating system facilities.
Code Modules and Libraries
- Module Owners - The Module Owners document lists the points-of-contact for the various source code directories that comprise Mozilla: that is, the people responsible for the code that mozilla.org distributes. Talk to these people when you want to change the code for which they are responsible.
- Editor
- Mail/News
- EmbedShell, the WebShell redesign.
- Internationalization
- JavaScript Library
- Layout Engine (Gecko)
- RDF in Mozilla
- Network Library (Necko)
- Component Security
Modularity and Development Issues
- Modularization Techniques
- C++ Portability Guide
- Event Handling In Mozilla
- The life of a HTML HTTP request
- Extending Mozilla
- Jar Packaging 101
- Command Line Arguments In Mozilla
- Unix
Performance
Security
Miscellaneous
- Sample Code and Technical Notes
- Slides
- Guidelines and References
- Add-on Developer Documentation
- Standards and Protocols
- Extensions
Documentation Graveyard
Documentation for Mozilla Classic and other retired documents.
Read how to contribute documentation to this project.