Projects

Sean Breckenridge

python
66
hpi
30
cli-tool
23
web
19
bash
18
media
16
golang
16
api
15
server
15
webscraping
12
anime
10
mpv
7
git
7
music
7
database
6
library
6
dotfiles
6
typescript
6
game
6
todotxt
5
caching
5
javascript
5
discord
5
fzf
5
rust
5
tui
4
installer
4
Show More...

HPI

Python

Human Programming Interface. Provides a way to unify, access and interact with all my personal data, as a python package. Currently in-use modules

HPI
hpi, python, cli-tool, todotxt, mpv

backup and parse browser history databases. I use this to backup my browser histories so that I never lose any of it

browserexport
database, hpi, library, python, sql

Parses data out of your Google Takeout (History, Activity, Youtube, Locations, etc...)

google_takeout_parser
caching, hpi, python

cross-platform (arch/macos/android) dotfiles and scripts, using yadm. Includes lots of my scripts, and my configuration files for everything

dotfiles
bash, dotfiles, lua, python, vim

A collection of bash scripts to allow easier and programmatic interaction with mpv sockets

mpv-sockets
bash, media, mpv

a tool to snapshot sqlite databases you don't own

sqlite_backup
cli-tool, database, library, python, sql

Export your movie/tv show ratings and history from trakt.tv

traktexport
api, hpi, media, python

exobrain

Shell/Go

Something like public wiki to store notes, ideas, blog posts, art, anything else I want to

exobrain
bash, golang, wiki, python, javascript, astro, web, typescript

mpvf

Shell

Interface to select a youtube-dl format for streaming video with mpv

mpvf
bash, mpv

yadm-git.vim

Vim script

Integrates yadm with vim-fugitive and vim-gitgutter, so you can manage your dotfiles without leaving vim

yadm-git.vim
git, vim

promnesia

Python

Additional promnesia Sources for my HPI modules

promnesia
hpi, python, web

Exports all accessible reddit comments for an account using pushshift

pushshift_comment_export
api, python, reddit

maintains a cache of database IDs for MAL

checker_mal
anime, api, database, web, webscraping

autotui

Python

interactively prompt, validate, and persist python objects to disk (JSON/YAML) and back using type hints

autotui
library, python, tui

Daemon which connects to active mpv instances created by mpv-sockets, saving a history of what I watch/listen to

mpv-history-daemon
hpi, media, mpv, python, socket

bgproc

Shell

bash loop to run tasks in the background. used as an anacron alternative. Uses evry to schedule tasks

bgproc
bash, cron

Library to parse messages/activity from the discord data export

discord_data
discord, hpi, python

An interactive terminal playlist manager; stores playlists as text files. Seems that most people tend to use spotify/apple music nowadays, but I still like having music locally. This lets me manage playlists locally without having to use one of the bulky GUI applications

plaintext-playlist
bash, media, mpv, music, playlist

my_feed

Python

a personal media feed using HPI

my_feed
api, caching, hpi, media, python, server, web

An offline CLI tool to search your GitHub Stars - A fork to add some features I wanted

oh-my-stars
database, git, python

albums

Python

A collection of CSV files containing popular/acclaimed albums, used to make a giant list of albums to listen to. This maintains a google sheet which I use instead of RateYourMusic

albums
api, google-sheets, media, music, python, sql

ttally

Python

an interactive TUI to save things (calorie counter, events) I do often to JSON/YAML. Uses autotui internally to generate a bunch of aliases from ADTs, letting me save/query recently logged events

ttally
food, fzf, hpi, python, tui

url_cache

Python

A file system cache which saves URL metadata and summarizes content. For any URL, acts as an abstraction layer for fetching youtube subtitles, a summary of the HTML, opengraph information and links to any images and videos

url_cache
caching, python

HPI_API

Python

An automatic JSON API for HPI. Dynamically generates HTTP endpoints for each function in an HPI module

HPI_API
hpi, python

evry

Rust

A shell-script-centric task scheduler; uses exit codes to determine control flow

evry
cli-tool, cron, rust

ttt

Go

Logs metadata for shell scripts/invocations; an extension to my shell history

ttt
bash, dotfiles, golang, hpi

A cookiecutter template for creating a HPI repository

HPI-template
hpi, python, template

Discord bot to use for countdowns. Used as a syncplay alternative

discord-countdown-bot
discord, python, server

Basic CLI tool to print the most recently modified file in a directory; I use this a lot in small scripts/key bindings

newest
cli-tool, golang

Hooks for calcurse (calendar in my terminal), to pull events from Google Calendar and todo.txt

calcurse-load
library, python, todotxt

Utility to wait till you have an internet connection. I use this often when changing networks/waiting to connect to my hotspot, and at the top of shell scripts that run in the background, so they don't fail due to network failure

wait-for-internet
cli-tool, rust

clicks the 'Run until 3 months from today' button on pythonanywhere, so your website doesn't deactivate automatically

pythonanywhere-3-months
python, web, webscraping

