Projects
An incomplete list of my open-source projects and contributions
Contributions
- Prismatic/om-tools (author)
- Prismatic/schema
- Prismatic/plumbing
- Prismatic/dommy
- drsnyder/poky
- lynaghk/jetty7-websockets-async
- pedestal/pedestal
Applications
om-2048
A basic implementation of the 2048 game in ClojureScript using Om. Written as an example application to show the use of functional data flow to build interactive an UI.
ji
Web-based version of the card game, SET, supporting realtime multi-player gameplay via WebSockets.
Motivation was to re-create this childhood-favorite card game was and explore building and integrating server-side and client-side applications using Clojure’s core.async.
xdebug-trace
A web-based interface for viewing and analyzing xdebug (PHP) trace files. Written in Clojure, this application leverages core.reducers to process huge data sets in parallel.
I built this tool because profiling & optimizing PHP code can be tedious and time consuming given the other tools available. This tool helps identify expensive function calls and easily navigate the captured trace.
powergrid
Implementation of the board game, Powergrid, written in Clojure. Exploring game development under functional paradigm.
prefab
An RSS feed aggregator concept with an immutable twist: all feeds are public and have a unique URL.
Built in 48 hours for the 2013 ClojureCup competition.
Libraries & Tools
om-tools
A library of utilities to build applications with Om, a ClojureScript wrapper to React.js.
cljs-websockets-async
A ClojureScript library that wraps WebSocket communication in a core.async channel. This started as part of ji, but found it reusable in other places. Inspired by lynaghk/jetty7-websockets-async, a server-side equivalent and this pairs nicely with it.
rident
Tiny Clojure library for generating random identifiers. Initially created to generate Heroku-inspired adjective/noun combos, like ‘silvery-grass-28’.
ring.middleware.statsd
Ring middleware for collecting statistics on HTTP response handlers to send to a statsd server.
githublaunch
A command-line utility in the form of a Ruby gem for opening various GitHub URLs in browser.
I often use it to open pull-requests to merge a branch that I just pushed to, or grab the URL to my latest commit.
ConstantsArray
A PHP utility for interpolating constants in strings. Started off as a proof-of-concept, but was proved to be handy in several occasions.