Firebug Lite 1.3 alpha release
Spread the word: New Firebug Lite 1.3 alpha released We are releasing an alpha version of the next generation of Firebug Lite. If you would like to test this version, please star this issue so you can receive updates about the alpha versions, or follow up the discussion.
This version was conceived to put the Firebug Lite in a new level, by allowing code reuse from Firebug's original codebase. A new core was created to accomplish the following goals:
Performance - the core of Firebug Lite 1.3 was rewritten from scratch taking the performance into account in the first place.
Modularity - the code is now more modular, making easier the process of adding new features and UI components such as panels, buttons, menus etc. The modularity also helps the development process. Once the modules can be isolated it is easier to detect the cause of complicated problems like memory leaks.
Shared code - the core was designed to make it possible to port some code directly from the Firebug source, with as few as possible modifications. As a result, some features and UI elements behave exactly as in Firebug.
Compatibility - the new core is compatible with XHTML and XML+XSL documents. Thanks to the new context-independent approach, it supports now the experimental persistent popups feature (popups that "live" across different page loads of the same domain), and will support cross-iframe inspection in the next version.
2. What's New?
- Port of Firebug's Visual Object Representation (aka Reps)
- Recreation of Firebug 1.3 User Interface with pixel precision
- Menu options
- Resizable sidePanel
- Skinnable Interface
- Full BoxModel Highlight including margin, border, padding and content boxes
- The BoxModel is highlighted when you move your mouse over a representation of a HTML element, in any of the place of the User Interface
- Elements are selected on-the-fly while using the Inspect tool
- console.group() and console.groupEnd()
- console.trace() (thanks dongryphon for the contribution!)
- command line API functions $(), $$(), and dir()
- command line shortcuts $0 and $1 for recent selected elements
- autocomplete (tab, shift+tab)
- can capture console messages before DOM document creation when installed at the HTML header)
- XHR watcher (works better when you load the script in the HEAD of your document)
- Port most of the Firebug Library (aka Lib, FBL)
- Port the Firebug DOM Templates Engine (aka Domplate), the magic behind Reps
- Plugin system like Firebug
- Context-independent (will allow cross-iframe debugging, and persistent popups)
- Persistent popups
- Synchronization across different windows (iframe, popup)
- Fixed problem with Internet Explorer and inline styles representation (thanks christophe.blin for the contribution!)
- For a complete list of changes, check the changelog.
1.2. What's missing in Firebug Lite 1.3?
Here are the features that are still missing, but should be available in the final Firebug Lite 1.3 release:
- Live editing CSS rules
- CSS cascading view
- CSS inheritance view
1.3. What's Not in Lite?
Some features are not included in Firebug Lite 1.3, but due the new core that supports code sharing from Firebug, are likely to be included in the Firebug Lite 1.4 version:
- Live editing for all panels
- Layout Panel
- Context menu options
- Tooltips (to show colors and images)
- Search feature
Other features though are too dependent in browser internals and will not be supported (at least in a near future*), such as:
- Net panel / HTTP and XHR monitor
- Access to restricted URI resources
- Highlight HTML changes
Bookmark the following links:
**The trace enabled bookmarlet is intended to help identify error in Firebug Lite. If you find a bug, run the trace enabled bookmarlet and look for something strange in the logs.
b) Live link
You can also link directly to the hosted version at getfirebug.com. Copy the following code, and paste it in the TOP of the HEAD of your document:
c) Local link (offline)
If you need using Firebug Lite while offline, download the code, copy to a local destination, and link the firebug.jgz in the TOP of the HEAD of your document.
d) Development mode:
If you want to debug Firebug Lite, fix a bug, or add a new feature, you will want to run the Firebug Lite in development mode. To do so, first checkout the latest version in our repository, and then insert a script at the TOP of the HEAD of your document.
When in development mode, some things behave quite differently to make the development process easier, such as:
- All script files are loaded separately, without compression.
- The internal library that Firebug Lite uses (aka FBL) is exposed to the global namespace, allowing you to inspect its content. It is also exposed the domplate and its classes, and the FBTrace object
- The skin is loaded in a separated file, allowing you to rapidly change the style and/or markup of the User Interface.
- It will force to open Firebug Lite even when Firebug is active (which is not the default behavior), so you can use Firebug to debug it.
- A new panel "Dev" will be available with tools to compress the skin, and the source code of the application in a single file.
The properties you can change include (with respective default values):
You can change the options using any of the following methods (in ascendant order of priority):
For backwards compatibility you can still use the debug="true" attribute in the <html> tag to make Firebug Lite starts opened, like:
b) Script URL options
You can also set the options using URL fragment, specially handy to tweak options in your bookmarlet.
Options are separated by commas (
,), and values are informed using
the equals to (
=) symbol. If no value is informed, it is
is equivalent to:
c) Script JSON options
It is possible to set options using a JSON object inside the linked script:
Finally, you can override the options using cookies, via User Interface, by clicking in the Firebug icon in the upper-left corner.
5. What to test?
That's a lot of things to test, but we're particularly interested in make sure the core of the application is working well before we move on to the beta stage. Here are the list of the most important things to test:
Firebug Lite should run fine no matter how it was loaded.
Bookmarlet - the current bookmarlet used in both Firebug Lite 1.2 and 1.3 versions contains some problems and limitations (it won't load for example in XHTML and/or XML+XSL documents). We're particularly insterested in find such problems in the bookmarlet now we're in alpha stage, because updating bookmarlets is a boring task, and should be done by the user individually, in each browser.
Local include - Firebug Lite should load fine when using relative paths in the URL (when loaded locally).
Live include - Firebug Lite should load fine when loaded directly from getfirebug.com.
Please report us if you see some weird behavior in the User Interface, such as misplaced elements, elements not rendered, abnormal flickering, partial rendered panels, or any other visual weirdness.
5.4. Document Types
Firebug Lite should work in different types of documents such as XHTML and/or XML+XSL documents.
Your contribution is very important. Found a bug? Have a suggestion? Please report us.
Spread the word: New Firebug Lite 1.3 alpha released Last, but not least, you can also helping us by spreading the word, inviting more people to test this new version. Feel free to post about it in your blog, social network, or use the retweet button on the left.