End Of Life
Gonimo reached its end of life and is no longer maintained. Expect the server to be shut down eventually.
Thanks to all our users over the years! It has been a pleasure.
Gonimo - GOod NIght MOnitor
Welcome to the source code of Gonimo, the web based baby monitor. You can give it a try here!
Please join us on Gitter, if you have any questions.
Docs
We will create more documentation as things mature. For frontend development have a look at the Gonimo Architecture, which describes how frontend code is supposed to be built (WIP).
Build Instructions
Clone needed repos
First, we are going to need a fork of the reflex-platform. Clone it into a directory of your choice:
$ git clone -b gonimo git@github.com:eskimor/reflex-platform.gitMake sure you have the gonimo branch, as specified in the above command.
Next we need to clone the Gonimo source code:
$ git clone -b develop git@github.com:gonimo/gonimo.gitMake sure you have the develop branch, as specified in the above command.
Now we are ready to rumble.
Setting up nix and the nix binary cache
Follow the setup instructions of the reflex-platform, in order to have nix installed.
For avoiding long build times, I'd strongly recommend to add the following
lines to your /etc/nix/nix.conf (create the file if it does not exist):
binary-caches = https://cache.nixos.org/ https://hydra.nixos.org/ https://nixcache.reflex-frp.org
trusted-binary-caches = https://cache.nixos.org/ https://hydra.nixos.org/ https://nixcache.reflex-frp.org
binary-cache-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= hydra.nixos.org-1:CNHJZBh9K4tP3EKF6FkkgeVYsS3ohTl+oS0Qa8bezVs= ryantrinkle.com-1:JJiAKaRv9mWgpVAz8dwewnZe0AzzEAzPkagE9SP5NWI=
Building Gonimo
Now change to the checked out Gonimo repository.
Backend Build
$ ./cabal new-build gonimo-back
Please note the ./ before cabal, we are using a wrapper script around cabal which sets up a nix-shell.
Save the path of the resulting executable, which is printed at the end. We'll need it for executing it later on. (cabal new-run was broken, at the time of writing).
Warp Build of the Frontend
If you want quick builds, use this. You can build the warp based development frontend by typing:
$ ./cabal new-build gonimo-front-warpSame as for the backend, save the path that is printed at the end.
GHCJS Build of the Frontend
The ghcjs version is built with:
$ ./cabal-ghcjs new-build gonimo-front-ghcjs
Starting Gonimo
Once you've built the backend and either the warp frontend or the ghcjs one, we are ready for running Gonimo.
First start the backend, by executing the previously built executable. It has to be executed from the gonimo directory. Then either start the warp frontend - in this case, you can connect to your running Gonimo by visiting:
http://localhost:3709/index.html
Or connect directly to the backend for accessing the ghcjs build:
http://localhost:8081/index.html
Have fun!