MOSS/Foundational Technology/Projects We Use: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(→‎The list: CKEditor is on the FSF list)
(Roll back FSF links etc. pending discussion with author)
Line 2: Line 2:


This is a work in progress - please contribute to this list.
This is a work in progress - please contribute to this list.
== The free software definition ==
Software is open-source if its source is released to the public. Software is free (which is a more narrow term) if the licence the source is released under gives users the basic software freedoms, as stated in [https://www.gnu.org/philosophy/free-sw.html the free software definition]. To quote it, a program is free software if the program's users have the four essential freedoms:
* 0) The freedom to run the program as you wish, for any purpose (freedom 0).
* 1) The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
* 2) The freedom to redistribute copies so you can help your neighbor (freedom 2).
* 3) The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
To stress freedoms 0, 2, and 3, it [http://www.gnu.org/philosophy/open-source-misses-the-point.html is preferable] to use the term "free software" or "libre software" over the term "open-source software".
When adding new software to the list, please link to their FSF directory entry, when you can. To add the FSF directory entry, please use one of these templates:


{| class="wikitable"
{| class="wikitable"
|-
|-
|<nowiki>{{FSFDir|NameOfSoftware}}</nowiki>
! Project !! Description !! Contact within Mozilla
|the entry exists
|-
|-
|<nowiki>{{FSFDirNo|NameOfSoftware}}</nowiki>
| [https://angularjs.org/ angular.js]          || Used by A-Team for web apps (eg Treeherder) || Member of Jonathan Griffin's team
|you're lazy to check whether it exists, or if it doesn't exist
|-
|-
|<nowiki>{{FSFDirNonFree|URL}}</nowiki>
| [https://httpd.apache.org Apache Server]     || Used by A-Team for web apps || Member of Jonathan Griffin's team
|the software is known to be non-free per the [https://www.gnu.org/philosophy/free-sw.html free software definition]. Include the supporting URL (link to the non-free component or to a web page talking about it).
|}
 
== The list ==
 
{| class="wikitable sortable"
|-
|-
! Project !! FSF directory entry !! Description !! Contact within Mozilla
| [https://github.com/ansible/ansible Ansible]  || Used by IT (netops) and A-Team to manage deployments || jbarnell , GPS?
|-
|-
| [https://angularjs.org/ angular.js]  
| [https://babeljs.io/ BabelJS]                 || JavaScript compiler, Used by Gaia, TaskCluster team || Selena Deckelmann
|{{FSFDir|AngularJS}}
|| Used by A-Team for web apps (eg Treeherder) || Member of Jonathan Griffin's team
|-
|-
| [https://httpd.apache.org Apache Server]
| [https://pypi.python.org/pypi/blessings/ Blessings] || Terminal formatting lib used by mozilla-central build process || Erik Rose
|{{FSFDir|Apache}}
      || Used by A-Team for web apps || Member of Jonathan Griffin's team
|-
|-
| [https://github.com/ansible/ansible Ansible]  
| [http://getbootstrap.com/ Bootstrap] || HTML/CSS/JS framework, used by many of Mozilla's sites. || Webdev
| |{{FSFDir|Ansible}}
|| Used by IT (netops) and A-Team to manage deployments || jbarnell , GPS?
|-
|-
| [https://babeljs.io/ BabelJS]
| [https://bro.org bro]                   || The Bro Network Security Monitor || Michal Purzynski
| |{{FSFDirNo|BabelJS|check}}
                || JavaScript compiler, Used by Gaia, TaskCluster team || Selena Deckelmann
|-
|-
| [https://pypi.python.org/pypi/blessings/ Blessings]  
| [http://buildbot.net/ BuildBot]               || The base system currently in use for release automation ''(due to be replaced by Task Cluster)'' || Chris AtLee
| |{{FSFDirNo|Blessings|check}}
|| Terminal formatting lib used by mozilla-central build process || Erik Rose
|-
|-
| [http://getbootstrap.com/ Bootstrap]
| [http://bugzilla.org/ Bugzilla] (upstream)    || The base Bugzilla on that we customize for Mozilla's use || Glob
| |{{FSFDir|Bootstrap}}
|| HTML/CSS/JS framework, used by many of Mozilla's sites. || Webdev
|-
|-
| [https://bro.org bro]
| [http://www.celeryproject.org/ Celery] || Distributed task queue. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDirNo|bro|check}}
                    || The Bro Network Security Monitor || Michal Purzynski
|-
|-
| [http://buildbot.net/ BuildBot]  
| [http://ckeditor.com/ CKEditor] || WYSIWYG editor on MDN ||  
| |{{FSFDir|BuildBot}}
              || The base system currently in use for release automation ''(due to be replaced by Task Cluster)'' || Chris AtLee
|-
|-
| [http://bugzilla.org/ Bugzilla] (upstream)
| [http://www.llvm.org Clang/LLVM]           || C/C++ compiler and infrastructure || Ehsan Akhgari
| |{{FSFDir|Bugzilla}}
  || The base Bugzilla on that we customize for Mozilla's use || Glob
|-
|-
| [http://www.celeryproject.org/ Celery]  
| [https://codemirror.net/ CodeMirror]           || Used in DevTools, [https://thimble.mozilla.org Thimble], and other online code tools || David Humphrey/Simon Wex
| |{{FSFDir|Celery}}
|| Distributed task queue. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| [http://ckeditor.com/ CKEditor]  
| [https://conemu.github.io/ ConEmu] || Console emulator for Windows. Used by devs running Windows. || Ed Morley
| |{{FSFDir|CKEditor}}
|| WYSIWYG editor on MDN ||  
|-
|-
| [http://www.llvm.org Clang/LLVM]
| [https://www.debian.org/ Debian] || Used on many developer boxes || Unknown (maybe Sylvestre Ledru) or glandium
| |{{FSFDir|LLVM}}
          || C/C++ compiler and infrastructure || Ehsan Akhgari
|-
|-
| [https://codemirror.net/ CodeMirror]
| [https://discourse.org Discourse] || [https://discourse.mozilla-community.org Community], [https://discourse.webmaker.org/ Webmaker], [https://discourse.mozilla-advocacy.org/ Advocacy], et al || [[IT/Community/WG/Discourse|Community Ops]] (Yousef Alam or Tanner Filip)
| |{{FSFDirNo|CodeMirror}}
          || Used in DevTools, [https://thimble.mozilla.org Thimble], and other online code tools || David Humphrey/Simon Wex
|-
|-
| [https://conemu.github.io/ ConEmu]
| [https://djangoproject.com Django]     || Backend web framework used on many of our websites, including addons.mozilla.org, marketplace.mozilla.org, support.mozilla.org, Input, Snippets, MDN (Mozilla Developer Network), mozilla.org, Treeherder || Andy McKay and Jannis Leidel are (or have been) on the [https://www.djangoproject.com/foundation/ Django Software Foundation] board, Jannis is core team member
| |{{FSFDirNo|ConEmu}}
|| Console emulator for Windows. Used by devs running Windows. || Ed Morley
|-
|-
| [https://www.debian.org/ Debian]  
| [http://www.django-rest-framework.org Django REST framework]     || API framework. Used by various Mozilla sites including MDN, Firefox marketplace, mozilla.org, support.mozilla.com. || Andy McKay and Jannis Leidel
| |{{FSFDirNonFree|http://www.gnu.org/distros/common-distros.html#Debian}}
|| Used on many developer boxes || Unknown (maybe Sylvestre Ledru) or glandium
|-
|-
| [https://discourse.org Discourse]
| [https://github.com/docker/docker Docker]     || Used by release engineering for Linux build and test containers and by ateam for managing test and production services. Used by many Mozilla websites as well such as addons.mozilla.org, marketplace.mozilla.org. (Plus docker-compose and docker machine) || Member of Selena Deckelmann's team 
| |{{FSFDir|Discourse}}
|| [https://discourse.mozilla-community.org Community], [https://discourse.webmaker.org/ Webmaker], [https://discourse.mozilla-advocacy.org/ Advocacy], et al || [[IT/Community/WG/Discourse|Community Ops]] (Yousef Alam or Tanner Filip)
|-
|-
| [https://djangoproject.com Django]
| [https://www.elastic.co/products/elasticsearch elasticsearch] || Search engine for various web sites and analytics || Erik Rose
| |{{FSFDir|Django}}
    || Backend web framework used on many of our websites, including addons.mozilla.org, marketplace.mozilla.org, support.mozilla.org, Input, Snippets, MDN (Mozilla Developer Network), mozilla.org, Treeherder || Andy McKay and Jannis Leidel are (or have been) on the [https://www.djangoproject.com/foundation/ Django Software Foundation] board, Jannis is core team member
|-
|-
| [http://www.django-rest-framework.org Django REST framework]
| [http://www.gnu.org/software/emacs/ emacs] || Programmable editor used by many developers ||
| |{{FSFDir|Django-rest|check}}
    || API framework. Used by various Mozilla sites including MDN, Firefox marketplace, mozilla.org, support.mozilla.com. || Andy McKay and Jannis Leidel
|-
|-
| [https://github.com/docker/docker Docker]
| [https://github.com/ether/etherpad-lite Etherpad]     || Used for meeting notes, etc || JP Schneider
| |{{FSFDir|Docker}}
  || Used by release engineering for Linux build and test containers and by ateam for managing test and production services. Used by many Mozilla websites as well such as addons.mozilla.org, marketplace.mozilla.org. (Plus docker-compose and docker machine) || Member of Selena Deckelmann's team 
|-
|-
| [https://www.elastic.co/products/elasticsearch elasticsearch]
| [https://flake8.readthedocs.org/ flake8] || Wrapper around Python linters. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDir|Elasticsearch}}
|| Search engine for various web sites and analytics || Erik Rose
|-
|-
| [http://www.gnu.org/software/emacs/ emacs]
| [http://flask.pocoo.org/ Flask]               || Python web framework || Erik Rose
| |{{FSFDir|emacs}}
|| Programmable editor used by many developers ||
|-
|-
| [https://github.com/ether/etherpad-lite Etherpad]  
| [https://fortawesome.github.io/Font-Awesome/ Font Awesome] || Font and CSS toolkit, used by many of Mozilla's sites. || Webdev
| |{{FSFDirNo|etherpad-lite|check}}
    || Used for meeting notes, etc || JP Schneider
|-
|-
| [https://flake8.readthedocs.org/ flake8]
| [http://gcc.gnu.org GCC]                     || C/C++ compiler and infrastructure || Unknown
| |{{FSFDir|Flake8}}
|| Wrapper around Python linters. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| [http://flask.pocoo.org/ Flask]
| [https://git-scm.com/ Git]                   || Version control system - https://git.mozilla.org || Unknown
| |{{FSFDirNo|Flask|check}}
            || Python web framework || Erik Rose
|-
|-
| [https://fortawesome.github.io/Font-Awesome/ Font Awesome]
| [http://gunicorn.org/ gunicorn] || Python WSGI HTTP Server. Used by Treeherder, Socorro, Pontoon. || Webdev
| |{{FSFDir|Font Awesome}}
|| Font and CSS toolkit, used by many of Mozilla's sites. || Webdev
|-
|-
| [http://gcc.gnu.org GCC]  
| [http://www.freedesktop.org/wiki/Software/HarfBuzz/ HarfBuzz] || International text shaping engine used in Firefox/Servo || Platform team
| |{{FSFDir|Gcc}}
                    || C/C++ compiler and infrastructure || Unknown
|-
|-
| [https://git-scm.com/ Git]  
| [http://hunspell.sourceforge.net/ Hunspell] || Spellchecking engine || Unknown
| |{{FSFDir|Git}}
                  || Version control system - https://git.mozilla.org || Unknown  
|-
|-
| [http://gunicorn.org/ gunicorn]  
| [https://github.com/hunspell/hyphen/ Hyphen] || Hyphenation library || Unknown
| |{{FSFDirNo|gunicorn|check}}
|| Python WSGI HTTP Server. Used by Treeherder, Socorro, Pontoon. || Webdev
|-
|-
| [http://www.freedesktop.org/wiki/Software/HarfBuzz/ HarfBuzz]
| [https://theintern.github.io/intern/ Intern] || Intern is a complete test system for JavaScript designed to help you write and run consistent, high-quality test cases for your JavaScript libraries and applications. || jrgm/vladikoff
| |{{FSFDir|HarfBuzz}}
  || International text shaping engine used in Firefox/Servo || Platform team
|-
|-
| [http://hunspell.sourceforge.net/ Hunspell]
| [http://canonware.com/jemalloc/ jemalloc]     || Memory allocation library || We can ask glandium
| |{{FSFDirNo|HarfBuzz|check}}
  || Spellchecking engine || Unknown
|-
|-
| [https://github.com/hunspell/hyphen/ Hyphen]
| [http://jenkins-ci.org/ Jenkins CI]                   || Continuous integration system used by WebQA and EE || Unknown
| |{{FSFDirNo|Hyphen|check}}
  || Hyphenation library || Unknown
|-
|-
| [https://theintern.github.io/intern/ Intern]  
| [https://jquery.com/ jQuery] || JavaScript library, used by many of Mozilla's sites. || Webdev
| |{{FSFDirNo|Intern|check}}
|| Intern is a complete test system for JavaScript designed to help you write and run consistent, high-quality test cases for your JavaScript libraries and applications. || jrgm/vladikoff
|-
|-
| [http://canonware.com/jemalloc/ jemalloc]
| [http://kombu.readthedocs.org/ Kombu] || Messaging library for Python. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDir|Jemalloc}}
  || Memory allocation library || We can ask glandium
|-
|-
| [http://jenkins-ci.org/ Jenkins CI]   
| libjpeg-turbo                                || JPEG decoding library || Jeff Muizelaar
| |{{FSFDir|Jenkins}}
                || Continuous integration system used by WebQA and EE || Unknown
|-
|-
| [https://jquery.com/ jQuery]  
| [http://www.libpng.org/pub/png/libpng.html libpng] || PNG decoding library || Jeff Muizelaar
| |{{FSFDir|jQuery}}
|| JavaScript library, used by many of Mozilla's sites. || Webdev
|-
|-
| [http://kombu.readthedocs.org/ Kombu]
| libvpx (Google)                              || Library for support of Google’s VP* family of codecs || Tim Terriberry
| |{{FSFDir|Kombu}}
|| Messaging library for Python. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| libjpeg-turbo                         
| Linux                                        || OS kernel used in Firefox OS || Unknown
| |{{FSFDir|Libjpeg-turbo}}
      || JPEG decoding library || Jeff Muizelaar
|-
|-
| [http://www.libpng.org/pub/png/libpng.html libpng]
| [https://lodash.com/ lodash] || JavaScript utility library, used by many of Mozilla's sites. || Webdev
| |{{FSFDir|Libpng}}
|| PNG decoding library || Jeff Muizelaar
|-
|-
| libvpx (Google)                             
| [https://www.list.org/ Mailman]    || [https://mail.mozilla.org/listinfo Mailing lists] || Unknown
| |{{FSFDirNo|libvpx|check}}
|| Library for support of Google’s VP* family of codecs || Tim Terriberry
|-
|-
| Linux                                       
| [https://www.mediawiki.org/wiki/MediaWiki MediaWiki]    || You are reading this on a wiki || Sheeri Cabral
| |{{FSFDirNonFree|https://www.gnu.org/distros/common-distros.html}}
|| OS kernel used in Firefox OS || Unknown
|-
|-
| [https://lodash.com/ lodash]
| [https://www.mercurial-scm.org/ Mercurial]   || Version control system and source code management || GPS
| |{{FSFDir|Lodash}}
|| JavaScript utility library, used by many of Mozilla's sites. || Webdev
|-
|-
| [https://www.list.org/ Mailman]
| [https://github.com/kumar303/mohawk Mohawk] || Python library for Hawk HTTP authorization. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDir|Mailman}}
  || [https://mail.mozilla.org/listinfo Mailing lists] || Unknown
|-
|-
| [https://www.mediawiki.org/wiki/MediaWiki MediaWiki]
| [http://mozdef.com mozdef]                   || Security event monitoring and incident response || Jeff Bryner
| |{{FSFDir|MediaWiki}}
  || You are reading this on a wiki || Sheeri Cabral
|-
|-
| [https://www.mercurial-scm.org/ Mercurial]  
| [http://www.mingw.org/wiki/msys msys]         || Used to build Firefox on Windows. Note: It's likely best we support the newer MSYS2 project instead: https://github.com/msys2 || Unknown
| |{{FSFDir|Mercurial}}
  || Version control system and source code management || GPS
|-
|-
| [https://github.com/kumar303/mohawk Mohawk]
| [https://www.mysql.com/ MySQL]               || Open source relational DB used by many developers, including AMO, SUMO, Input, bugzilla, releng, adminstered by IT || Sheeri Cabral
| |{{FSFDirNo|Mohawk|check}}
||  Python library for Hawk HTTP authorization. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| [http://mozdef.com mozdef]      
| [https://www.nagios.org/ Nagios]              || IT management system. Used for notifications of system failures || Sheeri Cabral, Ashish V.
| |{{FSFDirNo|mozdef|check}}
             || Security event monitoring and incident response || Jeff Bryner
|-
|-
| [http://www.mingw.org/wiki/msys msys]  
| [http://netsniff-ng.org/ netsniff-ng]                   || Linux networking toolkit || Michal Purzynski
| |{{FSFDirNo|msys|check}}
      || Used to build Firefox on Windows. Note: It's likely best we support the newer MSYS2 project instead: https://github.com/msys2 || Unknown
|-
|-
| [https://www.mysql.com/ MySQL]     
| nICEr                                        || Library for traversing firewalls || Unknown
| |{{FSFDir|MySQL}}
          || Open source relational DB used by many developers, including AMO, SUMO, Input, bugzilla, releng, adminstered by IT || Sheeri Cabral
|-
|-
| [https://www.nagios.org/ Nagios]  
| [https://nixos.org NixOS]                     || Reproducible Linux distribution. Used by some developers and for running benchmarks on Firefox OS for AreWeFastYet || Nicolas B. Pierron
| |{{FSFDir|Nagios}}
          || IT management system. Used for notifications of system failures || Sheeri Cabral, Ashish V.
|-
|-
| [http://netsniff-ng.org/ netsniff-ng]
| [https://nodejs.org Node.js]                 || JavaScript runtime for server side applications, command line utilities || Nick Desaulniers
| |{{FSFDir|Netsniff-ng}}
                  || Linux networking toolkit || Michal Purzynski
|-
|-
| nICEr                       
| nrappkit                                      || Toolkit for building standalone applications || Unknown  
| |{{FSFDirNo|nICEr|check}}
                || Library for traversing firewalls || Unknown  
|-
|-
| [https://nixos.org NixOS]     
| OpenH264 (Cisco)                              || H.264 video library || Unknown
| |{{FSFDirNo|NixOS|check}}
              || Reproducible Linux distribution. Used by some developers and for running benchmarks on Firefox OS for AreWeFastYet || Nicolas B. Pierron
|-
|-
| [https://nodejs.org Node.js]  
| [http://openresty.org OpenResty]             || a fast web app server by extending nginx, used by cloudops || Benson Wong (mostlygeek)
| |{{FSFDir|Node.js}}
              || JavaScript runtime for server side applications, command line utilities || Nick Desaulniers
|-
|-
| nrappkit                       
| [http://www.openssh.com/ OpenSSH]                || Remote server management, secure transport for Git and Mercurial || Unknown
| |{{FSFDirNo|nrappkit|check}}
              || Toolkit for building standalone applications || Unknown  
|-
|-
| OpenH264 (Cisco)               
| |{{FSFDirNo|OpenH264|check}}
              || H.264 video library || Unknown
|-
|-
| [http://openresty.org OpenResty]    
| [http://www.openLDAP.org/ OpenLDAP]                 || User management used by Infra || :jabba?
| |{{FSFDir|OpenResty}}
        || a fast web app server by extending nginx, used by cloudops || Benson Wong (mostlygeek)
|-
|-
| [http://www.openssh.com/ OpenSSH] 
| |{{FSFDir|OpenSSH}}
              || Remote server management, secure transport for Git and Mercurial || Unknown
|-
|-
| [http://www.inspircd.org/ inspircd]                || Irc server used by mozilla || Unknown
|-
|-
| [http://www.openLDAP.org/ OpenLDAP]  
| [http://openssl.org/ OpenSSL]                 || Cryptograpahy and TLS Toolkit || Nick Desaulniers
| |{{FSFDirNo|OpenLDAP|check}}
              || User management used by Infra || :jabba?
|-
|-
| [https://www.owasp.org/index.php/ZAP OWASP ZAP]                || Web security testing tool used by security and QA teams || Simon Bennetts (psiinon)
|-
|-
| [http://www.inspircd.org/ inspircd]
| [https://owncloud.org/ Owncloud]                 || Open platform to host your cloud under your control || Some communities have been using it to host files under their control (ask Nukeador)
| |{{FSFDir|Inspircd}}
              || Irc server used by mozilla || Unknown
|-
|-
| [http://openssl.org/ OpenSSL]      
| [https://pypi.python.org/pypi/parsimonious/ Parsimonious] || Parsing lib used by DXR and a few other sites (I think) || Erik Rose
| |{{FSFDir|OpenSSL}}
          || Cryptograpahy and TLS Toolkit || Nick Desaulniers
|-
|-
| [https://www.owasp.org/index.php/ZAP OWASP ZAP]
| [https://github.com/mozilla/pdf.js PDF.js]                 || Used as the PDF Viewer in Firefox and Firefox OS || Brendan Dahl, Yury Delendik
| |{{FSFDirNo|OWASP%20ZAP|check}}
              || Web security testing tool used by security and QA teams || Simon Bennetts (psiinon)
|-
|-
| [https://owncloud.org/ Owncloud]    
| [https://github.com/PyCQA/pep8 pep8] || Python linter. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDir|Owncloud}}
            || Open platform to host your cloud under your control || Some communities have been using it to host files under their control (ask Nukeador)
|-
|-
| [https://pypi.python.org/pypi/parsimonious/ Parsimonious]
| [https://www.perl.org/ Perl]                 || Used by Bugzilla || Member of Jonathan Griffin's team
| |{{FSFDirNo|Parsimonious|check}}
|| Parsing lib used by DXR and a few other sites (I think) || Erik Rose
|-
|-
| [https://github.com/mozilla/pdf.js PDF.js]  
| [https://phalconphp.com/ Phalcon PHP Framework]                 || Phalcon is an open source web framework delivered as a C extension for the PHP language providing high performance and lower resource consumption. || Andres Gutierrez is one of the [https://phalconphp.com/en/team core developers] of Phalcon and its inspiration.
| |{{FSFDir|PDF.js}}
              || Used as the PDF Viewer in Firefox and Firefox OS || Brendan Dahl, Yury Delendik
|-
|-
| [https://github.com/PyCQA/pep8 pep8]  
| [https://github.com/pypa/pip pip] || Python package tool. Used by all Python projects. || Erik Rose and Jannis Leidel, Jannis is core team member ([https://www.pypa.io/ PyPA])
| |{{FSFDirNo|pep8|check}}
|| Python linter. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| [https://www.perl.org/ Perl]  
| [http://piwik.org/ Piwik] || Analytic software that gives you the control and respects privacy || Some communities have been using it to avoid GA analytics (Ask Nukeador)
| |{{FSFDir|Perl}}
              || Used by Bugzilla || Member of Jonathan Griffin's team
|-
|-
| [https://phalconphp.com/ Phalcon PHP Framework]  
| [http://cmusphinx.sourceforge.net/ Pocketsphinx]       || Speech recognition toolkit embedded into Firefox OS|| André Natal
| |{{FSFDirNo|Phalcon|check}}
              || Phalcon is an open source web framework delivered as a C extension for the PHP language providing high performance and lower resource consumption. || Andres Gutierrez is one of the [https://phalconphp.com/en/team core developers] of Phalcon and its inspiration.
|-
|-
| [https://github.com/pypa/pip pip]  
| [http://www.postgresql.org/ PostgreSQL]       || Open source relational DB used by many developers, adminstered by IT || Selena Deckelmann
| |{{FSFDir|Python-pip}}
|| Python package tool. Used by all Python projects. || Erik Rose and Jannis Leidel, Jannis is core team member ([https://www.pypa.io/ PyPA])
|-
|-
| [http://piwik.org/ Piwik]  
| [https://github.com/PrismJS/prism Prism.js]       || Syntax highlighting on code samples on MDN ||  
| |{{FSFDir|Piwik}}
|| Analytic software that gives you the control and respects privacy || Some communities have been using it to avoid GA analytics (Ask Nukeador)
|-
|-
| [http://cmusphinx.sourceforge.net/ Pocketsphinx]  
| [https://github.com/puppetlabs/puppet Puppet] || System administration tool || Member of Amy Rich's team
| |{{FSFDirNo|Pocketsphinx|check}}
      || Speech recognition toolkit embedded into Firefox OS|| André Natal
|-
|-
| [http://www.postgresql.org/ PostgreSQL]
| [https://github.com/pyflakes/pyflakes pyflakes] || Python linter. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDir|PostgreSQL}}
    || Open source relational DB used by many developers, adminstered by IT || Selena Deckelmann
|-
|-
| [https://github.com/PrismJS/prism Prism.js]  
| [http://pytest.org/ pytest] || Python testing tool. Used by Treeherder and others. || Member of Jonathan Griffin's team
| |{{FSFDirNo|PostgreSQL|check}}
      || Syntax highlighting on code samples on MDN ||  
|-
|-
| [https://github.com/puppetlabs/puppet Puppet]
| Python                                        || Scripting language || [http://python.org/psf/ Python Software Foundation], Selena Deckelmann is a former board member
| |{{FSFDir|Puppet}}
|| System administration tool || Member of Amy Rich's team
|-
|-
| [https://github.com/pyflakes/pyflakes pyflakes]
| [https://pypi.python.org/pypi/pyelasticsearch/ pyelasticsearch] || Python client for elasticsearch || Erik Rose
| |{{FSFDirNo|pyflakes|check}}
|| Python linter. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| [http://pytest.org/ pytest]
| [https://www.rabbitmq.com/ RabbitMQ]         || Distributed Queue, used by Socorro, Pulse (all our publicly available build/test/commit information flows through this), Treeherder, addons.mozilla.org (with Celery), marketplace.mozilla.org (with Celery) || Selena Deckelmann
| |{{FSFDir|Pytest}}
|| Python testing tool. Used by Treeherder and others. || Member of Jonathan Griffin's team
|-
|-
| Python     
| [https://readthedocs.org/ Read the Docs]   || Hosted automatically-built documentation, used by Cloud Services and a wide variety of mozilla Github projects || Ben Bangert, Jannis Leidel, Gervase Markham
| |{{FSFDir|Python}}
                                  || Scripting language || [http://python.org/psf/ Python Software Foundation], Selena Deckelmann is a former board member
|-
|-
| [https://pypi.python.org/pypi/pyelasticsearch/ pyelasticsearch]  
| [http://python-requests.org/ Requests] || "Python HTTP Requests for Humans". Used by many many Mozilla Python projects. || Member of Jonathan Griffin's team
| |{{FSFDirNo|pyelasticsearch}}
|| Python client for elasticsearch || Erik Rose
|-
|-
| [https://www.rabbitmq.com/ RabbitMQ]   
| [https://www.reviewboard.org/ Review Board]  || The base of MozReview, the new review tool being developed to replace Splinter || Steven MacLeod, Mike Conley
| |{{FSFDirNo|RabbitMQ}}
      || Distributed Queue, used by Socorro, Pulse (all our publicly available build/test/commit information flows through this), Treeherder, addons.mozilla.org (with Celery), marketplace.mozilla.org (with Celery) || Selena Deckelmann
|-
|-
| [https://readthedocs.org/ Read the Docs]
| [http://www.seleniumhq.org/ Selenium]         || Browser test driver || stephend/AutomatedTester or jrgm/vladikoff
| |{{FSFDirNo|Read%20the%20Docs}}
  || Hosted automatically-built documentation, used by Cloud Services and a wide variety of mozilla Github projects || Ben Bangert, Jannis Leidel, Gervase Markham
|-
|-
| [http://python-requests.org/ Requests]  
| [https://slimerjs.org/ SlimerJS]             || Scriptable browser, based on Gecko, used for functional tests in some few Mozilla projects ( [[PluotSorbet]], some FxOS apps ? and others ?) || Unknown
| |{{FSFDirNo|python%20Requests}}
|| "Python HTTP Requests for Humans". Used by many many Mozilla Python projects. || Member of Jonathan Griffin's team
|-
|-
| [https://www.reviewboard.org/ Review Board]
| [https://www.sqlite.org/ SQLite]             || File-based database || khuey
| |{{FSFDirNo|Review%20Board}}
  || The base of MozReview, the new review tool being developed to replace Splinter || Steven MacLeod, Mike Conley
|-
|-
| [http://www.seleniumhq.org/ Selenium]
| [http://learnboost.github.io/stylus/ Stylus]             || CSS Pre-processor on several sites || webdev
| |{{FSFDir|Selenium}}
      || Browser test driver || stephend/AutomatedTester or jrgm/vladikoff
|-
|-
| [https://slimerjs.org/ SlimerJS]  
| [https://subversion.apache.org/ Subversion]   || https://svn.mozilla.org ''(Planning to decommission in near future)'' || Unknown
| |{{FSFDirNo|SlimerJS}}
          || Scriptable browser, based on Gecko, used for functional tests in some few Mozilla projects  ( [[PluotSorbet]], some FxOS apps ? and others ?) || Unknown
|-
|-
| [https://www.sqlite.org/ SQLite]
| [http://http://suricata-ids.org/ suricata]                   || IDS / IPS / NSM engine || Michal Purzynski
| |{{FSFDir|SQLite}}
            || File-based database || khuey
|-
|-
| [http://learnboost.github.io/stylus/ Stylus]  
| [https://travis-ci.org/ Travis]               || Continuous integration system used by several teams (eg Treeherder) || Jonathan Griffin's team
| |{{FSFDir|Stylus}}
            || CSS Pre-processor on several sites || webdev
|-
|-
| [https://subversion.apache.org/ Subversion]  
| [https://github.com/mitchellh/vagrant Vagrant]|| Build and distribute dev envs, used by Treeherder and others || Member of Jonathan Griffin's team
| |{{FSFDir|Subversion}}
  || https://svn.mozilla.org ''(Planning to decommission in near future)'' || Unknown
|-
|-
| [http://http://suricata-ids.org/ suricata]
| [http://valgrind.org/ Valgrind]               || Memory error detection and profiling of C and C++ code || jseward, njn
| |{{FSFDirNo|suricata}}
                  || IDS / IPS / NSM engine || Michal Purzynski
|-
|-
| [https://travis-ci.org/ Travis]      
| [http://vim.org/ vim] || editor used by many developers ||
| |{{FSFDir|Travis}}
        || Continuous integration system used by several teams (eg Treeherder) || Jonathan Griffin's team
|-
|-
| [https://github.com/mitchellh/vagrant Vagrant]
| [https://github.com/w3c/web-platform-tests web-platform-tests] || Testcases and tooling for cross-browser testing of web-platform APIs                                            || jgraham
| |{{FSFDirNo|Vagrant}}
|| Build and distribute dev envs, used by Treeherder and others || Member of Jonathan Griffin's team
|-
|-
| [http://valgrind.org/ Valgrind]  
| [http://www.webrtc.org WebRTC.org]            || Components to support real-time communication in browsers and mobile applications || Randell Jesup
| |{{FSFDir|Valgrind}}
           || Memory error detection and profiling of C and C++ code || jseward, njn
|-
|-
| [http://vim.org/ vim]  
| [http://www.wordpress.org WordPress]         || Powers our blogs, blog.mozilla.org || Craig Cook
| |{{FSFDir|Vim}}
|| editor used by many developers ||
|-
|-
| [https://github.com/w3c/web-platform-tests web-platform-tests]
| [https://xiph.org Xiph.Org]                   || Media codecs ship in Firefox, encoding tools || Ralph Giles
| |{{FSFDirNo|web-platform-tests}}
  ||  Testcases and tooling for cross-browser testing of web-platform APIs                                            || jgraham
|-
| [http://www.webrtc.org WebRTC.org] 
| |{{FSFDirNo|WebRTC}}
          || Components to support real-time communication in browsers and mobile applications || Randell Jesup
|-
| [http://www.wordpress.org WordPress] 
| |{{FSFDir|WordPress}}
        || Powers our blogs, blog.mozilla.org || Craig Cook
|-
| [https://xiph.org Xiph.Org]  
| |{{FSFDir|Xiph}}
              || Media codecs ship in Firefox, encoding tools || Ralph Giles


|}
|}

Revision as of 14:45, 29 October 2015

This is an incomplete list of the free software and open source projects Mozilla relies upon. As a starting point, it lists each project along with a short statement of how we depend on it. Where practical it would also be helpful to identify a Mozillian most closely associated with our use of each project, as next steps will involve contacting each one to find out more about how we can best provide support.

This is a work in progress - please contribute to this list.

Project Description Contact within Mozilla
angular.js Used by A-Team for web apps (eg Treeherder) Member of Jonathan Griffin's team
Apache Server Used by A-Team for web apps Member of Jonathan Griffin's team
Ansible Used by IT (netops) and A-Team to manage deployments jbarnell , GPS?
BabelJS JavaScript compiler, Used by Gaia, TaskCluster team Selena Deckelmann
Blessings Terminal formatting lib used by mozilla-central build process Erik Rose
Bootstrap HTML/CSS/JS framework, used by many of Mozilla's sites. Webdev
bro The Bro Network Security Monitor Michal Purzynski
BuildBot The base system currently in use for release automation (due to be replaced by Task Cluster) Chris AtLee
Bugzilla (upstream) The base Bugzilla on that we customize for Mozilla's use Glob
Celery Distributed task queue. Used by Treeherder and others. Member of Jonathan Griffin's team
CKEditor WYSIWYG editor on MDN
Clang/LLVM C/C++ compiler and infrastructure Ehsan Akhgari
CodeMirror Used in DevTools, Thimble, and other online code tools David Humphrey/Simon Wex
ConEmu Console emulator for Windows. Used by devs running Windows. Ed Morley
Debian Used on many developer boxes Unknown (maybe Sylvestre Ledru) or glandium
Discourse Community, Webmaker, Advocacy, et al Community Ops (Yousef Alam or Tanner Filip)
Django Backend web framework used on many of our websites, including addons.mozilla.org, marketplace.mozilla.org, support.mozilla.org, Input, Snippets, MDN (Mozilla Developer Network), mozilla.org, Treeherder Andy McKay and Jannis Leidel are (or have been) on the Django Software Foundation board, Jannis is core team member
Django REST framework API framework. Used by various Mozilla sites including MDN, Firefox marketplace, mozilla.org, support.mozilla.com. Andy McKay and Jannis Leidel
Docker Used by release engineering for Linux build and test containers and by ateam for managing test and production services. Used by many Mozilla websites as well such as addons.mozilla.org, marketplace.mozilla.org. (Plus docker-compose and docker machine) Member of Selena Deckelmann's team
elasticsearch Search engine for various web sites and analytics Erik Rose
emacs Programmable editor used by many developers
Etherpad Used for meeting notes, etc JP Schneider
flake8 Wrapper around Python linters. Used by Treeherder and others. Member of Jonathan Griffin's team
Flask Python web framework Erik Rose
Font Awesome Font and CSS toolkit, used by many of Mozilla's sites. Webdev
GCC C/C++ compiler and infrastructure Unknown
Git Version control system - https://git.mozilla.org Unknown
gunicorn Python WSGI HTTP Server. Used by Treeherder, Socorro, Pontoon. Webdev
HarfBuzz International text shaping engine used in Firefox/Servo Platform team
Hunspell Spellchecking engine Unknown
Hyphen Hyphenation library Unknown
Intern Intern is a complete test system for JavaScript designed to help you write and run consistent, high-quality test cases for your JavaScript libraries and applications. jrgm/vladikoff
jemalloc Memory allocation library We can ask glandium
Jenkins CI Continuous integration system used by WebQA and EE Unknown
jQuery JavaScript library, used by many of Mozilla's sites. Webdev
Kombu Messaging library for Python. Used by Treeherder and others. Member of Jonathan Griffin's team
libjpeg-turbo JPEG decoding library Jeff Muizelaar
libpng PNG decoding library Jeff Muizelaar
libvpx (Google) Library for support of Google’s VP* family of codecs Tim Terriberry
Linux OS kernel used in Firefox OS Unknown
lodash JavaScript utility library, used by many of Mozilla's sites. Webdev
Mailman Mailing lists Unknown
MediaWiki You are reading this on a wiki Sheeri Cabral
Mercurial Version control system and source code management GPS
Mohawk Python library for Hawk HTTP authorization. Used by Treeherder and others. Member of Jonathan Griffin's team
mozdef Security event monitoring and incident response Jeff Bryner
msys Used to build Firefox on Windows. Note: It's likely best we support the newer MSYS2 project instead: https://github.com/msys2 Unknown
MySQL Open source relational DB used by many developers, including AMO, SUMO, Input, bugzilla, releng, adminstered by IT Sheeri Cabral
Nagios IT management system. Used for notifications of system failures Sheeri Cabral, Ashish V.
netsniff-ng Linux networking toolkit Michal Purzynski
nICEr Library for traversing firewalls Unknown
NixOS Reproducible Linux distribution. Used by some developers and for running benchmarks on Firefox OS for AreWeFastYet Nicolas B. Pierron
Node.js JavaScript runtime for server side applications, command line utilities Nick Desaulniers
nrappkit Toolkit for building standalone applications Unknown
OpenH264 (Cisco) H.264 video library Unknown
OpenResty a fast web app server by extending nginx, used by cloudops Benson Wong (mostlygeek)
OpenSSH Remote server management, secure transport for Git and Mercurial Unknown
OpenLDAP User management used by Infra :jabba?
inspircd Irc server used by mozilla Unknown
OpenSSL Cryptograpahy and TLS Toolkit Nick Desaulniers
OWASP ZAP Web security testing tool used by security and QA teams Simon Bennetts (psiinon)
Owncloud Open platform to host your cloud under your control Some communities have been using it to host files under their control (ask Nukeador)
Parsimonious Parsing lib used by DXR and a few other sites (I think) Erik Rose
PDF.js Used as the PDF Viewer in Firefox and Firefox OS Brendan Dahl, Yury Delendik
pep8 Python linter. Used by Treeherder and others. Member of Jonathan Griffin's team
Perl Used by Bugzilla Member of Jonathan Griffin's team
Phalcon PHP Framework Phalcon is an open source web framework delivered as a C extension for the PHP language providing high performance and lower resource consumption. Andres Gutierrez is one of the core developers of Phalcon and its inspiration.
pip Python package tool. Used by all Python projects. Erik Rose and Jannis Leidel, Jannis is core team member (PyPA)
Piwik Analytic software that gives you the control and respects privacy Some communities have been using it to avoid GA analytics (Ask Nukeador)
Pocketsphinx Speech recognition toolkit embedded into Firefox OS André Natal
PostgreSQL Open source relational DB used by many developers, adminstered by IT Selena Deckelmann
Prism.js Syntax highlighting on code samples on MDN
Puppet System administration tool Member of Amy Rich's team
pyflakes Python linter. Used by Treeherder and others. Member of Jonathan Griffin's team
pytest Python testing tool. Used by Treeherder and others. Member of Jonathan Griffin's team
Python Scripting language Python Software Foundation, Selena Deckelmann is a former board member
pyelasticsearch Python client for elasticsearch Erik Rose
RabbitMQ Distributed Queue, used by Socorro, Pulse (all our publicly available build/test/commit information flows through this), Treeherder, addons.mozilla.org (with Celery), marketplace.mozilla.org (with Celery) Selena Deckelmann
Read the Docs Hosted automatically-built documentation, used by Cloud Services and a wide variety of mozilla Github projects Ben Bangert, Jannis Leidel, Gervase Markham
Requests "Python HTTP Requests for Humans". Used by many many Mozilla Python projects. Member of Jonathan Griffin's team
Review Board The base of MozReview, the new review tool being developed to replace Splinter Steven MacLeod, Mike Conley
Selenium Browser test driver stephend/AutomatedTester or jrgm/vladikoff
SlimerJS Scriptable browser, based on Gecko, used for functional tests in some few Mozilla projects ( PluotSorbet, some FxOS apps ? and others ?) Unknown
SQLite File-based database khuey
Stylus CSS Pre-processor on several sites webdev
Subversion https://svn.mozilla.org (Planning to decommission in near future) Unknown
suricata IDS / IPS / NSM engine Michal Purzynski
Travis Continuous integration system used by several teams (eg Treeherder) Jonathan Griffin's team
Vagrant Build and distribute dev envs, used by Treeherder and others Member of Jonathan Griffin's team
Valgrind Memory error detection and profiling of C and C++ code jseward, njn
vim editor used by many developers
web-platform-tests Testcases and tooling for cross-browser testing of web-platform APIs jgraham
WebRTC.org Components to support real-time communication in browsers and mobile applications Randell Jesup
WordPress Powers our blogs, blog.mozilla.org Craig Cook
Xiph.Org Media codecs ship in Firefox, encoding tools Ralph Giles