lolexport

Python

Exports League of Legends Match History metadata using the RiotGames API. I don’t play league of legends that often anymore, this is to export my entire match history so I can do some analysis as part of HPI

lolexport
api, game, hpi, python

CLI tool that removes whitespace/empty lines from command output

chomp
cli-tool, golang

projects

TypeScript

project for describing my other projects -- the website you're currently looking at!

python, react, server, typescript, web

Generate a unique-enough fingerprint for my current machine, to make it easier to pick different commands/scripts to run on mac, different flavors or linux, or windows

on_machine
bash, cli-tool, golang

A small filesystem cache layer for IP geolocation info

ipgeocache
api, caching, hpi

discord bot that checks the MAL "Just Added" page, reporting newly approved entries

mal-notify-bot
anime, api, database, discord, python, server, webscraping

cookiecutter template for a strongly typed python package w/ click, pytest, mypy, flake8 and CI using github actions

python, template

a basic git repo clone script with pip/editable install support

clone-repos
cli-tool, dotfiles, git, installer, python

jikan_ex

Elixir

An elixir wrapper for the Jikan API

jikan_ex
anime, api, elixir, jikan

personal websocket-based currently playing web server. syncs my live mpv and scrobbler activity to a websocket which is consumed by my website/discord presence rpc

currently_listening
api, discord, golang, media, mpv, music, python, server, socket

glue

Elixir/TypeScript

My personal website. Has a GUI interface modeled after old Atari/Compaq machines

glue
elixir, react, server, typescript, web

A thin wrapper around todo.txt to keep track of my bookmarks

bookmark.txt
bash, cli-tool, todotxt

Script to list all of the repositories you've contributed to on Github. Includes your own repositories and any repositories you've contributed to (a commit, PR or issue)

list_gh_contributions
api, git, python

extract my messages from the overrustlelogs archive (twitch chat logs)

hpi, python, twitch

havecmd

Shell

A template for bash scripts, to provide a nicer interface to check for the presence of external commands on the users $PATH

havecmd
bash, template

greasyfork

JavaScript

An archive of my scripts from greasyfork.org

greasyfork
anime, javascript, userscript, web

pmark

Perl

A hacky, markdown pre-processor. Uses code blocks to generate markdown, from within the markdown itself

pmark
cli-tool, perl

Scrape data and archive scripts from a users Greasyfork account

greasyfork_archive
python, userscript, webscraping

Naive implementation to reorder my easy-install.pth file

reorder_editable
hpi, library, python

pyfzf

Python

An python wrapper for fzf (forked to support iterators/decorators/types)

pyfzf
fzf, library, python

vps

Shell

Scripts used for installing/managing/restarting/monitoring processes on my server. Wraps supervisor to handle process crashes. Has other misc scripts (mediaproxy/remsync) that provide FTP/proxy like functionality

vps
bash, installer, server

lists/archives denied/deleted/unapproved MAL entries

dbsentinel
anime, git, python, webscraping

an installer for core scripts extracted from my dotfiles

seanb-utils
bash, cli-tool, dotfiles, fzf, git, installer, python

static site for my favorite anime short films

animeshorts
anime, jikan, media, python, server, web

A wrapper script for interacting with the Frink language, with a focus on converting units

frinkconv
bash, cli-tool

malexport

Python

backs up info from your MAL account - forum posts, lists (including rewatch info), and episode/chapter dates for each entry

malexport
anime, api, database, hpi, media, python, webscraping

rifleman

Python

An extendible dispatcher to lint/format code, based on rifle. This lets you run one command over lots of files/directories which could be in different languages - it classifies them by inspecting the mime type, extension, name or shebang, and then runs a formatter on those files

rifleman
cli-tool, format, python

Pipe to test if files exist. Got tired of doing the unreadable: xargs -I {} sh -c "[ -e \"{}\" ] && echo \"{}\"" when doing shell one-liners, so this simplifies that

exists
c, cli-tool

A CLI for pyTwistyScrambler, to generate random states for twisty puzzles

cube-scramble-cli
python, rubiks-cube

mapscii-at

JavaScript

a small CLI to pass starting options to mapscii

mapscii-at
cli-tool, javascript

serves text files from directory by matching subpaths. I use this to host my dotfiles; see index. It allows me to quickly send someone one of my scripts/configuration files from my dotfiles using this script

subpath-serve
golang, server, web

Export your chess.com/lichess.org games using their APIs

chess_export
api, game, hpi, python

Cross-platform window watcher (forked from ActivityWatch to log to a file instead). Daemon which periodically saves the window I'm currently using

window_watcher
hpi, python

Scrapes personal game/achievement data from streams website

steamscraper
game, hpi, media, python, webscraping

Indexes existing Minna no Uta entries every few days, adding new ones that don't exist to the spreadsheet

mnu_gsheets
anime, api, google-sheets, python, webscraping

a unobtrusive, scriptable reminder/habit/todo task-runner

