Board Ultimatum WebApp
A noir webapp acting as the front-end to the board-ultimatum board game recommendation engine.
Just get the dependencies and run the web app.
lein deps # Not entierly necessary since lein run will do this itself. lein run
You can also launch a REPL with
You need mongo to run the web app. Once mongo is installed and running all the current setup should work out of the box. By default it will use a database called "board". To change this simply copy the given sample config and modify it.
cp resources/config.sample.clj resources/config.clj $EDITOR resources/config.clj
This file is read during the
You'll want to get the our bootstrap
submodule first. You can either use the
--recursive flag when you clone.
git clone email@example.com:DRSNJM/board-ultimatum.git --recursive
Or if you have already cloned, from the base of the repository:
git submodule init git submodule update
Once you've pulled in the submodule you can use the Makefile in the root of this project. It has four helpful tasks:
make deps-- Install bootstrap compilation dependencies. Requires having npm installed already.
make bootstrap-- The default task (so simply running
makewill work just as well) compiles all bootstrap resources completely.
make quickbs-- Does a quick version of the bootstrap compilation that only compiles LESS resources and puts them uncompressed into
resources/public/css/bootstrap.min.css. This is so you can use the
quickbstask during development without having to change the CSS resourced referenced by the layout. However, this also means that for production ready code you must run the
bootstraptask before committing.
make watch-- A helpful task that starts a watchr (
gem install watchr) process that runs
make quickbswhenever a LESS file is modified.
A normal development process once the bootstrap submodule set up would go something like this:
- Modify LESS files and view the results by simply reloading the page you are working on.
- Once you've got something you like commit the changes in the submodule.
make watchprocess and run
maketo generate the compressed resources.
- Commit everything in the main project (e.g. the updated submodule commit and the updated compiled resources).
This project uses kibit for code quality static analysis.
Use the following command to run tests:
You can also check facts in a repl. This way you don't have to start up another JVM each time you want to retest.
=> (use 'midje.sweet) => (load-facts)
For more detailed instructions see the midje documentation on testing in the repl.
Test coverage is a work in progress.
Copyright (C) 2012 DRSNJM
Distributed under the Eclipse Public License, the same as Clojure.