Firebug (software)
Firebug 2.0.1 running in Firefox 30.0 under Windows 7 with the HTML panel active on the main Wikipedia page. | |
Original author(s) | Joe Hewitt |
---|---|
Developer(s) | Firebug Working Group |
Stable release |
2.0.16[1]
/ March 30, 2016 |
Repository |
github |
Written in | JavaScript, XUL, CSS |
Operating system | Cross-platform |
Type | Mozilla extension[2] |
License | New BSD License[3] |
Website |
getfirebug |
Firebug was a free and open-source[4] web browser extension for Mozilla Firefox[2] that facilitated the live debugging, editing, and monitoring of any website's CSS, HTML, DOM, XHR, and JavaScript.[5]
Firebug was licensed under the BSD license[3] and was initially written in January 2006 by Joe Hewitt, one of the original Firefox creators.[6] The Firebug Working Group oversees the open source development and extension of Firebug. It had two major implementations: an extension for Mozilla Firefox and a bookmarklet implementation called Firebug Lite[7] which can be used with Google Chrome.[8]
In addition to debugging web pages, Firebug was used for web security testing[9] and web page performance analysis.[10]
Version history
Version 2.0
Firebug 2.0 introduced many new features to the Firebug extension including JavaScript syntax highlighting, pretty print for minified JavaScript code, and a DOM Event Inspector to handle all event handlers on a web page. Additionally, users can search for page elements using CSS selectors in the search bar. The debugging tool now allows users to inspect JavaScript expressions as they are evaluated. Moreover, users can inspect values returned from JavaScript functions. It also adds the ability to create new HTML attributes for existing HTML elements.[11]
Version 3.0
On November 10, 2014, Firebug 3.0 was announced and an alpha was made available to the public.[12] This version was to feature a new theme and would have focused on user experience.
Features
Firebug makes changes immediately and gives constant feedback to the user. All editors in Firebug support autocomplete.[11]
The Firebug command line accepts commands written in JavaScript. The result of executing each command is displayed in the console, appearing as hyperlinks. The Firebug application contains multiple windows, splitting related features to a common window.[13] Firebug also allows users to view the download time for individual files. It separates different types of objects, such as JavaScript files and images, and can determined which files are loaded from a browser's cache. Firebug also features the ability to examine HTTP headers and time stamps relative to when an HTTP request is made.[14] Its net panel can monitor URLs that the browser requests, such as external CSS, JavaScript, and image files.
HTML and CSS
The HTML and CSS tools allow for the inspection and editing of HTML and CSS elements on a web page.[15] Later versions of Firebug allow users to see live changes to the CSS.[11] Visualization of CSS elements is shown while inspecting HTML elements. The Firebug layout tab is used to display and manipulate CSS property values. Furthermore, users can click on any visible HTML elements on a web page to access its CSS property values.[16]
JavaScript Console
Firebug's script tab enables users to set breakpoints and step through lines of code.[17] Additionally, Firebug can navigate directly to a line of JavaScript code, watch expressions, call stacks, and launch the debugger in the event an error occurs during execution. Firebug can also log errors. Logging uses a Firebug JavaScript API. Firebug's JavaScript panel can log errors, profile function calls, and enable the developer to run arbitrary JavaScript. Firebug allows users to run JavaScript code through the command line and allows the user to log errors that occur in the JavaScript, CSS, and XML. Firebug provides a separate text editor to modify the JavaScript and see immediate results on the user's browser.
As provided in an update, the JavaScript command line features an autocomplete function. The text editor also provides the ability to write full functions. Firebug requires a user to refresh a web page in the event of a crash.
Extensions
Many extensions have been made to enhance Firebug. Since Firebug is open source, users can contribute their own extensions to the Firebug community.[18]
FlashFirebug
FlashFirebug is a paid Firebug extension[19] that helps Flash and Flex developers debug Adobe SWF files on the web. FlashFirebug was developed by O-Minds[20] and is licensed under the GPLv3.
In February 2012, O-Minds purchased the code to FlashBug,[21] a competing Firefox extension. Flashbug had extensive capabilities to parse AMF and Shared Objects objects and partially decompile Adobe SWF files directly in the browser.[21] Soon after the purchase, O-Minds integrated key features of FlashBug into FlashFirebug and retired Flashbug[22] from the AMO repository.
Currently the extension displays textual Output from trace() commands within the Adobe SWF movie,[20] a Display Tree with the hierarchy of display objects and their properties,[20] viewers for AMF and Shared Objects,[20] and a tool to modify the 3D transformation of any display object on the stage.[20]
See also
- Flash of unstyled content
- Google Chrome Inspector
- Internet Explorer Developer Tools
- Opera Dragonfly
- Safari (web browser)#Features (Web Inspector)
References
- ↑ "Firebug Version History". Mozilla extension. 2016-03-30.
- 1 2 Mozilla Firefox Add-on
- 1 2 Overview of Firebug
- ↑ Firebug on GitHub
- ↑ Firebug Home Page
- ↑ O'Reilly Performance Tools: Appendix - Even Faster Websites
- ↑ Firebug Lite Homepage
- ↑ Firebug Lite for Chrome
- ↑ Hope, Paco; Walther, Ben (2008), Web Security Testing Cookbook, Sebastopol, CA: O'Reilly Media, Inc., ISBN 978-0-596-51483-9
- ↑ "High Performance Web Sites", Steve Souders, CACM, Dec, 2008.
- 1 2 3 Odvarko, Jan. "Firebug 2.0 Release". Firebug Working Group. Retrieved 15 October 2015.
- ↑ Odvarko, Jan. "Firebug 3.0 The Next Generation". Firebug Working Group. Retrieved 10 November 2014.
- ↑ Hewitt, J. (2007). Ajax debugging with firebug. Dr.Dobb's Journal, 32(2), 22-26.
- ↑ What is Firebug?
- ↑ Salkosuo, Sami. "Debug and tune applications on the fly with Firebug". IBM Developer Works. Retrieved 6 May 2008.
- ↑ Zukerman, Erez. "Debug Web Pages in Firefox With Firebug". PC World. Retrieved 6 January 2012.
- ↑ Suehring, Steve. "Identify JavaScript Problems with Firebug". Dummies.
- ↑ List of Known Firebug Extensions
- ↑ FlashFirebug Add-on Page
- 1 2 3 4 5 O-Minds FlashFirebug Product Page
- 1 2 Flashbug Project Page
- ↑ Flashbug Add-on Page
Further reading
- Luthra, Chandan; Mittal, Deepak (April 7, 2010). Firebug 1.5: Editing, Debugging, and Monitoring Web Pages (1st ed.). Packt Publishing. p. 224. ISBN 1-84719-496-6.