Your favourite Discord bot for Twitch stream notifications, part of WolfStar
Network.
WolfStar Official Site Β· Support Server Β· Feedback
Share Starly Repository
Twitch stream notifications for your Discord server. Built for the WolfStar Network.
Table of contents
- ππ» Welcome to Starly
- β¨ Features
- π Self-Hosting Starly Requirements
- π³ Self-Hosting Starly
- π Translating Starly
- β¨οΈ Local Development
- π» Online Development
- π€ Contributing
- β€οΈ Sponsor
Starly is a Discord notification bot built with TypeScript that integrates with Twitch EventSub to provide stream status notifications. It uses HTTP interactions via Discord's HTTP-based bot architecture rather than a persistent WebSocket connection.
- Twitch Stream Notifications: Receive real-time notifications in your Discord channels when Twitch streamers go online or offline.
- EventSub Integration: Uses Twitch EventSub webhooks for reliable, low-latency stream event delivery.
- HTTP-Based Architecture: Built on
@skyra/http-framework(Fastify-based), handling Discord interactions via HTTP endpoints instead of a WebSocket gateway. - Custom Messages: Configure custom notification messages per guild subscription.
- Multi-Language Support: Internationalization via
@skyra/http-framework-i18nwith support for multiple locales. - Rate Limiting: Built-in notification drip control to prevent spam using
@sapphire/ratelimits.
- Node.js: Starly is built on Node.js (v22+), so you will need to have Node.js installed.
- PostgreSQL: Starly uses PostgreSQL as its database via Prisma ORM.
- Redis: Starly uses Redis for caching.
- Twitch Application: A Twitch application with client ID and secret for EventSub integration.
- Discord Bot Application: A Discord bot application configured for HTTP interactions.
The developer team does not support the idea of other self-hosted instances of Starly. The team prides itself on providing the best experience and support for the end-users. As such, an offshoot or unaffiliated mirror of Starly may cause ill effects on the reputation and image of the WolfStar Network. If you wish to see new features implemented, please refer to the developing guidelines linked above.
In addition, Starly was built with a dependence on many services which need consistent maintenance and oversight in order to function and behave properly. These include, but are not limited to:
- PostgreSQL: As database for guild subscriptions and Twitch subscription mappings.
- Redis: For caching and state management.
- Twitch EventSub: Requires a publicly accessible HTTPS endpoint for webhook delivery.
- Other external APIs, each requiring their own individual API keys.
We use Crowdin to translate Starly's messages into different languages. If you'd like to help by contributing new translations or improving existing ones, click here. Thanks for any contributions!
Refer to CONTRIBUTING.md for detailed setup instructions.
Click any of the buttons below to start a new development environment to demo or contribute to the codebase without having to install anything on your machine:
If you like Starly and want to support the project, consider making a donation. Every contribution helps to maintain and improve the bot.
Thank you for your support!