reminders, todotxt

bleanser

Python

my bleanser modules -- removes duplicate/'useless' backed up data, see karlicoss blog post

bleanser
hpi, python

A list of my favorite xkcd's. Converts a list of my favorite IDs to a static website using a bash script

xkcd-favorites
python, server, web

shortcuts

Python

Converts a TOML file into individual shell scripts. Used to create lots of one-liner shell scripts

shortcuts
bash, cli-tool, dotfiles, python

calories-scripts

Shell/Python

Scripts for interacting with calories, to fuzzy select new entries to add/and swap/merge databases

calories-scripts
food, fzf, python

dashboard

Jupyter Notebook

analysis/visualizations done using data from my HPI

dashboard
hpi, python

time-in

Python

CLI tool to figure out the time somewhere else

time-in
cli-tool, python

parse output of activity watch' window watcher

hpi, python

server_clipboard

Go/TypeScript

A server which saves my clipboard in memory, so I can share it between my devices

server_clipboard
clipboard, golang, react, server, typescript, web

A script to setup a new bash VPS/servers with defaults I like. This is the first things I do whenever I setup a new server, so I have all my vi bindings and aliases

bootstrap
bash, server

Export your scrobbling history from ListenBrainz

listenbrainz_export
api, hpi, media, music, python

A small cache for unique lines of text, used to speedup the load time of expensive fzf invocations

fzfcache
caching, cli-tool, fzf, golang

copy/track file history in git, with python bindings to traverse and extract files/lines at some date

git_doc_history
bash, git, hpi, python

A simple package list parser. Used to clean up comments/newlines/spaces from a list of packages when installing packages in shell scripts

spkglist
bash, dotfiles, golang, installer

a (partial) grouvee (a video game database website) data exporter

grouvee_export
game, hpi, media, python, webscraping

largechar

JavaScript

Displays large characters on your screen. Was a replacement for this Alfred feature, and an excuse to try some electron programming

largechar
gui, web

a single page HTML generator for notes/docs/markdown

markdown_stew
golang, markdown, web, cli-tool

A small CLI to mark items watched on trakt

trakt-watch
media, python, trakt

a todotxt interactive interface that forces you to specify certain attributes. I use this with todotxt_deadline_notify to send me reminders about todos

full_todotxt
python, tui, todotxt

A CLI REPL calculator which remembers your last answer, optimized for my use on termux

calc_ans
cli-tool, math, ocaml, repl

mlength

Python

gets the length of media files and caches the result

mlength
cli-tool, media, python

An interactive terminal interface for pamixer/pactl to control system volume

keyvol
golang, tui

A password generator with defaults and some shorthands that I like

genpasswd
c++, cli-tool

Solutions to Project Euler, using distinct languages

poly-project-euler
awk, bash, bc, c, c++, clojure, coffeescript, commonlisp, crystal, csharp, dart, dlang, elixir, elm, erlang, fsharp, golang, groovy, haskell, java, javascript, julia, kotlin, logo, lua, ml, nim, ocaml, octave, perl, php, prolog, python, racket, ruby, rust, scala, server, smalltalk, typescript

space

Python

pygame shoot 'em up space game

space
game, python

offline listening history

offline_listens
hpi, media, music, python

Downloads all sakugabooru posts for a particular tag, and optionally lets you combine them into Source(episode)-based videos using ffmpeg

saugabooru_episode_mad
anime, python

filmswap

Python

discord bot to facilitate anonymous film recommendation gift exchanges

filmswap
discord, media, python

a browser DVD logo animation/game

xqc-dvd
elm, game, server, web

CLI tool to shuffle a m3u file

m3u-shuf
cli-tool, music, playlist, rust

HPI-personal

Python/Shell

Personal HPI modules

HPI-personal
hpi, python

A dark-themed HTTP error page generator. Implements a basic template language, to allow interpolation based on HTTP status codes. Is so that I'm not blinded by the default nginx error pages

darker_errors
golang, web

file based single-binary URL shortener server. Has no dependencies; doesn’t require you to setup a database

no-db-shorturl
golang, server, web

parses your rubiks cube solve history from cstimer.net, cubers.io, twistytimer, and merges them together giving you uniform averages/data and graphs

scramble-history
graphs, hpi, python, rubiks-cube

cstimer-save-server

Go/JavaScript

a userscript/local server which saves my data from https://cstimer.net whenever I open cstimer in my browser

cstimer-save-server
golang, javascript, rubiks-cube, userscript, web

library to parse plaintext playlist files, and other misc personal ID3 scripts

plaintext_playlist_py
mpv, music, playlist, python

Scrapes and parses data from Piazza

piazza-scraper
hpi, python, webscraping

An embeddable back arrow script tag

back-arrow-script
typescript, web

tiny webserver that scrapes information for a user from worldcubeassociation.org

wca_userinfo
rust, webscraping

generate a graph that shows correlation between a users and average score on MAL

MALUserVsAverage
anime, graphs, python, webscraping