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

flickr-upload

v1.0.2

Published

A simple Flickr uploader using OAuth that supports files, streams, and buffers.

Downloads

12

Readme

flickr-upload

A simple Flickr uploader using OAuth that supports files, streams, and buffers.

install

npm install flickr-upload

oauth credentials

OAuth tokens with "write" access are required to use flickr-upload, but flickr-upload does not handle getting them. If you use Google Chrome, you can easily generate them with flickr-oauth-dance.

usage

This shows the basic usage of flickr-upload:

var flickr = require('flickr-upload')({
	consumer_key: "3eda09cb562caa5859dcbf6062ca9b7d",
	consumer_secret: "b8f5c7f9d37a7e65",
	token: "72157649904431428-4cb322030200ac38",
	token_secret: "bbd90fb171b1c946"
});

flickr.upload('./test.jpg', function(err, photoId) {

	if (err) {
		console.error(err);
		return;
	}

	console.log(photoId);

});

config

When requiring the library, pass in your OAuth configuration. The keys are:

{
	consumer_key: "3eda09cb562caa5859dcbf6062ca9b7d",
	consumer_secret: "b8f5c7f9d37a7e65",
	token: "72157649904431428-4cb322030200ac38",
	token_secret: "bbd90fb171b1c946"
}

It also supports an alternative config in the format generated by flickr-oauth-dance:

{
	"api_key": "3eda09cb562caa5859dcbf6062ca9b7d",
	"api_secret": "b8f5c7f9d37a7e65",
	"access_token": "72157649904431428-4cb322030200ac38",
	"access_token_secret": "bbd90fb171b1c946"
}

upload

flickr.upload(photo [,config] [,callback])

photo can be a filepath, buffer, request stream, or readable stream.

config supports the following options from the Flickr Upload API:

title
description
tags
is_public, is_friend, is_family
safety_level
content_type
hidden

If you're uploading a buffer, you can define a filename and contentType, otherwise it will try to automatically generate these from the buffer contents and use a generic filename like photo.jpg.

The callback function has the arguments (err, photoId).

examples

basic filepath

flickr.upload('./test.jpg');

buffer

var fs = require('fs');
flickr.upload(fs.readFileSync('./test.jpg'));

request stream

var request = require('request');
flickr.upload(request('https://farm9.staticflickr.com/8623/16015386389_872d309a89_z.jpg'));

Don't use the filename from the stream:

var request = require('request');
flickr.upload(request('https://farm9.staticflickr.com/8623/16015386389_872d309a89_z.jpg'), {strip_filename: true});

readable stream

var fs = require('fs');
flickr.upload(fs.createReadStream('./test.jpg'));

setting a title

flickr.upload('./test.jpg', {title: 'Test'});

uploading as private

flickr.upload('./test.jpg', {is_public: 0});

license

MIT