Find a file
Nicholas Kariniemi 4da9e8a617 Support more than one grub list
- Connecting to / redirects to /<random string>
- Connecting to /:list-name connects users to the list
  :list-name. Changes are synced only with this list.
- A cookie saves the last list visited, so future / visits go to last list
2015-12-17 00:40:51 +02:00
bin Remove unused specljs file 2015-12-11 10:07:51 +02:00
doc Initial commit 2013-07-24 20:39:02 +03:00
resources/public Update Om to fix production build issues 2015-07-05 10:30:21 +03:00
scripts Make datomic script more generic 2015-12-11 10:24:37 +02:00
spec CSP: Correct spec to actually test for n processes (not 3) 2015-12-11 14:48:20 +02:00
src Support more than one grub list 2015-12-17 00:40:51 +02:00
.gitignore Ignore Intellij IDEA files 2015-03-14 13:06:35 +02:00
project.clj Add lein midje as an explicit dev dependency 2015-12-11 10:47:08 +02:00
README.md Add note about running tests 2015-12-11 14:48:55 +02:00

Grub

Grub is a real-time synced grocery list. Mainly it's a way for me to play around with Clojure[Script] and core.async.

Install dependencies

  • Java

  • Datomic

    • Set environment variables:

      DATOMIC_HOME=<Datomic directory>

      DATOMIC_TRANSACTOR_PROPERTIES_DIR=<directory with transactor.properties file>

    • Add Datomic credentials to ~/.lein/credentials.clj.gpg per Datomic instructions.

  • Leiningen

Build for development

$ ./scripts/start_datomic
$ lein cljsbuild auto dev
$ lein run dev

Navigate to http://localhost:3000. Run unit tests with lein midje and end-to-end tests with lein run e2e.

Build for production

$ lein cljsbuild once prod
$ lein run prod

Or you can run the scripts/build.sh script to get a deployment JAR.