This is your work, valued
Haskell developer, musician
breakpoint. Set breakpoints using a GHC plugin
49Typson. Type safe JSON PostgreSQL queries using bidirectional serializers
21graph-trace. Trace the call graph of a Haskell program
20auto-split. GHC plugin for automatic case splitting
19inventory. Haskell project statistics and definition analysis
15opentelemetry-auto. Open telemetry auto instrumentation using GHC plugin
15hi-fi. Higher kinded records plugin
12donuts. A GHC plugin for loops and mutability
10jq-bindings. Haskell bindings to libjq using linear types.
8hydraulics. Lift any pure function over any applicative stack.
6optician. Generate optics with a GHC plugin
6decoy. Highly configurable mock server
6erriscope. Scope out Haskell errors in style
5reflex-retro. A web app for conducting team retrospectives
5pinned-warnings. Preserve warnings in a GHCi session
5reflectacon. Plugin for working with promoted data constructors
4aoc2024. Agda
3aoc2021. Haskell solutions to Advent of Code 2021
3ear-trainer. Advanced intervallic ear training
3monoidal-plugins. Monoidal interface for GHC plugins
2auto-import. Automatically add import statements
2lean-cat. Lean
2math-caddy. Mathematics knowledge base web app
2servant-reachable. Type errors for problematic routers
2MenuBlock. Magento 2 module for inserting cms blocks and static links into the top menu
2auto-extract. Extract code blocks as top level functions
1constable. Safe interface for summarization via Const
1tindeq-overtones. playing with a bluetooth dynamometer
1aoc2022. Rust
1sum-totality. Totality checking for sum type producers in Haskell
1typed-counterpoint. If your composition doesn't follow the counterpoint rules, the compiler rejects it!
1kancepts. kan extension exploration
1generic-uncurry. Provides an n-arity uncurry function using generics
1aoc2020. Advent of Code 2020 Solutions
1record-subsets. Turn a regular haskell record type into subsets of it's fields using some type level programming
1magento2. My ongoing magento 2 projects
1RandomBlock. Magento 2 module that declares the "random block" widget.
1