The project is written in Scala and I'm currently using Simple Build Tool (SBT) to build/test things. My goal has been two-fold - redesign forrest and learn functional programming/message-passing concurrency/scala/etc. As such, it's likely not idiomatic Scala but will hopefully be so as I learn. sbt is a ridiculously simple tool that can be found here: http://code.google.com/p/simple-build-tool/wiki/Setup Following those directions, I basically have ~/bin directory where I added a new script 'sbt' with the following content: #!/bin/sh java -Xmx512M -jar `dirname $0`/sbt-launch-0.7.2.jar "$@" Then, added that to my path, obviously with the jar file in the same directory. In the root project directory (hint: this directory) type 'sbt' which will get you in the sbt interactive shell. Key tasks are 'compile' and 'run' - mostly, you'll just type 'run' at the prompt, which will recompile if necessary and launch the f9 interactive shell. Everything is really rudimentary at this point - I'm trying to carve out some basics first with a focus on simplicity for the user, then, once happy with that, we can build in functionality. So far, once in the f9 shell, you can: init - to initialize project build - to transform sources and build static files in the output dir. (well, eventually) run - to run a webapp at 8080 stop - to stop the webapp at 8080 clean - to clean the output dir There aren't currently any dependencies between tasks, so you need to, for example, make sure you build before you run. To keep things simple in development, I've been just creating the f9 project right in the same directory. So, I'll do something like: sbt > run f9> project doesn't exist, create? (y) I then copy the {forrest-seed-sample}/../xdocs/* into ./sources/docs