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

image-to-icon-converter

v1.0.1

Published

Convert images (png/jpg/gif) to icons (icns/ico) with Iconfinder's Converter

Downloads

2,639

Readme

Image to icon converter

Convert images (png/jpg/gif) to icons (icns/ico)

This is a simple, unoffical node wrapper for Iconfinder's icon converter utility found here: http://labs.iconfinder.com/converter

Why?
Converting image files to the .icns format is surprisingly difficult to do programmatically on anything else than OSX (using Xcode). You got 'iconutil', 'sips' and 'libicns', but they are OSX only which leaves you in the dust when you want it to work on a linux webserver. Last resort are the myriad of online converters stuck in the 90s (and none of them have an API).

How?
Upload an image file through Iconfinder's API, they do their magic and you get an icon file back. Simple.

Features

  • Takes in any type of images (png/jpg/gif)
  • Outputs to most common icon types (icns/ico)
  • Returns A+/ES6 style promises
  • Supports streams so you can .pipe() files through

Installation

npm install image-to-icon-converter

Usage

Upload file from disk, convert it and get download URL:

var converter = require('image-to-icon-converter');
var file = __dirname + '/image.png';

converter.uploadConvertDownload(file, 'icns')
  .then(function(result) {
    // result is a URL to the resulting icon file
    console.log(result)
  });

If you supply it with a stream, it will return a stream too:

var converter = require('image-to-icon-converter');
var fs = require('fs');
var stream = fs.createReadStream(__dirname + '/image.png');

converter.uploadConvertDownload(stream, 'icns')
  .then(function(result) {
    // result is a stream of the icns file
    result.pipe(fs.createWriteStream('icon.icns'));
  });

You can also call each of methods individually (returns promises):

var converter = require('image-to-icon-converter');

converter.uploadStream(fileStream);
converter.uploadFile(pathToFile);
converter.convert(urlToFile, iconType);
converter.downloadFile(convertResult);
converter.downloadStream(convertResult);