Carbon: The Matrix client for Discord refugees.
Find a file
2020-10-20 09:49:55 +00:00
build Merge branch 'princess' into drone 2020-10-20 09:44:01 +00:00
src Merge branch 'princess' into drone 2020-10-20 09:44:01 +00:00
.drone.yml Update drone.yml to use a separate zip container 2020-10-20 11:30:08 +02:00
.gitignore Add login pug file 2020-10-19 10:16:16 +02:00
.npmrc dotfiles 2020-10-12 02:25:53 +13:00
build.js Build script creates required directories 2020-10-20 02:15:28 +13:00
jsconfig.json Revert "Add prettier" 2020-10-20 00:43:33 +13:00
package-lock.json Revert "Add prettier" 2020-10-20 00:43:33 +13:00
package.json Build script creates required directories 2020-10-20 02:15:28 +13:00
README.md Add README 2020-10-20 02:52:10 +13:00
spec.js Member data and message dates 2020-10-20 02:05:16 +13:00

Carbon Chat

Carbon is the Matrix client for Discord refugees.

The dream

Carbon's planned features, compared to Discord:

  • End to end encryption
  • $0 per-account custom emojis and custom emoji packs
  • Uses the open Matrix and Mumble systems
  • Much better IRC layout
  • Probably more

Carbon's planned features, compared to Element:

  • Get rid of the unmanageable combined rooms list
  • Groups like Discord's guilds
    • Always have one group selected at a time
    • Synchronised membership, moderators, power levels and bans
    • Ordered channel list
    • Unread indicators
  • Add existing channels to groups
  • Pin any channel to the groups bar
  • Tidy Mumble integration to add voice channels
  • More reliable unreads
  • Per-account custom emojis (Ponies+FluffyChat integration) and custom emoji packs
  • Slightly better IRC layout
  • Probably more

The reality

Carbon is currently technically usable as a chat app, but is very early in development. These important features still need to be implemented:

  • Login GUI
  • Unreads
  • Chat history
  • Formatting
  • Emojis
  • Reactions
  • Groups v2
  • Group management
  • Pinned channels
  • Mumble integration

The code

Building

npm install -D
npm run rebuild

Hosting

Send the files from the build folder to a static file server. Apply a long cache-control header to everything served under /static, and no cache-control header to everything else.

Developing

npm run watch

Files will be rebuilt as you save them.