Giter Club home page Giter Club logo

deciduously-com-clj's Introduction

deciduously.com

GithubVersion Build Status GitHub license

Contents

  1. Run
  2. Build - requirements
  3. Libraries
  4. Acknowledgements

Run

To download and run the latest release make sure you have java available and execute the following:

cd ~
wget https://github.com/deciduously/deciduously-com/releases/download/v0.1.4/deciduously-com-0.1.4-bundle.bin.tar.xz
tar xvf deciduously-com-0.1.4.bin.tar.xz
cd deciduously-com/ && java -jar target/server.jar

server.jar reads the following environment variables, given with their defaults:

PORT=3000
DIST=dist/
BUILD=dev

Build

Requirements

Bundle

git clone https://github.com/deciduously/deciduously-com
cd deciduously-com/ && make install

This takes about four minutes to run, longer the first time as boot gathers dependencies - go put on a nice hot cup of your favorite kind of tea. The resulting folder can then be used as described in "Run" at dist/. make release will produce a compressed archive at release/deciduously-com-0.1.3-bundle.tar.xz. Run make help for a list of all available make targets.

Hack

boot -h for the full list of available tasks. I define the following in build.boot:

  • boot build to export the static site and build a production uberjar at target/server.jar.
  • boot dev to start a development server with hot reloading
  • boot dist to export the static site
  • boot prod to export and serve the static site

Instead of boot build at first, I recommend using make install to invoke boot build and put together the runtime environment for you. Fewer stacktraces are almost guaranteed.

Use make test to run make release and then boot midje. Check Travis for recent outputs.

Libraries

Acknowledgements

Many thanks to Christian Johansen's tutorial. I use boot instead of lein but otherwise followed this quite closely for the static site component.

The makefile is adapted partially from boot's very own - I'd never written one and read theirs, hacked some stuff together and destroyed it for a day and a half. Feel free to point and laugh, sling vegetables, and/or open a pull request!

deciduously-com-clj's People

Contributors

deciduously avatar

Watchers

 avatar  avatar

deciduously-com-clj's Issues

Mines walkthrough post

Not a walk-through of how to build, but a walk-through of the completed app. Start with new game, discuss the machinery for someone learning Reagent (or Clojure?) for the first time.

Dockerize

I want to move to DigitalOcean, Docker sounds like a good way to facilitate this and a good skill to pick up.

More complete testing

Ensure the makefile is behaving appropriately i.e. returning non-0 error codes for failed tests.

Add coverage testing, maybe? In any case, more than you have

Remove jar

Really part of rebuilding for docker, but significant enough to warrant its own issue.

It was a nice idea, but we do not need our own server. The whole point is that we don't for this app. Save the aot config and fancy build stuff for DRAT.

Remove that jar!

Bring everything back up

  • Ensure docker thing works
  • Fix DO SSH config and stuff - you may need to kill the droplet and start over

Stop pre-exported JS from being sanitized

e.g. in mines the >>> operator is transformed to >>>, which is a nice thought but NOT what I want here, and I need to find where I've asked it to do that.

Attendance post

Talk about how you made something useful for once in your life

Attendance demo

Will need to include a "mock" button to load up the mock roster, for demo purposes

Analytics

Write a pixel, find a library, idc, just get you some statz.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.