loganlinn.log

Projects

An incomplete list of my open-source projects and contributions

Contributions

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.

Demo

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.

Demo

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.