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.
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.
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).
First, we are going to need a fork of the reflex-platform. Clone it into a directory of your choice:
$ git clone -b gonimo [email protected]:eskimor/reflex-platform.git
Make 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 [email protected]:gonimo/gonimo.git
Make sure you have the develop
branch, as specified in the above command.
Now we are ready to rumble.
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=
Now change to the checked out Gonimo repository.
$ ./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).
If you want quick builds, use this. You can build the warp based development frontend by typing:
$ ./cabal new-build gonimo-front-warp
Same as for the backend, save the path that is printed at the end.
The ghcjs version is built with:
$ ./cabal-ghcjs new-build gonimo-front-ghcjs
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!