My Open Source Projects
I love open source software — it lets me put food on the table. I give back whenever I can.
Check out all of my projects at github.com/itspriddle.
slack-notify
I send a lot of Slack notifications using incoming webhooks. I put together
slack-notify
to do it quickly with just Bash, jq, and curl.
Tags: Bash, CLI, Slack, jq
gh-prq
I missed hub pull-request
in GitHub CLI, so I
threw together gh-prq
. It allows you to push a PR to GitHub and edit the
title and description in your $EDITOR
.
Tags: Bash, CLI, Git
gh-render-markdown
I wanted to learn about extensions in the new GitHub
CLI, so I extracted an old script of mine into
gh-render-markdown
. It sends Markdown files or STDIN to the GitHub API to
render into the same HTML you’d see on GitHub.
Tags: API, Bash, CLI, Git
gh-orgtools
I found myself working with A2’s repos and GitHub users and wanting a CLI, so I wrote gh-orgtools
to save me some time.
Tags: Bash, CLI, Git
Bashword
I wanted a password generator that I could quickly drop on any system and created Bashword, a pure Bash password/passphrase/PIN generator.
Tags: Bash, Linux, Passwords, Windows, macOS
things-cli
I wrote things-cli
to work with Things 3
on macOS. This was the first project I’ve done with Bash testing (via bats)
and GitHub Actions, and also the first one that I shipped a man page with.
Tags: Bash, CLI, Things, macOS
recipes.priddle.xyz
I wanted a website for my recipe collection that would also generate PDF files to print on 6x4 inch index cards. I hacked up recipes.priddle.xyz using GitHub Actions to generate a Jekyll site along with PDFs for each recipe.
Tags: Bash, Git, GitHub Pages, Jekyll, Ruby
vim-shellcheck
Vim wrapper for ShellCheck, a
static analysis tool for shell scripts. It adds adds :ShellCheck
and
:LShellCheck
commands to run ShellCheck on the current buffer (or custom
range/visual selection). Errors are sent to the quickfix/location list
window, and in error windows, gb
opens the GitHub wiki page for the error
in a browser.
Tags: Bash, Git, ShellCheck, Vim Plugin
shotty
shotty is a Ruby script that makes it easier to share screenshots and files via Dropbox on macOS.
Tags: API, Dropbox, Git, Heroku, Oauth, Ruby, Sinatra, launchd, macOS
ReamazeAPI
ReamazeAPI is a RubyGem that interfaces with the Reamaze REST API. I created the initial implementation and maintain the open source project on GitHub.
Tags: API, Git, MiniTest, Reamaze, Ruby, RubyGems
wp-cli-tgmpa-plugin
wp-cli-tgmpa-plugin is a WP-CLI package for working with WordPress plugins required using the TGM Plugin Activation library.
Tags: Git, PHP, TGMPA, WP-CLI, Wordpress
TrustMe
TrustMe is a RubyGem that interfaces with the TeleSign REST API. I created the initial implementation and maintain the open source project on GitHub.
Tags: API, Git, Rspec, Ruby, RubyGems, TeleSign
rake-tomdoc
rake-tomdoc is a RubyGem that adds adds rake tomdoc to generate documentation for publishing to GitHub Pages.
Tags: Documentation, Git, GitHub Pages, Ruby, RubyGems, Tomdoc
gem-create
gem-create is a RubyGems plugin. It provides a gem create command which can be used to generate a skeleton for working on a new RubyGem.
Tags: Git, MiniTest, Ruby, RubyGems
vim-marked
vim-marked is a tiny plugin I made to integrate Vim and Marked.app. It allows you to open the current Markdown buffer in Marked from within Vim.
Tags: AppleScript, Git, Markdown, Vim Plugin
Rainman
Rainman was a RubyGem implementing the abstract factory pattern in Rails applications’ service objects. It was a premature abstraction and development was abandoned when I realized it was adding unnecessary complexity to projects. I consider Rainman a successful failure that was a valuable lesson in knowing when to abstract.
Tags: Git, Rspec, Ruby, RubyGems
vim-stripper
When I made the switch to Vim, I wanted to strip trailing whitespace when I saved a file. I wrote vim-stripper to do just that.
Tags: Bash, Git, Vim Plugin
Snuggie
Snuggie is a RubyGem that interfaces with the Softaculous API. I created the initial implementation and helped manage the open source project on GitHub.
Tags: API, Git, Rspec, Ruby, RubyGems, Softaculous
FannyPack
FannyPack is a RubyGem that interfaces with the Fantastico API. I created the initial implementation and helped manage the open source project on GitHub.
Tags: API, Fantastico, Git, Rspec, Ruby, RubyGems
whmcs-ruby
whmcs-ruby provides Ruby bindings for the WHMCS API. This project was extracted from my work with DotBlock.
Tags: API, Git, Rspec, Ruby, RubyGems, WHMCS
TiFighter
TiFighter is a jQuery-like library designed to help you wage intergalactic war on your Titanium Mobile applications. This was one of my first projects using CoffeeScript and I immediately fell in love.
Tags: Appcelerator Titanium, CoffeeScript, Git, Javascript, Ruby, RubyGems
DotBlock API Clients
As part of my work on DotBlock Mobile, I created API clients in Bash, PHP, and Ruby for customers to access the DotBlock API.
Tags: API, Bash, Git, PHP, Ruby, RubyGems
ActiveMailbox
I got sick of manually working with Asterisk Voicemail files and created ActiveMailbox to make my life a little easier. This was the first proper RubyGem I released and it was a lot of fun to learn the ins and outs of gem creation.
Tags: API, Asterisk, Git, Linux, Ruby, RubyGems, Test Unit, Voicemail
APND
APND (Apple Push Notification Daemon) is a RubyGem that integrates with Apple’s Push Notification Service.
Tags: API, Apple Push Notification Service, Git, Rspec, Ruby, RubyGems
dotfiles
My dotfiles include my development environment for use on OS X and Linux. Although this project is only used by me, it is one of my favorites because it provides a baseline for improving my workflows and allows me an easy way to share that information with others.
Tags: Bash, Git, Linux, PHP, Ruby, Vim, macOS
CodeIgniter ActionMailer
I missed ActionMailer from Ruby on Rails and started hacking up something similar for use with CodeIgniter apps. I gave it just enough love to be useful before I decided to use Rails for the app I was planning on using it with.
Tags: CodeIgniter, Email, Git, PHP
josh.fail
My blog is hosted on GitHub Pages and built with Jekyll. I’ve written randomly here under a few different domains over the years. More than once I’ve searched a problem only to find my own blog post about it. These days I write more about management than software.
Tags: Bash, Git, GitHub pages, Jekyll, Ruby
TextMate Rsync bundle
This is a little TextMate bundle I wrote to let you use SSH/rsync to upload your website.
Tags: Rsync, SSH, TextMate