0.0.6 • Published 7 years ago

favicons-webpack-plugin-cesco v0.0.6

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

Favicons Webpack Plugin

npm version Dependency Status Build status js-semistandard-style

Allows to use the favicons generator with webpack

Installation

You must be running webpack on node 4.4.x or higher

Install the plugin with npm:

$ npm install --save-dev favicons-webpack-plugin

Basic Usage

Add the plugin to your webpack config as follows:

let FaviconsWebpackPlugin = require('favicons-webpack-plugin')

...

plugins: [
  new FaviconsWebpackPlugin('my-logo.png')
]

This basic configuration will generate 37 different icons for iOS devices, Android devices and the Desktop browser out of your my-logo.png file. It can optionally also generate a JSON file with all information about the icons for you.

If you are using with html-webpack-plugin it will also inject the necessary html for you:

https://github.com/jantimon/favicons-webpack-plugin/blob/master/test/fixtures/expected/default-with-html/index.html

  <link rel="apple-touch-icon" sizes="57x57" href="icons-366a3768de05f9e78c392fa62b8fbb80/apple-touch-icon-57x57.png">
  <link rel="apple-touch-icon" sizes="60x60" href="icons-366a3768de05f9e78c392fa62b8fbb80/apple-touch-icon-60x60.png">
  <link rel="apple-touch-icon" sizes="72x72" href="icons-366a3768de05f9e78c392fa62b8fbb80/apple-touch-icon-72x72.png">
  ...
  ...
  <link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" href="icons-366a3768de05f9e78c392fa62b8fbb80/apple-touch-startup-image-1536x2008.png">

Advanced Usage

plugins: [
  new FaviconsWebpackPlugin({
    // Your source logo
    logo: 'my-logo.png',
    // The prefix for all image files (might be a folder or a name)
    prefix: 'icons-[hash]/',
    // Emit all stats of the generated icons
    emitStats: false,
    // The name of the json containing all favicon information
    statsFilename: 'iconstats-[hash].json',
    // Generate a cache file with control hashes and
    // don't rebuild the favicons until those hashes change
    persistentCache: true,
    // Inject the html into the html-webpack-plugin
    inject: true,
    // favicons config (see https://github.com/haydenbleasel/favicons#usage)
    config: {
      appName: 'App Name',
      appDescription: 'App description',
      appleStatusBarStyle: 'black-translucent',
      background: "#fff",
      theme_color: "#fff",
      lang: 'en-US',
      display: "standalone",
      orientation: "portrait",
      start_url: "/?homescreen=1",
      icons: {
        android: true,              // Create Android homescreen icon. `boolean` or `{ offset, background, shadow }`
        appleIcon: true,            // Create Apple touch icons. `boolean` or `{ offset, background }`
        appleStartup: true,         // Create Apple startup images. `boolean` or `{ offset, background }`
        coast: { offset: 25 },      // Create Opera Coast icon with offset 25%. `boolean` or `{ offset, background }`
        favicons: true,             // Create regular favicons. `boolean`
        firefox: true,              // Create Firefox OS icons. `boolean` or `{ offset, background }`
        windows: true,              // Create Windows 8 tile icons. `boolean` or `{ background }`
        yandex: true                // Create Yandex browser icon. `boolean` or `{ background }`
      }
    }
  })
]

Changelog

Take a look at the CHANGELOG.md.

Contribution

You're free to contribute to this project by submitting issues and/or pull requests. This project is test-driven, so keep in mind that every change and new feature should be covered by tests. This project uses the semistandard code style.

License

This project is licensed under MIT.