The KickChat Client is a small, TypeScript-based wrapper for kick.com's chat system. It uses WebSocket & unofficial API endpoints. and can automatically create new WS connections when the current ones reach their maximum capacity.
This client is designed to simplify the process of building chat bots and other chat-related applications for kick.com.
If you're looking to start building a chat bot or other chat-based applications, the KickChat Client is a great place to start. Its lightweight and has a basic handler logic makes it a good choice as a starter.
-
Clone the repo
git clone https://github.com/retconned/kickchat-client
-
Change directory to the project folder
cd kickchat-client
-
Install dependencies using pnpm (Get it here)
pnpm install
-
Create a
.env
file in the root directory with the following content:cp .env.example .env
- send a message using the website and grab necessary headers from the request in the network tab of your browser to match the axios request in codebase
../src/actions/sendMessage.ts
and fill your.env
file with the values.
- send a message using the website and grab necessary headers from the request in the network tab of your browser to match the axios request in codebase
-
Run the app locally
pnpm dev
- Added support for replying to messages.
- Improved project structure, cleaner code.
- Added support for sending messages.
- Added support for chat commands.
-
Sending messages, replies, and reactions are now possible via unofficial v2 API endpoints & require x-csrf-token & Cookies & other headers.
-
There is currently no official API documentations from the Kick team, and attempting to access the public endpoint will mostly result in cloudflare or authentication related errors.
-
Add role-based access control to the chat features (e.g. moderation actions, pinning messages, etc.)
-
Implement replies & reactions.