Babili is a real-time chat backend built with Ruby, Rails, Node, Socket.io and Docker.
This project use the CREPESourcing framework (https://github.com/crepesourcing) to generate and consume events in real-time.
This root repository is meant to be root folder when you want to run babili on your development machine. It should not be used in prodution.
Description of the folder architecture:
docker-compose.ymlcontains the configuration to launch all the required containers.environmentscontains the envirnoment variables and their development values of all the services.engineis the main service handling the API and the core business logic.clockworkis a service meant to trigger actions on the engine at specific moments of the day.pusheris a Node Websocket server. It is meant to push new messages in real time to users.
-
Clone all repositories on your computer:
git clone https://github.com/Babili/babilicd babiligit clone https://github.com/Babili/engine.gitgit clone https://github.com/Babili/pusher.gitgit clone https://github.com/Babili/clockwork.git
-
Setup databases:
$ ./scripts/setup.sh -
Launch all containers:
$ docker-compose up -d -
Check that the API is running by opening
localhost:6280in your browser
Babili is the product of the Collaboration of the Spin42 team (http://spin42.com) and the Commuty one (https://www.commuty.net).