Skip to content
Tool for copying Github Stars and Reddit Saved Links to Pinboard
Python Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
pintools
.gitignore
.pre-commit-config.yaml
LICENSE
MANIFEST.in
Makefile
README.md
pintools-runner.py
requirements.txt
setup.py

README.md

Pintools

Command line tools for working with Pinboard.

Features:

  • Import starred repositories from Github
  • Copy saved reddit links
  • (planned) Organize tags based on originating site
  • (possible) Title fixer

Table of Contents

Install

pip install pintools

Dev install

Requires pre-commit

$ git clone https://github.com/patrickleweryharris/pintools.git
$ cd pintools
$ make install

Dependencies

See requirements.txt

Usage

Pinboard Authentication

Pintools uses lionheart/pinboard.py to connect with Pinboard. Authentication is completed using your Pinboard API token, which can be found in settings->password on Pinboard.

Pintools will by default look for your Pinboard API token in $PINBOARD_API_TOKEN. Alternatively it can be specified using the --pinboard_token argument if you do not want to use the environment variable.

Sync Github Stars

Pintools can be used to copy Github stars to your Pinboard account. Starred gists are not currently copied.

Usage:

pintools github [-h] [--token TOKEN]

Github Authentication

Pintools uses PyGithub to connect to Github. In order to authenticate with Github, you will need to create a Personal Access Token in your Github account, with the read:user scope.

Pintools will look for this Personal Access Token in $PYGITHUB_ACCESS_TOKEN. Alternatively, this token can be specified using the --token arguement

Sync Reddit Saved Links

Pintools can be used to copy Reddit saved items to your Pinboard account. Note that new saved items can be saved via IFTTT, but if you want to back up the entirety of your saved links, you need to use a script like this because IFTTT will only work on new saved items.

Saved comments are not currently copied.

Usage:

pintools reddit [-h] [--secret SECRET] [--client_id CLIENT_ID] USERNAME PASSWORD

Reddit Authentication

Pintools uses PRAW to connect with Reddit. You will need to crate a developer application (personal use script) on Reddit in order to authenticate. Please follow the PRAW insructions on 'Password Flow' here.

Once you have created a personal use script application on Reddit, save the Client-ID and Client-Secret. By default, pintools will look for these in $REDDIT_CLIENT_ID and $REDDIT_CLIENT_SECRET. Alternatively, these can be specified using the --client_id and --secret arguments. Username and password for Reddit must also be provided on the command line.

Organize Pinboard links by originating site

Not yet implemented

TODO

  • Add functionality to save Reddit saved links to Pinboard
  • Add functionality to save Github stars to Pinboard
  • Port pin-tags script to pintools
  • Pypi upload
  • Automate Pypi uploads on releases with Github actions
  • Finish Readme
You can’t perform that action at this time.