Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP in Clojure / App Engine / Noir

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 test
Octocat-spinner-32 war
Octocat-spinner-32 .gitignore
Octocat-spinner-32 project.clj
Octocat-spinner-32 todo.txt


Source code for the webapp:

A matchmaking site for Kindle and Nook owners to allow them to share books with each other.

The site uses:

  • Google App Engine (with appengine-magic)
  • Noir

Dev Notes

;; To test URL fetch when in REPL:
(require '[appengine-magic.local-env-helpers :as ae-helpers])
(ae-helpers/appengine-init ( ".") 8090)

;; To run dev server:
;; Start REPL, then run:
(require '[appengine-magic.core :as ae])
(require '[bookfriend.app_servlet :as app])
(ae/serve app/bookfriend-app)

;; To stop / start
(ae/serve app/bookfriend-app)

Pushing to App Engine

lein appengine-prepare
~/bin/appengine-java-sdk-1.5.4/bin/ update war

Data model notes

  - book
  - user
  - book-user
  - loan

Migration from old system

Data import

lein uberjar
java -cp bookfriend-1.0.0-SNAPSHOT-standalone.jar bookfriend.dataimport localhost:3306:user:pw localhost:8080


Copyright (C) 2011 James Cooper

Distributed under the Eclipse Public License, the same as Clojure.

Something went wrong with that request. Please try again.