canvas-text-metrics-polyfill - A polyfill for the enhanced context

  •        69

A polyfill for the enhanced context.measureText() in HTML v5 / Canvas 2D Context Level 2. Based on The upcoming version of will offer a standard way to get 2D font metrics, via properties added to the TextMetrics object (returned by context.measureText()). This feature was drafted in March 2012, but virtually all current browsers (as of November 2014) still follow the older spec and only provide the TextMetrics.width property.



Related Projects

hidpi-canvas-polyfill - :computer: A JavaScript drop-in module to polyfill consistent and automatic HiDPI Canvas support

  •    Javascript

This is a drop-in polyfill to scale canvas appropriately to maintain sharpness in browsers that currently do not provide the appropriately scaled backing store to do this automatically.As of this writing Safari is the only browser that accounts for this.

css-paint-polyfill - A polyfill for the CSS Paint API, with special browser optimizations.

  •    Javascript

This is a polyfill for the CSS Paint API. Performance is quite good in Firefox and Safari courtesy of -webkit-canvas() and -moz-element(). For the remaining browsers, framerate is governed by Canvas toDataURL() / toBlob() speed.

react-metrics - An analytics module for React

  •    Javascript

An analytics module for React. React Metrics depends on Promise to be available in browser. If your application support the browser which doesn't support Promise, please include the polyfill.

HTML5-placeholder-polyfill - Small and robust polyfill for the HTML5 placeholder attribut.

  •    Javascript

Lightweight and very robust little jQuery plugin that generates the look and feel of the HTML5 placeholder attribute for browsers without native support. It also adds an extra title in case the placeholder text is too long to be displayed. The polyfill comes with an option to define if the placeholder text should be read to screenreaders or not (on by default). Since version 1.9 the default option is to make it behave like Chrome or mobile Safari (hide placeholder when the users enters content rather than when the fields receives focus). For more details on native support see the browser suppport table at

box-sizing-polyfill - A CSS box-sizing: border-box polyfill for IE 6/7


This box-sizing polyfill is based on previous work done by Erik Arvidsson, which he published in 2002 on WebFX. Since there were some edge/heavy usage cases where it broke I started pushing it further. And since the original was not aware of IE8 I also added feature-detection for box-sizing, to do nothing when detected positive.

inert - Polyfill for the inert attribute and property.

  •    Javascript

When a node is inert, then the user agent must act as if the node was absent for the purposes of targeting user interaction events, may ignore the node for the purposes of text search user interfaces (commonly known as "find in page"), and may prevent the user from selecting text in that node. Furthermore, a node which is inert should also be hidden from assistive technology.

text-encoding - Polyfill for the Encoding Living Standard's API

  •    Javascript

This is a polyfill for the Encoding Living Standard API for the Web, allowing encoding and decoding of textual data to and from Typed Array buffers for binary data in JavaScript. By default it adheres to the spec and does not support encoding to legacy encodings, only decoding. It is also implemented to match the specification's algorithms, rather than for performance. The intended use is within Web pages, so it has no dependency on server frameworks or particular module schemes.

balance-text - A plugin for implementing balancing of wrapping text in a web page

  •    Javascript

A utility to provide an alternate text wrapping algorithm. I hope to get this into the CSS spec, so it's implemented as an optional "polyfill". It already appears in the CSS Text Module Level 4 Editor's Draft. That algorithm guarantees that the text is rendered using the least number of lines, but when text is centered and wraps to more than 1 line, it can produce visually undesirable results such as a long line of centered text followed by a short line of centered text. What I want is for the text to be balanced across lines. By "balanced across lines", I mean that the text is rendered so that the amount of text on each line is about the same. This plugin implements a line-breaking algorithm to do that automatically.

dialog-polyfill - Polyfill for the HTML dialog element

  •    Javascript

