For a CS 151 class at Grinnell, we had to do a final project in Scheme. I ported it to JS, and the original can be found here too.