A set of stabilized interfaces for cchat implementations, joining the backend and frontend together.
Go to file
diamondburned cd018ef8f9 Added ID type; Added backlog interfaces
This commit adds the ID type, which is a type alias to a string. This
change does not break any APIs and is done purely for documentation
purposes.

This commit also adds backlog interfaces to add support for services
capable of storing and showing chat history.

A subtle behavior change with the above change would be that
MessageContainer implementations are now required to add a mechanism to
invalidate old containers when needed. For example, the MessagePrepender
passed into MessagesBefore must be invalidated by the frontend when the
channel in view is changed. This prevents stray messages from old
channels coming in.

There are many ways to invalidate a container, but the easiest way would
be to attach an optionally atomic boolean into the store and completely
separate the store from the view (aka widget).
2020-08-19 15:58:36 -07:00
services Auto-create plugin dir 2020-05-22 17:37:32 -07:00
text Added text.Plain helper function 2020-08-15 14:10:53 -07:00
utils/split Moved package split to utils 2020-06-10 12:19:13 -07:00
.editorconfig Fixed indentation 2020-05-19 20:46:05 -07:00
LICENSE Added the ISC license 2020-07-19 10:44:34 -07:00
README.md Added member list support; moved documentation off README and into GoDoc 2020-07-19 10:37:51 -07:00
cchat.go Added ID type; Added backlog interfaces 2020-08-19 15:58:36 -07:00
cchat_frontend.go Added ID type; Added backlog interfaces 2020-08-19 15:58:36 -07:00
go.mod Added a plugin repository, stabilized 2020-05-22 16:43:28 -07:00
go.sum Added a plugin repository, stabilized 2020-05-22 16:43:28 -07:00

README.md

cchat

A set of stabilized interfaces for cchat implementations, joining the backend and frontend together.

Refer to the GoDoc for interfaces and documentations.

Known implementations

The following sections contain known cchat implementations. PRs are welcomed for more implementations to be added here.

Backend

Frontend