A toy software status wall application built with Elixir, Phoenix and React. Use it to display your CI build status and latest project activity on a big screen in the office.
Quite a work in progress. Note that this project is absurdly over-engineered, but it is a much a playground as it is an application.
This project requires both a working installation of Elixir and Node.js (with NPM installed). It uses Redis as its database.
To start your new Phoenix application:
- Install dependencies with
mix deps.get
and thennpm install
. - Start your Redis database with
redis-server
. - Start Phoenix endpoint with
mix phoenix.server
.
Now you can visit localhost:4000
from your browser.
You can run this project's tests in two parts:
- Test Elixir back-end code with
mix test
. - Test Javascript front-end code with
npm test
. - As a shortcut, test both using
bin/test
.
Do make sure you have Redis running the background.
This application renders a list of projects and their status on the client side, while receiving web hooks from external services on the server side. Using websockets, the client is updated immediately.
Currently the only implemented web hooks are:
- a Heroku deployment notification;
- a Codeship build status notification;
- a Github commit status API notification.
To deploy this application to a new Heroku application, use this button: