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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ca7ace65e7f9bcabedf2894f27046016b6bd5dd39de0573a68bb7c192bf369a |
|
MD5 | 275606b50de665d4f9e982dc4cf1cef3 |
|
BLAKE2b-256 | 4a8dc2b9090e9d88921f2c4b5a947ad682d1d5a45455be8bc0b3285207e35ba2 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05f053b29bdbee3667c3639c1f6997e18ce9bdb9463f6428567d704c0e611530 |
|
MD5 | e2988ec8077b4f2db25eac924f1bc7d7 |
|
BLAKE2b-256 | 645855e6606368e5e53b9b61e1d73aa5c0aa976198d6db137b3ce217363f062b |