f0x
6195959753
|
3 years ago | |
---|---|---|
autojoin-bot | 3 years ago | |
public | 3 years ago | |
server | 3 years ago | |
src | 3 years ago | |
.eslintrc.js | 3 years ago | |
.gitignore | 3 years ago | |
CODE_OF_CONDUCT.md | 3 years ago | |
LICENSE | 3 years ago | |
README.md | 3 years ago | |
index.js | 3 years ago | |
package.json | 3 years ago | |
release.sh | 3 years ago | |
yarn.lock | 3 years ago |
README.md
Matrix Stream Chat
OBS integration for Matrix powered stream chat.
Installation
There's a (relatively) up-to-date bundle in public/
, which can be served by any webserver directly.
If you change any code/styling, install the dependencies with yarn install
, then either use NODE_ENV=development node index.js
for a livereloading development server, and BUDO_BUILD=1 node index.js
to compile a static bundle to public/
again.
Instructions
recommended to set up a stream-specific matrix account, just in case
You can either run the project locally, or use the hosted version at https://streamchat.pixie.town (all data stays local).
Use the login form to authenticate with your matrix server, and select the room you want to display on stream by clicking it. If you see the chat log, all data is successfully stored in localStorage.
Now you can use the get state string
button to get a copy-pastable url with your matrix authentication token and settings. Either open this in a browser window and use an OBS window capture (no transparency possible), or use the URL to configure the OBS browser plugin.
Video demo: https://www.youtube.com/watch?v=1JhnspAx9CQ
TODO / Roadmap
Matrix Stream Chat integration for OBS
- : basic functionality
- : initialize all config from URL (needed for OBS!)
- : stream-safe mode (all config has to happen in different window)
- : more configurability
- : chat colors
- : homeserver, message limit
- : strip reply syntax
- : use twemoji for emoji, as obs chromium doesn't do color fonts
- : media, custom emoji
- : viewer count
- : selectable integration
- : peertube
- : spaces integration? (as flair?)
As embeddable chat client:
- : plain message sending
- : local echo
- : don't trim backlog
- : markdown?
- : (custom) emoji syntax
- : emoji picker
- : custom emoji/stickers (https://github.com/matrix-org/matrix-doc/pull/1951)
- : search
- : keyboard nav
- : handle kick/ban (UI)
- : fix general error handling/display
License, donations
AGPL-3.0. If you want to support my work, you can:
Code of Conduct
In the repository is a copy of Rust's Code of Conduct. Please refer to this before interacting with the project or it's spaces.