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

tumblr-toolkit

v0.7.0

Published

Tumblr API-based toolkit for batch posts processing.

Downloads

51

Readme

tumblr-toolkit

Set of CLI tools for your tumblr blog.

Post media file to blog

tt post -c path/to/keys.json -b blogName -m photo -f path/to/pic.jpg

Optional params (with example)

--caption "My pic"

--tags "one, second one"

Get blog info

tt blogInfo -c path/to/keys.json -b blogName

Get post info

tt postInfo -c path/to/keys.json -b blogName --id "post-id"

List blog posts

tt blogPosts -c path/to/keys.json -b blogName --limit 12

List blog queued posts

tt blogQueue -c path/to/keys.json -b blogName --limit 12

List blog draft posts

tt blogDraft -c path/to/keys.json -b blogName --limit 12

Clean broken video posts tool

Broken media posts cleaning tool. Cleans up (removes) video-posts with media pointing to 403 error returning URLs (by default). See available options below.

Clean through videos returning 403 HTTP status code

tt clean -c path/to/keys.json -b blogName --clean-code 403

Clean through videos returning HTTP status code other than 200 (OK)

tt clean -c path/to/keys.json -b blogName --clean-code 200 --clean-invert true

Posts removal tool

Deletes posts that fit passed conditions.

Remove first 10 posts from queue

tt remove -c path/to/keys.json -b blogName -s queue

Find and show posts that will be removed. No removal action will be taken

tt remove -c path/to/keys.json -b blogName --post-type audio --post-tag garbage

Remove all audio-posts, perform actual removal (dry-run false)

tt remove -c path/to/keys.json -b blogName --post-type audio --remove-dry-run false

Tag posts by post's actual type tool

Tags video posts with 'video' tag, audio with 'audio' and so on...

Tag all posts

tt tag-type -c path/to/keys.json -b blogName

Tag all posts in queue

tt tag-type -c path/to/keys.json -b blogName -s queue

Tag all posts, for photo-posts containing GIFs, additionally set 'gif' tag

tt tag-type -c path/to/keys.json -b blogName --tag-type-gif add

Tag all photo posts containing GIFs with 'gif' tag instead of 'photo' tag

tt tag-type -c path/to/keys.json -b blogName --post-type photo --tag-type-gif replace

Process posts with given source code

Perform function built from given user code. Should return one of the constants from given codes object. May return promise resolving to one of the codes as well. Function receives post and codes (return codes) as arguments, return one of return codes for further post process.

Example source code:

return post.type === 'link' ? code.REMOVE_POST : code.DO_NOTHING;

Would remove all link posts and keep other.

post.tags.push('new tag');
return code.UPDATE_POST;

Would update post with new added tag.

Codes are: DO_NOTHING, UPDATE_POST, REMOVE_POST

Remove all posts having 'bad post' tag from blog's queue

tt process -c path/to/keys.json -b blogName -s queue "return post.tags.indexOf('bad post') >= 0 ? codes.REMOVE_POST : code.DO_NOTHING;"

See all commands common and specific options with

tt --help
tt <post|clean|remove|tag-type|process> --help

Credentials

In order to use tumblr api for getting and processing posts, credentials file should be provided. File content JSON should look like this:

{
  "consumer_key": " consumer key value ",
  "consumer_secret": " consumer secret value ",
  "token": " token value ",
  "token_secret": "token secret value"
}

Usage

Installing the tool:

npm install -g tumblr-toolkit

Get access with Tumblr