All Projects → PolymerLabs → Polydev

PolymerLabs / Polydev

Automatic web components profiling in chrome devtools

Projects that are alternatives of or similar to Polydev

Paper Timezone
Polymer based timezone selection component
Stars: ✭ 19 (-83.9%)
Mutual labels:  web-components, polymer
Vaadin Charts
Vaadin Charts is a feature-rich interactive graph library that answers the data visualization needs of modern web applications
Stars: ✭ 47 (-60.17%)
Mutual labels:  web-components, polymer
Contactlab Ui Components
DEPRECATED - Basic UI components for ContactLab UX design pattern library
Stars: ✭ 31 (-73.73%)
Mutual labels:  web-components, polymer
Web Component Tester
Moved to Polymer/tools monorepo
Stars: ✭ 571 (+383.9%)
Mutual labels:  web-components, polymer
React Perftool
A browser developer tool extension, which will help you to inspect the performance of React Js components.
Stars: ✭ 90 (-23.73%)
Mutual labels:  chrome-extension, chrome-devtools
Dirac
A Chrome DevTools fork for ClojureScript developers
Stars: ✭ 732 (+520.34%)
Mutual labels:  chrome-extension, chrome-devtools
Chrome Devtools Autosave
Auto-saving CSS and JavaScript changes from the Chrome Developer Tools
Stars: ✭ 1,032 (+774.58%)
Mutual labels:  chrome-extension, chrome-devtools
Vaadin
An evolving set of open source web components for building mobile and desktop web applications in modern browsers.
Stars: ✭ 424 (+259.32%)
Mutual labels:  web-components, polymer
Polymer Bundler
Moved to Polymer/tools monorepo
Stars: ✭ 1,206 (+922.03%)
Mutual labels:  web-components, polymer
Flip Clock
A flip clock, timer and countdown made with Polymer
Stars: ✭ 69 (-41.53%)
Mutual labels:  web-components, polymer
Lighthouse
Automated auditing, performance metrics, and best practices for the web.
Stars: ✭ 23,903 (+20156.78%)
Mutual labels:  performance-metrics, chrome-devtools
Polymer Build
Moved to Polymer/tools monorepo
Stars: ✭ 107 (-9.32%)
Mutual labels:  web-components, polymer
Polymer
Our original Web Component library.
Stars: ✭ 21,723 (+18309.32%)
Mutual labels:  web-components, polymer
Gdg.es
The GDG Spain official website
Stars: ✭ 16 (-86.44%)
Mutual labels:  web-components, polymer
Polymer Cli
Moved to Polymer/tools monorepo
Stars: ✭ 518 (+338.98%)
Mutual labels:  web-components, polymer
Ec Devtools
ec-devtools是支持canvas库 ( easycanvas , https://github.com/chenzhuo1992/easycanvas ) 的chrome调试工具,能对canvas的元素的样式、物理属性等进行修改,达到所见即所得的效果,提高调试效率
Stars: ✭ 35 (-70.34%)
Mutual labels:  chrome-extension, chrome-devtools
Web Components Todo
A simple todo list built with various Web Components technologies
Stars: ✭ 368 (+211.86%)
Mutual labels:  web-components, polymer
Vaadin Core
An evolving set of free, open source web components for building mobile and desktop web applications in modern browsers.
Stars: ✭ 382 (+223.73%)
Mutual labels:  web-components, polymer
L2t Paper Slider
Polymer element for displaying slides in a carousel
Stars: ✭ 53 (-55.08%)
Mutual labels:  web-components, polymer
Gulp Vulcanize
Concatenate a set of Web Components into one file
Stars: ✭ 101 (-14.41%)
Mutual labels:  web-components, polymer

polydev

polydev is the Polymer DevTools Extension - a tool to help develop Polymer and custom elements. Currently it's focused on performance tracking of web components.

How to Use

  1. Install the extension.
  2. On a page that uses web components, make a timeline recording.
  3. Look under the User Timing section of the timeline to track time spent in custom element lifecycle callbacks, as well as time spent reacting to Polymer databinding changes.

How to read the results

Screenshot of a recorded timeline

Each web component lifecycle callback will be annotated as a span in the timeline called a measure, representing the time that it took. If a measure is below another measure, the lower callback took place during the higher callback.

Each measure that polydev produces has a unique name like [WC] created paper-icon-button 5. The format is [WC] callbackName tagName id. The id numbers are on a per instance and per tag basis and count up from zero.

API

polydev exposes a method on the host page called _getElementMeasures. It returns an array of ElementMeasure objects, which obey the following interface:

interface ElementMeasurement {
  tagName: string;
  operation: string;
  elementId: number|undefined;
  duration: number;
  start: number;
  end: number;
}

Development

Building

polydev must be built before running. The build step externalizes inline scripts for CSP compliance, and copies some dependencies into convenient locations.

To build, run npm run build:

> npm run build

The built project is available at build/polydev.

Installation

  1. Create a new Chrome profile
  2. Navigate to chrome://extensions
  3. Check the "Developer mode" checkbox
  4. Click "Load unpacked extension..."
  5. Choose polydev/build/polydev

Dev flow

When changing files in src/ the dev workflow should work cover most use cases.

> npm run dev

Depending on the change you can either then close and reopen the devtools, or if you've made a change to the content-script or to element-zones, you must reload both the extension and any page you're testing it on.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].