MAS server and desktop web app
MAS is a web group chat application with a sleek windowed UI.
NOTE: Redis database format will change before 1.0 release. Supported migration tool is not guaranteed. After 1.0 release, mas becomes suitable for the general use.
For more info, see
- Next generation windowed UI
- Messages can include mentions, links, emojis, markdown, images, and youtube videos
- Opt-in email alerts of missed messages
- Infinite scrolling to get older messages
- Another view to browse messages by group and date
- Contacts list with precense information
- Support for 1on1s, local groups and IRC channels (IRC backend implements RFC 2812)
- IRC connections are kept active also when the user is not logged in
- Separate mobile mode
- Node.js: http://nodejs.org/
- Yarn: https://yarnpkg.com/
- Redis: http://redis.io/
- Elasticsearch: https://www.elastic.co/products/elasticsearch/ (optional)
Install Redis, yarn, and latest release of node.js (version 7.6 or later is required)
On Mac you can do this by installing first Homebrew and then
$ brew install node yarn redis
Build different components and install required npm modules using the dev script
$ ./dev.sh build
Launch the server components and redis in foreground
$ ./dev.sh start
http://localhost:3200/and register an account.
Production like setup
docker-compose.yml file. To customize your installation, add default configuration value overrides
to that file as new environment variables. Then you are ready launch the stack:
$ docker-compose up -d
When everything is running, navigate to
http://localhost/. MAS frontend server is listening on port 80 on all interfaces.
Docker compose will create three data volumes. One of the is for the frontend server. Frontend server needs it to store uploaded files. Also if HTTPS is enabled, one option is to place the certs to this volume. In that case it's simplest to use a volume that is mounted from the host.