The Plural Console is the administrative hub of the plural platform. It has a number of key features:
- Reception of over-the-air application updates
- Configurable, application-targeted observability
- dashboards
- logging
- Common incident management, including zoom integration and slash commands
- Interactive Runbooks
We strive to make it powerful enough to make you feel like any application you deploy using Plural has an operational profile comparable to a managed service, even without being one.
Console's server side is written in Elixir, and exposes a graphql api. The frontend is in react, all code lives in this single repo and common development tasks can be done using the Makefile at the root of the repo.
To begin developing the web app, install npm & yarn, then run:
cd assets && yarn install && cd -
make web
To make changes to the server codebase, you'll want to install elixir on your machine. For mac desktops, we do this via asdf, which can be done simply at the root of the repo like so:
asdf install
Once elixir is available, all server dependencies are managed via docker-compose, and tests can be run via mix
, like so:
make testup
mix local.hex
mix deps.get
mix test
If asdf install
fails with cannot find required auxiliary files: install-sh config.guess config.sub
then run:
brew install autoconf@2.69 && \
brew link --overwrite autoconf@2.69 && \
autoconf -V
For Mac Machines, if unable to download Erlang via asdf
then run:
brew install erlang@23
cp -r /opt/homebrew/opt/erlang@23/lib/erlang ~/.asdf/installs/erlang/23.3
asdf reshim erlang 23.3