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

icon-numic-plugin

v1.4.4

Published

Generate icons for Android and iOS in React Native.

Downloads

29

Readme

icon-numic-plugin

Numic plugin for React Native to automatically generate iOS and Android app icons from a single file. Commit only one 1024x1024 file of your app icon but get all sizes automatically. Also supports the generation of adaptive icons for Android.

Installation

This plugin requires the project is managed through numic.

npm i --save-dev icon-numic-plugin

Usage

Numic automatically picks up the plugin once installed and adds the various icons to the native folders in /android and /ios without any changes to commit. The only thing required is an icon of the recommended size 1024x1024. The plugin will look for icons in the following locations and pick the first match:

  • icon.png / icon.svg
  • app-icon.png / app-icon.svg
  • asset/icon.png / asset/icon.svg
  • logo.png / logo.svg (also used as Avatar in SourceTree)

Configuration

The icon can be configured in package.json under the numic property. This will override default icon paths from the file system as described above.

{
  "name": "my-app",
  "numic": {
    "icon-numic-plugin": {
      "icon": "image/my-icon.png",
      // Convert transparent icons to a black background for iOS, default white.
      "iOSBackground": "#000000",
      // Generate Android adaptive icons from SVG images.
      "androidForeground": "image/my-adaptive-foreground.svg",
      "androidBackground": "image/my-adaptive-background.svg",
      // Pass native Android vector drawables in XML format.
      "androidForeground": "image/my-adaptive-foreground.xml",
      "androidBackground": "image/my-adaptive-background.xml",
      // Instead of "androidBackground" it's possible to just set a solid color.
      "androidBackgroundColor": "#FF0000",
    }
  }
}

Adaptive Icons for Android

Adaptive icons use vector graphics and are composed of a foreground and a background image. Due to using vector graphics only one image size is required. This plugin will generate all the required configuration files as well as the scaled legacy images in various sizes for older devices.

For web developers the easiest way to generate the vector drawables used on Android for adaptive icons is to convert from an SVG. The vector drawable specification is largely the same as SVG so this plugin is able to take SVG icons as input and convert them to XML files in the Android Drawable syntax. It's also possible to directly pass in XML files that are already in the vector drawable format. To generate vector drawables from scratch or debug the output of the conversion from SVG by this plugin, open the /android folder in Android Studio. There it's possible to edit and directly preview the images. To get a preview of the resulting images for various Android versions click Resource Manager on the left -> + icon -> Image Asset.

To avoid that parts of the foreground icon are cut off the icon should be centered and only take up about 60% of the width and height.