For developers
Where your code goes.
Gryt is a client, a server and a media server. Four places take code of your own, six of the pieces are on npm, and the whole thing is one person's — so a pull request that fits is worth a lot.
Take a piece
None of these needs a Gryt server to be useful. Four of the six packages are MIT and have nothing to do with chat.
The design system
One set of tokens, two renderers, and a generator that turns a palette into a link.
@gryt/ui →Voice in your own app
Signalling, ICE, tracks and audio behind React hooks. It needs an SFU and nothing else.
@gryt/voice →The APIs
Every REST endpoint and socket event, the SFU protocol, and how a server decides a key is who it says.
Reference →Build on it
Your code, running beside Gryt's. Every one of these has an example in the repository to copy.
Build a bot
It joins like any other client — its own key, its own certificate, and whatever an admin agreed to.
@gryt/bot →Write an addon
A theme is CSS. A plugin runs in a worker of its own and can call what you ticked when you turned it on.
Client addons →Extend the server
A server plugin runs inside the process, with the database. Everybody who joins is told it is there.
Server plugins →Help build Gryt
One person maintains this, with the AI policy published so you can audit what an agent touched.
Contribute a change
What the setup needs, how a change gets in, and what pull requests are and are not wanted for.
Contributing →What is wanted
The roadmap, and where a feature request goes so it lands somewhere it will be read.
Roadmap →Get yours listed
Bots, addons and plugins people have made. Yours goes on the same list, by pull request.
/built →Putting a server on a machine rather than building on one? That’s self-hosting. Reading rather than installing? The source is thirteen repositories, and how Gryt is built with AI says which parts an agent may touch.