Skip to content

nilenso/regarde

Repository files navigation

regarde

A Heroku web app using Compojure.

This generated project has a few basics set up beyond the bare Compojure defaults:

Usage

To start a local web server for development you can either eval the commented out forms at the bottom of web.clj from your editor or launch from the command line:

$ lein run -m regarde.web

Initialize a git repository for your project.

$ git init
$ git add .
$ git commit -m "Initial commit."

You'll need the heroku toolbelt installed to manage the heroku side of your app. Once it's installed, get the app created:

$ heroku apps:create regarde
Creating regarde... done, stack is cedar
http://regarde.herokuapp.com/ | [email protected]:regarde.git
Git remote heroku added

You can deploy the skeleton project immediately:

$ git push heroku master
Writing objects: 100% (13/13), 2.87 KiB, done.
Total 13 (delta 0), reused 0 (delta 0)

-----> Heroku receiving push
-----> Clojure app detected
-----> Installing Leiningen
       Downloading: leiningen-2.0.0-preview7-standalone.jar
[...]
-----> Launching... done, v3
       http://regarde.herokuapp.com deployed to Heroku

To [email protected]:regarde.git
 * [new branch]      master -> master

It's live! Hit it with curl:

$ curl http://regarde.herokuap.com
["Hello" :from Heroku]

The cookie-backed session store needs a session secret configured for encryption:

$ heroku config:add SESSION_SECRET=$RANDOM_16_CHARS

Remote REPL

The devcenter article has a detailed explanation, but using the repl task from Leiningen 2.x lets you connect a REPL to a remote process over HTTP. The first step is setting up credentials:

$ heroku config:add REPL_USER=[...] REPL_PASSWORD=[...]

Then you can launch the REPL:

$ lein repl :connect http://$REPL_USER:[email protected]/repl

Everything you enter will be evaluated remotely in the running dyno, which can be very useful for debugging or inspecting live data.

Local Setup

  • Make sure your ~/.lein/profiles.clj file contains the following keys:
{:user {:env {:session-secret "random-string"
              :google-client-id "client-id"
              :google-client-secret "client-secret"
              :oauth-callback-url "http://localhost:3000/oauth2callback"
              :database-name "some-custom-database-name"
              :database-user "johnsmith"
              :database-password "foo"
              :database-host "example.com"}}}
  • Check the database configuration in src/regarde/db.clj

License

Copyright © 2013 FIXME

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •