Work, Code, Design.

I'm always building something - keep up with it here.

My open source work from GitHub is listed below, but I also do commercial and startup work that isn't currently listed here. If you're interested in learning more, feel free to browse my resume, or email me for further questions. My design work from Dribbble is also listed below, but it's a bit out of date as I've done mostly programming work for the past two years - my hope is to kick that work back into gear by listing it here.

Some smaller projects I've hacked on over the past year include Tokeo, a native macOS/iOS cryptocurrency news tracker, and {Kids: Code}, a weekly newsletter for kids and parents about the world of coding and development.

  • Updated: Mon, Jul 23 2018 (6:27PM)

    smashgg-upcoming-tournaments

    A scraper example for finding upcoming tournaments on smash.gg. From an unreleased side project, might be fun for some people.

    0 Followers Rust
  • Updated: Sun, Jul 22 2018 (12:56AM)

    askama

    Type-safe, compiled Jinja-like templates for Rust

    0 Followers Rust
  • Updated: Fri, Jul 20 2018 (11:18PM)

    jelly

    User authentication/sessions/etc for Actix-Web. More of a sample project than a crate, but probably useful to some people.

    29 Followers Rust
  • Updated: Thu, Jul 19 2018 (6:23PM)

    actix-redis

    Redis actor and middleware for Actix

    0 Followers Rust
  • Updated: Thu, Jul 12 2018 (7:10PM)

    client

    The Hypothesis web-based annotation client.

    0 Followers JavaScript
  • Updated: Wed, Jun 20 2018 (11:20PM)

    shinekit

    iOS/macOS/Windows UI in Rust. Highly experimental.

    0 Followers Rust
  • Updated: Tue, Jun 05 2018 (4:49AM)

    cloudkit-sane-sharing

    A dump of code that illustrates a better way to share CloudKit resources.

    2 Followers Swift
  • Updated: Mon, May 07 2018 (4:52PM)

    twython

    Actively maintained, pure Python wrapper for the Twitter API. Supports both normal and streaming Twitter APIs.

    1553 Followers Python
  • Updated: Mon, Apr 16 2018 (8:10PM)

    memelee

    An unofficial smash.gg app, read-only.

    2 Followers JavaScript
  • Updated: Thu, Jan 12 2017 (7:55PM)

    django-cq

    Distributed tasks for Django Channels.

    0 Followers Python
  • Updated: Tue, Jul 26 2016 (11:01PM)

    wrench-js

    Recursive file operations in Node.js

    440 Followers JavaScript
  • Updated: Wed, Jun 15 2016 (3:10PM)

    webpack-babel-react-setup-lesson

    Walking through setting up Webpack, Babel, and React.

    14 Followers JavaScript
  • Updated: Tue, Apr 19 2016 (8:22AM)

    corgbot

    An example repo.

    0 Followers Ruby
  • Updated: Fri, Apr 08 2016 (12:58AM)

    beyond-react

    Session 4, going beyond React and integrating with other libraries.

    3 Followers JavaScript
  • Updated: Fri, Mar 25 2016 (1:01AM)

    react-flux-redux-lesson

    Walkthrough guide for React session #2 via Codementor.

    2 Followers JavaScript
  • Updated: Mon, Mar 21 2016 (10:39AM)

    react-iconpack

    A React Component for handling SVG icons, coupled with Babel and Browserify plugins to only bundle the icons you use.

    25 Followers JavaScript
  • Updated: Thu, Feb 11 2016 (10:09PM)

    react-router-lesson

    React Router & co.

    1 Followers JavaScript
  • Updated: Tue, Jan 05 2016 (11:14PM)

    django-rednoise

    An opinionated addon for WhiteNoise, with a focus on Django environments.

    18 Followers Python
  • Updated: Tue, Jun 09 2015 (12:27AM)

    retab

    ⌘ + ⇧ + T for Safari

    0 Followers JavaScript
  • Updated: Thu, Jul 31 2014 (2:54PM)

    twython-django

    An example Django application to showcase how to use OAuth with Twitter in Django using Twython.

    73 Followers Python
  • Updated: Sun, May 05 2013 (8:44AM)

    ryanmcgrath.github.io

    Personal junks.

    0 Followers None
  • Updated: Sun, May 05 2013 (4:30AM)

    jTransliterate

    Transliterate [Hirag/Katak]ana to Latin/English and back with Python. Convert half/full-width Japanese text.

    7 Followers Python
  • Updated: Sun, May 05 2013 (4:26AM)

    wii-js

    A sane, documented, (hopefully) performant event-based library for Wiimote webpage interaction.

    137 Followers JavaScript
  • Updated: Wed, Jun 22 2011 (6:54PM)

    gitstatus

    A Github-repository widget to display most recent commits on a given repository.

    8 Followers JavaScript
  • Updated: Mon, May 30 2011 (5:59AM)

    node-utf8

    utf8 encoding and decoding in Node.js

    13 Followers JavaScript
  • Updated: Wed, May 11 2011 (12:06PM)

    katakana

    An Android application that aims to teach people Katakana through a basic brain-timing-calculation/algorithmic method.

    1 Followers Java
  • Updated: Thu, Feb 24 2011 (10:31AM)

    svgalib-1

    It's not svgalib "dash" 1, it's svgalib negative 1, because if you still use this library there's probably something wrong with you. That said, this is a 'fork' of the most recent (haha) version found on the internets, with a ton of patches from various people around the internet cobbled together. I have not and will not make any outlandish efforts to credit people, but if you see something here you wrote and you want credit, message me. Should fix a lot of compiling issues under recent issues of Linux.

    3 Followers C
  • Updated: Fri, Feb 18 2011 (9:24AM)

    jsmag

    Random JSMag Code Samplings

    1 Followers JavaScript
  • Updated: Fri, Feb 11 2011 (10:05AM)

    takeoff

    A Chrome extension to randomly load up one of your bookmarks on new windows/tabs, built for user "hokku". Enjoy.

    1 Followers None
  • Updated: Fri, Oct 29 2010 (9:16AM)

    drinkkitcom

    A Foursquare clone written in Django to let Redditors broadcast DC bar crawls.

    10 Followers Python
  • Tokeo Dribbble Icon

    Created: Sun, Mar 25 2018 (8:35PM)

    Recently launched a simple news tracker for cryptocurrency RSS, and named it Tokeo. After living in Tokyo proper, the iconic thing you always remember is Tokyo Tower... and since cryptocurrency always seems to be crashing for one reason or another, this just seemed a fitting icon.

    App, if anyone's interested: https://tokeoapp.com/

  • Tokeo - Cryptocurrency Desktop News App

    Created: Sat, Mar 17 2018 (5:02AM)

    I wanted to kill the tab-hell that is my browser when looking through Cryptocurrency news, and wound up putting together a simple RSS reader to manage it all. It's more optimized around the existing crypto news sources and sends push notifications as new articles come up.

    Part of the incentive for building this was also to look at how easily I could build a framework that'd support native code on both iOS and macOS. In the end it worked, albeit it's not easy. App syncs bookmarks with iCloud and should be available in the App Store soon.

    Also, yes, that's the Snow Leopard background. Apps look amazing on that backdrop.

  • Tri-fold Brochure Inner

    Created: Sat, Aug 19 2017 (11:34PM)

    For a project I worked on for a bit - a site that brings Japan's metal scene to the world. No longer touching it these days but this tri-fold brochure I put together at the end for a tourism project was fun, figured it's worth showing off.

  • OS X Steam Icon

    Created: Sun, Mar 27 2016 (8:18AM)

    The Steam interface doesn't feel at home on OS X in the slightest. Someone made a great Yosemite skin that helps a lot, but it was lacking an icon - figured I'd take a shot at making one that actually fits in. Mimics the designs found on the Safari/App Store icons with the classic Steam icon front and center, slightly subdued colors from the current icon. If you're interested you can download the icon here as an OS X icon.

  • Feed

    Created: Mon, Oct 14 2013 (7:11AM)

    Took the existing feed for this app and... enhanced it to show actual visual previews, with a slightly flatter design. Given the target market it actually seems to work/perform the best - go figure.

  • App Intro Preview

    Created: Fri, Jun 28 2013 (5:15AM)

    I wanted an intro for this app that I'm working on that stood out, and thought the way Facebook used video for their "Home" or whatever page was pretty neat. Basically used that trick with buttons and some animations to tie it all together.

    Not sure Dribbble can really relate it, or maybe I'm failing with words, who knows.

  • Selecting chunks

    Created: Wed, Jun 19 2013 (12:21PM)

    Trying to determine an elegant way to select a sub-section of a music track for analysis on a touch device. It's more or less locked to ~10 seconds and just drags/drops the pink bar, but... something is missing.

    I'm just not sure what.

  • iOS Feed Entry

    Created: Tue, Jun 18 2013 (12:56PM)

    Takes inspiration from Vine/Instagram's feed layout to showcase commenting and likes. I wanted to make things a bit shorter overall so I'm experimenting with the icons on the left - not sure it works how I want it to, but oh well.

  • Dashboard

    Created: Mon, May 20 2013 (8:03PM)

    Some days it feels like I have to context switch between three languages, in addition to programming in many more. Mucks with the brain and the ability to lay things out.

    Preview of a dashboard concept I'm working on for a friend.

  • Feed View

    Created: Sun, May 19 2013 (12:28AM)

    Screenshot of an application I'm working on for the Japanese market. Needed a feed really quickly, threw together something basic with the aid of the hella nice Batch icon set (users can upload either photos or videos).

    Not 100% happy with it, but it gets the job done for right now.

  • Just a Camera Icon

    Created: Wed, Sep 12 2012 (7:10AM)

    Very basic, but an icon for an app I decided to tool around with in my spare time. Based off some open source PSDs - what do you think of when you look at it?