Frosty Project Overview
Frosty is an innovative mobile application designed for Twitch users who want a more immersive and customizable experience while watching streams. Unlike the official Twitch app, Frosty provides support for third-party emotes, making chat interaction richer and more engaging.
Why Frosty?
Twitch's official mobile app does not support popular emote extensions such as 7TV, BetterTTV (BTTV), and FrankerFaceZ (FFZ), which are widely used by Twitch communities. This limitation results in emote text names being displayed instead of the actual images or GIFs, leading to cluttered and hard-to-read chats. Frosty bridges this gap by seamlessly integrating these third-party emotes into the chat, making the viewing experience much more delightful and accessible.
Key Features
- Third-party Emote Support: Frosty supports emotes and badges from 7TV, BTTV, and FFZ, enriching the chat experience.
- Stream Browsing: Users can easily browse followed streams, top streams, and top categories.
- Smart Autocomplete: Emotes and user mentions are supported with an autocomplete feature.
- Multiple Themes: Choose between light, dark, and black (OLED) themes to suit personal preferences.
- Channel and Category Search: Easily search for desired channels and content categories.
- Chat Management: View and filter chat participants and keep a local message history.
- Viewing Modes: Switch between theater and fullscreen mode for optimal viewing.
- Picture-in-Picture: Allows watching streams while multitasking on your device.
- User Controls: Includes functionality to block and report users if needed.
- Convenience Features: Features such as an emote menu and a sleep timer enhance usability.
For further details on these features and more, users can visit the official website at frostyapp.io.
How to Get Started with Development
Developers interested in contributing to Frosty can follow these setup instructions:
- Install Flutter on your system.
- Clone the Frosty repository from GitHub.
- Register a new application on the Twitch developers console to obtain a Client ID and Client Secret.
- Set the required environment variables using the
--dart-define
option. - Run
flutter pub get
to install necessary dependencies. - Choose either an emulator or a physical device, and then launch the application.
Importantly, Frosty utilizes MobX for state management. Developers should refer to the MobX documentation on code generation to ensure changes within MobX stores are properly applied.
Supporting Frosty
Individuals who appreciate the work done on Frosty can support the project through donations via GitHub Sponsors or Buy Me a Coffee. Additionally, downloading Frosty, leaving a positive review, or starring the GitHub repository helps in showing support and spreading the word about this valuable tool for Twitch enthusiasts.
Licensing
Frosty is available under the AGPL-3.0-or-later license, allowing for both personal and collaborative development efforts to flourish.