1731 words, ~9 min read

The following is a breakdown of my various projects.

Custom Keyboard

OpenSource Dactyal Manuform QMK Firmware

This is a project in which I have created a custom keyboard based on the Dactyal Manuform so that I no longer have wrist pain. It involved figuring out how figuring out the exact shape that will allow me to minimize the repedative stretching of my fingers and have a fully useful thumb cluster. Additionally, it involved figuring out a multi-layered keyboard layout that would allow me to efficiently write code as well as play video games.

For more details check out the Custom Keybard Project Page

Dot Files

OpenSource

This project is how I manage all my dot files for my preferred setup. It consists of the following.

  • dottmux (git://git.drewdeponte.com/dottmux.git)
  • dotzsh (git://git.drewdeponte.com/dotzsh.git)
  • dotnvim (git://git.drewdeponte.com/dotnvim.git)
  • dotgit (git://git.drewdeponte.com/dotgit.git)

The above repositories are the ones that I am actively using. However, I do also have some older dot files that I am not actively using anymore.

  • dotfiles (git://git.drewdeponte.com/dotfiles.git)
  • dotvim (git://git.drewdeponte.com/dotvim.git)
  • dotack (git://git.drewdeponte.com/dotack.git)

alt

OpenSource Rust

alt is a command-line tool designed to facilitate quickly finding alternate files within a project in a generic way by using similarity of paths. It is also designed to be easily integrated into editors like neovim and vim.

  • alt (git://git.drewdeponte.com/alt.git)
  • alt-archlinux-builder (git://git.drewdeponte.com/alt-archlinux-builder.git)

Prior to generalizing this into a command-line I originally attempted to solve this problem with a vim plugin that was based on patterns rather than similarity. I quickly discovered that some of the patterns necessary to support the various platforms I was working in conflicted with one another. Hence, why I implemented alt.

  • vim-open-alternate (git://git.drewdeponte.com/vim-open-alternate.git)

Git Patch Stack

OpenSource Rust

Git Patch Stack is a command-line tool, gps, that facilitates working with Git in a workflow based on a stack of patches. This project has it's own website, https://git-ps.sh with a lot more details.

This project is composed of the following git repositories.

  • git-ps-rs (git://git.drewdeponte.com/git-ps-rs.git)
  • git-ps-book (git://git.drewdeponte.com/git-ps-book.git)

I started the exploration & development of this project as a set of shell scripts, and then transioned to a swift implementation, and then eventually ended up with the Rust implementation above. Below are the Git repositories that eventually lead to this.

  • git-ps Swift (git://git.drewdeponte.com/git-ps.git)
  • git-ps-bash (git://git.drewdeponte.com/git-ps-bash.git)

git-cl

OpenSource Swift

git-cl command line tool for managing your CHANGELOG with a defined schema of entries in your commit messages. Enabling you to manage our CHANGELOG without all the conflicts.

  • git-cl (git://git.drewdeponte.com/git-cl.git)

Vim Plugins

OpenSource

Over the years I have created a number of vim plugins. Most of these I don't use anymore as I use neovim now and my need for them has died out.

  • vim-slack-format (git://git.drewdeponte.com/vim-slack-format.git)
  • vim-ping-cursor (git://git.drewdeponte.com/vim-ping-cursor.git)
  • vim-test-recall (git://git.drewdeponte.com/vim-test-recall.git)

tmuxme

OpenSource Ruby Ruby on Rails

tmuxme is a service that facilitates remote pair programming via tmux. It consists of a service (built in Ruby on Rails) as well as a client command-line tool (built in Ruby). I built this a long while back as part of hackathon.

  • tmuxme (git://git.drewdeponte.com/tmuxme.git)
  • tmuxme_client (git://git.drewdeponte.com/tmuxme_client.git)

macOS/iOS/iPadOS Libraries

OpenSource Swift SwiftUI UIKit

  • FunctionalButtonStyleKit is a SwiftUI library to facilitate defining button styles using composition. For details you can checkout the SwiftUI Composable Button Styles blog post. (git://git.drewdeponte.com/FunctionalButtonStyleKit.git)
  • UIImageCacheKit is an iOS Framework to make cacheing UIImages from URLs easier (git://git.drewdeponte.com/UIImageCacheKit.git)
  • Functional is a Swit library provided the basics of Functional Programming to Swift (git://git.drewdeponte.com/Functional.git)
  • Fate is a Swift implementation of Futures (git://git.drewdeponte.com/Fate.git)
  • Constraid is a library aiding with NSLayoutConstraints usage (git://git.drewdeponte.com/Constraid.git)
  • JsonFileManager is a Swift library making it trivial to manage JSON flat files (git://git.drewdeponte.com/JsonFileManager.git)
  • BuyKit is a wrapper around StoreKit to make In-App Purchases easier to deal with (git://git.drewdeponte.com/BuyKit.git)

Flutter Forge

OpenSource Dart

  • flutter_forge is a Dart & Flutter library designed to make building modular Flutter Components without even thinking about it. Details can be found on it's site https://flutter-forge.dev. (git://git.drewdeponte.com/flutter_forge.git)

Zaurus Sync

This was a project to reverse engineer the syncing protocols for the Zaurus PDA and create implementations on Linux to facilitate syncing.

  • opensync_zdtm_plugin provides the OpenSync framework an interface to lib_zdtm_sync to allow syncing. (git://git.drewdeponte.com/opensync_zdtm_plugin.git)
  • lib_zdtm_docs LaTeX source and other documentation we have written for the lib_zdtm_sync project. (git://git.drewdeponte.com/lib_zdtm_docs.git)
  • lib_zdtm_sync a cross-platform library to speak the Zaurus synchronization protocol. It provides an interface to parse and create the packets sent to and received from the Zaurus. (git://git.drewdeponte.com/lib_zdtm_sync.git)
  • zync_korg_todo_plugin A KOrganizer plugin interfaced with zync. (obsolete) (git://git.drewdeponte.com/zync_korg_todo_plugin.git)
  • zync-gui A graphical user interface to zync. (obsolete) (git://git.drewdeponte.com/zync-gui.git)
  • zync A command line tool to synchronize the Zaurus. (obsolete) (git://git.drewdeponte.com/zync.git)

BoxCI

Is a tool I built to simply creating virtual development and cloud base CI jobs.

  • boxci the command-line tool to simplify create virtual development environments and cloud based CI jobs (git://git.drewdeponte.com/boxci.git)
  • boxci-puppet-cassandra BoxCI Puppet Cassandra Module (git://git.drewdeponte.com/boxci-puppet-cassandra.git)
  • boxci-puppet-redis BoxCI Puppet Redis Module (git://git.drewdeponte.com/boxci-puppet-redis.git)
  • boxci-site The boxci documentation website (git://git.drewdeponte.com/boxci-site.git)
  • boxci-presentation Presentation on initial release of BoxCI initially given at an OC Ruby Meetup on April 24, 2014 at Red Digital Cinema (git://git.drewdeponte.com/boxci-presentation.git)

Ruby Libraries

  • snake_caser A simple Ruby library that provides snake casing functionality (git://git.drewdeponte.com/snake_caser.git)
  • hitnmiss Ruby gem to support using the Repository pattern for read-through, write-behind caching using POROs (git://git.drewdeponte.com/hitnmiss.git)
  • hitnmiss-redis_driver A Hitnmiss repository cache driver backed by Redis (git://git.drewdeponte.com/hitnmiss-redis_driver.git)
  • tagalong A Rails tagging plugin that makes sense. ( Note: has built in support for Sunspot for search ) (git://git.drewdeponte.com/tagalong.git)
  • rack-vendor_accept_header Rack middleware to parse vendor accept headers (git://git.drewdeponte.com/rack-vendor_accept_header.git)
  • late Fast time in Ruby thanks to C bindings. (git://git.drewdeponte.com/late.git)

git-ticket-summary

CLI to generate a summary of git commits & files touch within a repo for a given ticket identifier

  • repo: git://git.drewdeponte.com/git-ticket-summary.git

be-wf-design-exploration

A Design Exploration of building a Backend Web Framework using only functions, strong typing via TypeScript and requiring everything be easily testable

  • repo: git://git.drewdeponte.com/be-wf-design-exploration.git

pra

The command line (ncurses) based pull request aggregator

  • repo: git://git.drewdeponte.com/pra.git

simplestoragesigner

  • repo: git://git.drewdeponte.com/simplestoragesigner.git

Printable

Sample framework to test Swift - C interop and llvm module mapping

  • repo: git://git.drewdeponte.com/Printable.git

sublime_guard

Sublime Text 2 Guard Plugin - helps create a smoother development workflow.

  • repo: git://git.drewdeponte.com/sublime_guard.git

snapdragon

A Jasmine JavaScript test runner that lets you run tests on the command-line similar to RSpec.

  • repo: git://git.drewdeponte.com/snapdragon.git

mailmate_stylesheets

My Personal MailMate Stylesheets

  • repo: git://git.drewdeponte.com/mailmate_stylesheets.git

cyberpower320d

A UPS monitor daemon for the CyberPower 320 SL UPS which allows you to specify any serial port to watch or any shutdown script you would like to occur. It is very compact and easily used.

  • repo: git://git.drewdeponte.com/cyberpower320d.git

andrewdeponte.com_jekyll

DEPRECATED Repository housing my personal blog and website.

  • repo: git://git.drewdeponte.com/andrewdeponte.com_jekyll.git

octopusci

A multi-branch continuous integration server

  • repo: git://git.drewdeponte.com/octopusci.git

cequel-migrations-rails

Rails plugin to provide migrations for the cequel gem the way rails devs are used to them.

  • repo: git://git.drewdeponte.com/cequel-migrations-rails.git

jquery-sliders-rails

Gem that provides the jQuery Sliders plugin to Rails 3 apps

  • repo: git://git.drewdeponte.com/jquery-sliders-rails.git

jquery_sliders

A simple very generic jQuery slideshow plugin

  • repo: git://git.drewdeponte.com/jquery_sliders.git

archaic

IRC Chat Archiving and Analysis Tool

  • repo: git://git.drewdeponte.com/archaic.git

gnuautotools-tmbundle

GNU Autotools TextMate Bundle

  • repo: git://git.drewdeponte.com/gnuautotools-tmbundle.git

libgnutmsgs

A unix C implementation of the Gnutella protocol designed to test ad injection on the network.

  • repo: git://git.drewdeponte.com/libgnutmsgs.git

skiplist_applet

A small Java applet that I wrote to assist in teaching skip lists.

  • repo: git://git.drewdeponte.com/skiplist_applet.git

usurper_applet

PDF based Gnome applet for flash carding

  • repo: git://git.drewdeponte.com/usurper_applet.git

activerecord_history

An extension to active record that allows tracking of changes to database entities.

  • repo: git://git.drewdeponte.com/activerecord_history.git

jquery_comp_hist

OpenSource Javascript jQuery

jQuery Comparative Histogram plugin. Often used for demographics. See blog post for details. (git://git.drewdeponte.com/jquery_comp_hist.git)

Flot

Fork of Flot, a Javascript plotting library for jQuery.

  • repo: git://git.drewdeponte.com/Flot.git

trac_ticket_creator

Trac XmlRpcPlugin Front-end for creating tickets more fluidly.

  • repo: git://git.drewdeponte.com/trac_ticket_creator.git

trac_embed_gitweb

Trac 0.11 plugin to embed gitweb inside the Browse Source tab.

  • repo: git://git.drewdeponte.com/trac_embed_gitweb.git

libgnut

A cross-platform implementation of the Gnutella protocol.

  • repo: git://git.drewdeponte.com/libgnut.git