<dialog> is an element for a popup box in a web page, including a modal option which will make the rest of the page inert during use. This could be useful to block a user's interaction until they give you a response, or to confirm an action. See the HTML spec. This polyfill works on modern versions of all major browsers. It also supports IE9 and above.

flexibility - A JavaScript polyfill for Flexbox

  •    Javascript

Flexibility is a polyfill for the Flexible Box Layout, commonly known as Flexbox. With Flexibility, you get to design beautiful, flexible layouts on the web without sacrificing the experience in older browsers. Flexbox lays out, aligns, and distributes elements in a container, even when their size is unknown or dynamic. To better understand Flexbox, read Chris Coyier’s excellent Complete Guide to Flexbox.

CanvasInput - HTML5 Canvas Text Input

  •    Javascript

CanvasInput recreates and improves a full DOM element within HTML5 Canvas. More documentation, examples and demos can be found at CanvasInput.

Taylor - Measure Swift code metrics and get reports in Xcode, Jenkins and other CI platforms.

  •    Swift

A tool aimed to increase Swift code quality, by checking for conformance to code metrics. Taylor uses SourceKitten to a more accurate AST representation and generates the final report in either Xcode, JSON, PMD or plain text formats.

background-size-polyfill - Adds support for background-size "cover" and "contain" to IE8

  •    Javascript

An IE behavior adding support for background-size to IE8. Progressive Enhancement is the mantra I live by. It means "Have fun with CSS3 and don't worry about IE8 users; they'll never notice they're missing out on your gorgeous text-shadows and gradients, anyway".

Placeholders.js - A JavaScript polyfill for the HTML5 placeholder attribute

  •    Javascript

Placeholders.js is a polyfill (or shim, or whatever you like to call it) for the HTML5 placeholder attribute, as defined in the HTML5 specification. Placeholder attributes are valid on input elements of various types and textarea elements. Placeholders.js is licensed under the MIT License. See the unminified file for the full license text.

Micrometer - An application metrics facade for the most popular monitoring tools

  •    Java

An application metrics facade for the most popular monitoring tools. Instrument your code with dimensional metrics with a vendor neutral interface and decide on the monitoring backend at the last minute. Micrometer is the instrumentation library underpinning Spring Boot 2.0's metrics collection.

SWFTools - Utilities to work with Adobe Flash files

  •    C

SWFTools is a collection of utilities for working with Adobe Flash files (SWF files). The tool collection includes programs for reading SWF files, combining them, and creating them from other content (like images, sound files, videos or sourcecode).

Texygen - A text generation benchmarking platform

  •    Python

Texygen is a benchmarking platform to support research on open-domain text generation models. Texygen has not only implemented a majority of text generation models, but also covered a set of metrics that evaluate the diversity, the quality and the consistency of the generated texts. The Texygen platform could help standardize the research on text generation and facilitate the sharing of fine-tuned open-source implementations among researchers for their work. As a consequence, this would help in improving the reproductivity and reliability of future research work in text generation. For more details, please refer to our SIGIR 2018 paper: Texygen: A Benchmarking Platform for Text Generation Models by Yaoming Zhu et al.

cufon - Fast text replacement with canvas and VML - no Flash or images required.

  •    Javascript

Fast text replacement with canvas and VML - no Flash or images required.

proxy-polyfill - Proxy object polyfill

  •    Javascript

This is a polyfill for the Proxy object, part of ES6. See the MDN docs or Introducing ES2015 Proxies for more information on Proxy itself. Unlike other polyfills, this does not require Object.observe, which is deprecated. The polyfill supports just a limited number of proxy 'traps'. It also works by calling seal on the object passed to Proxy. This means that the properties you want to proxy must be known at creation time.

promise-polyfill - Lightweight ES6 Promise polyfill for the browser and node. A+ Compliant

  •    Javascript

Lightweight ES6 Promise polyfill for the browser and node. Adheres closely to the spec. It is a perfect polyfill IE, Firefox or any other browser that does not support native promises. For API information about Promises, please check out this article HTML5Rocks article.