goes/README.md

43 lines
1.4 KiB
Markdown
Raw Permalink Normal View History

# Goes
2016-06-25 07:14:20 +00:00
GoLang implementation of a simple EventStore
Released under the MIT license. See [LICENSE](https://github.com/adymitruk/goes/blob/master/LICENSE) file.
## Getting started
2016-06-25 07:14:20 +00:00
### Pre-requisites
2016-06-25 07:14:20 +00:00
- Install [GoLang](https://golang.org/doc/install) version 1.6+
- Install [libsodium](https://download.libsodium.org/libsodium/releases/)\* version 1.0.10+ (Linux only^)
- Install [zeromq](http://zeromq.org/intro:get-the-software)\* version 4.0+ (Linux only^)
- Install [msys2](https://msys2.github.io/) (Windows only)
\* On Linux libsodium and zeromq are installed from source (`./configure && make && sudo make install && sudo ldconfig`)
^ On Window libzmq and libsodium are installed using pacman in MSYS2 shell (`pacman -S mingw-w64-x86_64-zeromq`)
2016-06-25 07:36:46 +00:00
You can look at [scripts/bootstrap.sh](https://github.com/adymitruk/goes/blob/master/scripts/bootstrap.sh) to get an idea on how to install all the pre-requisites.
### Build
2016-06-25 07:14:20 +00:00
#### Fetching GO packages
2016-06-25 07:14:20 +00:00
In your GOPATH folder, execute the following commands:
`go get github.com/pebbe/zmq4`
`go get github.com/satori/go.uuid`
#### Compiling the binary
2016-06-25 07:14:20 +00:00
In the project root folder, execute the following command:
2016-06-25 07:14:20 +00:00
`go build -o bin/goes`
2016-06-25 07:14:20 +00:00
### Running the server
2016-06-25 07:14:20 +00:00
In the project root folder, execute the following command:
2016-06-25 07:14:20 +00:00
`./bin/goes --db=./events --addr=tcp://127.0.0.1:12345`
2016-06-25 07:14:20 +00:00
Both flags are optional and their default values are the same as the example.