Git Product home page Git Product logo

marionette.inspector's Introduction

Marionette Inspector

Functionality

The inspector makes it possible to understand how your App works, without needing to understand how all the code works. This is possible because everything's one click away. You'll be amazed at how quickly this changes everything.

  • Visualize the view hierarchy with the UI tree
  • Visualize application activity with a full history of actions
  • Inspect view ui, events, listeners, properties
  • Inspect model attributes, listeners, properties
  • Explore Radio channel events, requests, commands
  • Explore application with an inspector magnifying glass
  • Jump between the inspector elements and source panel with intelligent links

Try it out on a live app!

Once you've installed the Chrome extension, open the DevTools, click on the "Marionette" tab, and inspect this app!

Marionette Wires


Getting Started

Download it

The inspector should work out of the box with most setups. You can download it from the Chrome Web Store.

Usage

  • Load the app in Google Chrome
  • Open the devtools (F12 or Ctrl + Shift + I)
  • Select Marionette tab
  • Click in 'Start the Inspector!' button

The extension icon next to URL bar has no functionality and can be ignored

Caveats

If you're either using Browserify or Webpack or not exposing Backbone & Marionette as globals, you'll need to add one block to your setup.

if (window.__agent) {
  window.__agent.start(Backbone, Marionette);
}

Note this line should be placed after all underscore, backbone, and marionette CommonJS require calls, but before Application or View classes are defined.

Since EcmaScript import statements are hoisted, i.e., always called in the start of the module, putting __agent.start call before the import of a module that defines an Marionette class will not work. See related issue. When using EcmaScript modules is recommended to put the __agent.start call in a separated module as in Marionette Wires

Frequently Asked Questions

If you have any additional questions, check out our FAQ.

Usage Analytics

The Inspector gathers usage analytics to better report on inspector statistics such as average weekly users and popular features as well as to report on marionette patterns such as library versions in usage and architectural / api patterns. If you would prefer to disable analytics it is easy to do so:

if (window.__agent) {
  window.__agent.disableAnalytics = true;
}

Current version does not implement usage analytics

Play with it locally

Follows these these steps in the Install Guide and you should be up and running in no time. Read the agent overview to understand how the inspector gathers all the information.

TLDR version

1. Download the Extension

git clone [email protected]:marionettejs/marionette.inspector.git

2. Build the Extension

npm i
npm run bower
grunt build

3. Install in Chrome

1. go to the Extensions tab in chrome > Window
2. check the "Developer Mode" checkbox
3. click the "Load unpacked extension" and select the extension folder in the repo

Open Source (a.k.a. you)

The inspector is built with 100% open source love. That means, we absolutely want your help and your passion. If you want to get involved, stop by and say hello here. We've got tons of help wanted tickets and would be be happy to setup a 30 minute screenhero pairing session to help you get started. Many of our contributions, even some of the best ones like the Activity pane, came from first time contributors.


Special Thanks

Etsy - The Inspector was largely built as an open-source project at Etsy.

Backbone-Debugger - The Inspector is built on top of the Backbone Debugger core, written in large part by @Maluen.


Screens

UI


Data


Radio


Activity

marionette.inspector's People

Contributors

akshaddhoke avatar armandabric avatar blikblum avatar cmaher avatar dnewkerk avatar gitter-badger avatar hacfi avatar ianmstew avatar jasonlaster avatar jdaudier avatar jklmli avatar josephahn avatar mattbryson avatar nerdpruitt avatar nikhilkalige avatar onelovelyname avatar paulfalgout avatar samccone avatar terrenceljones avatar timsnadden avatar vinnymac avatar vinzee avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.