Skip to main content

A command line tool that imports Pinboard data into Raindrop

Project description

Paindrop

Introduction

Paindrop is a command line utility that helps you export your pins from Pinboard and import them into Raindrop.

While Raindrop already supports importing Pinboard data just fine, it was missing two things that were important to me:

  • Support for public/private bookmarks.
  • Support for an "unread" status.

So I wrote Paindrop to solve this particular problem for me. It works for me. This might not work for you.

The solution for me is to use just two collections in Raindrop: one for public bookmarks, one for private bookmarks. Pins that are marked as "unread" are left with no collection (so the act of "marking read" will be dropping it into either the Public or Private collection).

Installing

pipx

The package can be installed using pipx:

$ pipx install paindrop

Homebrew

The package is available via Homebrew. Use the following commands to install:

$ brew tap davep/homebrew
$ brew install paindrop

Usage

Getting ready to use

There's 3 things you need to do to use this importer:

Create public and private collections in Raindrop

In Raindrop create two collections, one will be the collection for public pins, the other will be the one for private pins. You don't need to make the public collection public just yet, but the idea is that you will at some point in the future.

Get your Pinboard access token

You can find it in your account settings.

Generate a Raindrop access token

This is a little more involved in Raindrop, but not difficult. In your account settings go to Integrations and under the For Developers heading click on Create new app. Give it a name (probably Paindrop so you can remember what it was for). Accept the API terms and guidelines and hit Create.

Now click on the newly-created application and towards the bottom of the dialog that appears click on Create test token; say ok when asked. Copy the token and keep it to hand as you'll need this too.

Running an import

After you've done the above steps you're ready to import. Assuming you named your public and private collections Public and Private, you can run the command like this:

paindrop example:xxxxxxxxxxxxxxxxxxxx xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

where the first parameter is the Pinboard access token and the second the Raindrop access token.

If all goes well, after a few moments, you the importer should finish and you should find that all of your Pins have migrated to Raindrop, all public pins are in the Public collection and all private pins are in the Private collection. Any pins that were marked as unread will be Unsorted.

Note that if you used different names for your public and private collections you can pass those names to paindrop with the --public and --private switches.

Getting help

If you need help please feel free to raise an issue.

Thanks

Many thanks to Darren who suggested the name.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paindrop-1.0.0.tar.gz (30.3 kB view details)

Uploaded Source

Built Distribution

paindrop-1.0.0-py3-none-any.whl (29.5 kB view details)

Uploaded Python 3

File details

Details for the file paindrop-1.0.0.tar.gz.

File metadata

  • Download URL: paindrop-1.0.0.tar.gz
  • Upload date:
  • Size: 30.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for paindrop-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6ca7ace65e7f9bcabedf2894f27046016b6bd5dd39de0573a68bb7c192bf369a
MD5 275606b50de665d4f9e982dc4cf1cef3
BLAKE2b-256 4a8dc2b9090e9d88921f2c4b5a947ad682d1d5a45455be8bc0b3285207e35ba2

See more details on using hashes here.

File details

Details for the file paindrop-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: paindrop-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 29.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for paindrop-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05f053b29bdbee3667c3639c1f6997e18ce9bdb9463f6428567d704c0e611530
MD5 e2988ec8077b4f2db25eac924f1bc7d7
BLAKE2b-256 645855e6606368e5e53b9b61e1d73aa5c0aa976198d6db137b3ce217363f062b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page