ictgj-voting/README.md

3.5 KiB

ictgj-voting

The ICT GameJam Voting Application

Downloading and Running

  1. Download a binary from the list below that is appropriate for your system
  2. Run the binary, if a database is not found in the current directory, the application will walk you through an initial set up:
    1. Create an admin user
    2. Give the site a title
    3. Name the current game jam
    4. A database will be created for you in the current directory

Command Line Arguments

Configuration arguments

Passing a configuration argument will save the value to the database for future use

  -title=<title>          Set the title for the site  
  -port=<port>            The port to run the site on  
  -session-name=<name>    A name to use for the session  
  -server-dir=<director>  Directory to use for assets (templates/js/css)  
  -reset-defaults         Reset all of the configurable site settings to their defaults  
                          This only affects the settings that can be set from the command line  

Runtime Arguments

These arguments only affect the current run of the application

  -help                   Display the application help, breakdown of arguments  
  -dev                    Run in development mode, load assets (templates/js/css) from file system  
                          rather than the binary  

Prebuilt Binaries

Linux 64 bit
Linux 32 bit
Linux Arm
Mac OS
Windows 64 bit
Windows 32 bit

Building

go get github.com/devict/ictgj-voting

Developing/Contributing

Setup

  1. Fork this repo, rather than cloning directly.
  2. Run go get github.com/mjibson/esc
  3. Then go get your github fork, similarly to the command in the Building section above.
  4. Run go generate
  5. Run go build
  6. Make and commit your changes, then submit a Pull Request (PR) through GitHub from your fork to github.com/devict/ictgj-voting

Notes

  • Pass in the -dev flag to enable development mode (load assets from the file system instead of embedded).
  • After making changes to assets (templates, javascript, css) be sure to run go generate before go build - this regenerates the assets.go file
  • Please use the go tooling to match the standard go coding style.
  • For parts that aren't bound by standard go style, either try to match the already existing style, or give a reason why you think it should change.

Vendorings