Skip to main content

Tag: java


Naima is a Discord bot that I use to manage a jazz listening club with friends. It is implemented in Kotlin using the JDA Discord API, and depends on a MongoDB instance for managing state. Naima allows users to suggest and then subsequently vote on a weekly album to listen to and discuss. Additionally, it pulls album covers and metadata from the MusicBrainz API and uses imagemagick for album cover processing.


SoundBounds is a first-of-its-kind soundtracking mod for Minecraft, allowing players to define sophisticated region-based soundtracks for their worlds. Like Minecraft itself, SoundBounds uses OpenAL (through LWJGL) for its sound engine, allowing for virtually seamless in-game integration and smooth, artifact-free fades and effects. Additionally, it offers a variety of community-focused features such as artist promo links (accessible through its now-playing command), definable groups and featured artists!


Parnassus is a tool for validating notated music according to the rules stated in Johann Joseph Fux’s Gradus ad Parnassum, a classic educational text on contrapuntal harmony. Gradus ad Parnassum provides a set of compositional approaches (referred to as “species”), which grow progressively more complex and are governed by strict rulesets. Parnassus was developed for UBC’s basic OOP course, CPSC 210, to demonstrate my understanding of Java idioms and the Swing toolkit.