npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

videojs-font

v4.2.0

Published

Video.js icon font

Downloads

2,151,365

Readme

Video.js Icon Font

This project contains all of the tooling necessary to generate a new icon font for Video.js. The icons themselves are from Google's Material Design Icons (from the commonly available version 3 of the set, with version 4 symbols supplemented as custom SVGs) and Font Awesome.

You can see an overview of the icons used in the default Video.js font here: https://videojs.github.io/font/

Usage

$ npm install grunt-cli # only if you don't already have grunt installed
$ npm install
$ grunt

Custom icons

You can add custom icons by calling grunt with the --custom-json option. It takes a comma delimited list of paths to JSON files of the same format as below and merges it with the default icons file.

Example:

$ grunt --custom-json=./lib/custom.json,./lib/custom2.json

Making changes to the font

To make changes to the default Video.js font, simply edit the icons.json file. You can add or remove icons, either by just selecting new SVGs from the Material Design set, or pulling in new SVGs altogether.

{
  "font-name": "VideoJS",
  "root-dir": "./node_modules/material-design-icons/",
  "icons": [
    {
      "name": "play",
      "svg": "av/svg/production/ic_play_arrow_48px.svg"
    },
    {
      "name": "pause",
      "svg": "av/svg/production/ic_pause_48px.svg"
    },
    {
      "name": "cool-custom-icon",
      "svg": "neato-icon.svg",
      "root-dir": "./custom-icons/neato-icon.svg"
    }
  ]
}

Once you're done, simply run grunt again to regenerate the fonts and scss partial. To edit the _icons.scss partial, update templates/scss.hbs.

Creating your own font

If you are developing a Video.js plugin that uses custom icons, you can also create a new font instead of modifying the default font. Simply specify a new font-name and define the icons you want to include:

{
  "font-name": "MyPluginFont",
  "root-dir": "./node_modules/material-design-icons/",
  "icons": [
    {
      "name": "av-perm",
      "svg": "action/svg/production/ic_perm_camera_mic_48px.svg"
    },
    {
      "name": "video-perm",
      "svg": "av/svg/production/ic_videocam_48px.svg"
    },
    {
      "name": "audio-perm",
      "svg": "av/svg/production/ic_mic_48px.svg"
    }
  ]
}

Generate the MyPluginFont font files using the --custom-json option:

$ grunt --custom-json=MyPluginFont.json

Exclude default icons

By default, the regular Video.js icons are also included in the font. If you want to exclude these icons, when you're creating a Video.js plugin font for example, use the --exclude-default option.

Example:

$ grunt --custom-json=MyPluginFont.json --exclude-default

Icon unicode strings

Videojs-font generates unicode strings for default and custom icons which are used as css pseudo-element content values by the videojs-icons.css file.

Version 4 default unicode values

| Icon Name | Unicode | | ---------- | ------- | | play | 'f101' | | play-circle | 'f102' | | pause | 'f103' | | volume-mute | 'f104' | | volume-low | 'f105' | | volume-mid | 'f106' | | volume-high | 'f107' | | fullscreen-enter | 'f108' | | fullscreen-exit | 'f109' | | spinner | 'f10a' | | subtitles | 'f10b' | | captions | 'f10c' | | hd | 'f10d' | | chapters | 'f10e' | | downloading | 'f10f' | | file-download | 'f110' | | file-download-done | 'f111' | | file-download-off | 'f112' | | share | 'f113' | | cog | 'f114' | | square | 'f115' | | circle | 'f116' | | circle-outline | 'f117' | | circle-inner-circle | 'f118' | | cancel | 'f119' | | repeat | 'f11a' | | replay | 'f11b' | | replay-5 | 'f11c' | | replay-10 | 'f11d' | | replay-30 | 'f11e' | | forward-5 | 'f11f' | | forward-10 | 'f120' | | forward-30 | 'f121' | | audio | 'f122' | | next-item | 'f123' | | previous-item | 'f124' | | shuffle | 'f125' | | cast | 'f126' | | picture-in-picture-enter | 'f127' | | picture-in-picture-exit | 'f128' | | facebook | 'f129' | | linkedin | 'f12a' | | twitter | 'f12b' | | tumblr | 'f12c' | | pinterest | 'f12d' | | audio-description | 'f12e' |