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