Open source software
Here I list all currently active OSS projects I have authored and/or
maintain. If you wish to contact me regarding a project, use GitHub
issues.
Haskell
| Megaparsec |
Industrial-strength monadic parser combinator library |
| Ormolu |
A formatter for Haskell source code |
| Req |
An HTTP client library |
| Zip |
Efficient library for manipulating zip archives |
| Modern URI |
Modern library for working with URIs |
| GHC syntax highlighter |
Syntax highlighter for Haskell using the lexer of GHC |
| Parser combinators |
Lightweight package providing commonly useful parser combinators |
| Text metrics |
Calculate various string metrics efficiently in Haskell |
| Assignment |
A solution to the assignment problem |
| Forma |
Parse and validate forms in JSON format |
| Path IO |
Operations on files and directories with typed paths |
| FLAC |
Complete high-level Haskell binding to libFLAC |
| Stache |
Mustache templates for Haskell |
| HTagLib |
Haskell bindings for TagLib, an audio meta-data library |
| Hspec Megaparsec |
Utility functions for testing Megaparsec parsers with Hspec |
| Identicon |
Flexible generation of identicons in Haskell |
| Juicy Pixels extra |
Efficiently scale, crop, flip images with JuicyPixels |
| Pagination |
Framework-agnostic pagination boilerplate |
| WAVE |
Work with WAVE and RF64 files in Haskell |
| Tagged identity |
Trivial monad transformer that allows identical monad stacks have different types |
| Req conduit |
Conduit utilities that work with the Req HTTP client library |
| LAME |
A high-level Haskell binding to the LAME encoder |
| FLAC picture |
Support for writing picture to FLAC metadata blocks with JuicyPixels |
| CUE Sheet |
Support for construction, rendering, and parsing of CUE sheets |
| HTML entity map |
Map from HTML5 entity names to the corresponding Unicode text |
MMark
Emacs Lisp
| Modalka |
Modal editing your way |
| Typit |
Typing game for Emacs similar to the tests on 10 fast fingers |
| Nushell mode |
Major mode for Nushell scripts |
| Ace popup menu |
Replace GUI popup menu in Emacs with something more efficient |
| Fix word |
Transform words in Emacs (upcase, downcase, capitalize, etc.) |
| Cyphejor |
Shorten major mode names using user-defined rules |
| Kill or bury alive |
Precise control over buffer killing in Emacs |
| Char menu |
Create your own menu for fast insertion of arbitrary symbols |
| Zzz to char |
Fancy replacement for zap-to-char in Emacs |
| MMT |
Missing macro tools for Emacs Lisp |
| Avy menu |
Library providing avy-powered popup menu for Emacs |
| Fix input |
Make input methods play nicely with alternative keyboard layout |
Other