Skip to content
/ app Public

WIP App for VTubers to create interactive experiences with their viewers

License

Notifications You must be signed in to change notification settings

vtftk/app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

794d379 Β· Feb 25, 2025
Dec 30, 2024
Nov 21, 2024
Dec 13, 2024
Jan 2, 2025
Feb 16, 2025
Feb 18, 2025
Feb 25, 2025
Feb 25, 2025
Dec 29, 2024
Feb 16, 2025
Dec 9, 2024
Dec 15, 2024
Jan 8, 2025
Jan 27, 2025
Dec 1, 2024
Jan 16, 2025
Dec 27, 2024
Feb 13, 2025
Feb 13, 2025
Nov 25, 2024
Dec 30, 2024
Jan 25, 2025

Repository files navigation

VTuber Fun ToolKit (VTFTK)

App for VTubers to create interactive experiences with their viewers

Website

Avatar

Checkout the Website for guides and setup instructions, examples, and documentation for scripting

🎯 Project Overview

This tool allows you to create interactive items that can be thrown at your VTube Studio model, play sounds, trigger VTube Studio hotkeys, and much more with custom scripting.

Inspired by KBonk, this project aims to provide a more tailored and enhanced experience, better suited to my specific needs, preferences, and implementing features that I make use of.

Throwables

⚑ Events

VTFTK has a powerful event system that lets you react to "triggers" and produce an "outcome" for various things.

Triggers: You can react to these things:

  • πŸŽ‰ Channel Point Redeems - Run when a channel point redeem is used
  • πŸ’¬ Chat Commands - Run when specific chat commands are used
  • βž• New Follows - Run when followers are gained
  • ⭐ Subscriptions or Gifted Subs - Run when subscriptions are made
  • πŸ’Ž Bits Donations - Run when bits are donated
  • πŸš€ Raids - Run when another Twitch channel raids you
  • ⏲️ Timers - Run automatically at some fixed time in seconds
  • πŸ“’ Ads Starting - Run whenever an ad break starts
  • πŸ‘‹ Shoutout Received - Run whenever a shoutout is received

Outcomes: You can trigger these:

  • πŸͺΆ Throw items at your avatar
  • πŸŽ›οΈ Activate VTube Studio hotkeys
  • πŸ”Š Play custom sounds
  • πŸ’¬ Send messages in Twitch chat
  • πŸ–₯️ Run custom scripts

Triggers

Triggers

Outcomes

Outcomes

πŸ› οΈ Custom Commands

Create custom commands, using either simple templates or advanced custom code to create your own custom experience.

Custom code

Custom code

Simple template

Simple template

Avatar Nerd

The editor takes advantage of the Monaco to provide a nice editing experience with type hinting right within the editor. See Scripting for details about scripting itself

πŸ’» Scripting

Powerful built-in scripting using JavaScript, powered by the Deno Core runtime using the same performant JavaScript engine used in modern browsers.

Scripting has built in helpers for things such as:

  • 🌐 HTTP Client – Connect with external APIs to fetch or send data.
  • πŸŽ₯ Twitch – Send chat messages, get user details, and give shoutouts with ease.
  • πŸ—‚οΈ Key-Value Store – Save and retrieve data that sticks around even after your stream ends.
  • πŸ“Š Counters – Keep track of numbers like redeems, subs, or any other countable event.
  • πŸ€– TTS Monster - Use the TTS monster APIs from within scripting to generate and play TTS messages
  • πŸ”Š Play Sounds - Play sounds through the overlays both custom sounds and sounds from your list
  • 🎯 Throw Items - Throw items from your collection of items

πŸ”Š Sounds

Play custom sounds for different events, perfect for creating sound alerts! You can also attach sounds to throwable items to play on impact.

Sounds

πŸ€– TTS Monster Integration

This tool is integrated with TTS Monster to let you use AI-generated text-to-speech voices. Currently, it’s available through the scripting API.

Example:

With a custom script, users can redeem a "TTS" reward and input a message for the AI to speak aloud!

TTS Monster Script

🧠 Low Resource Usage

The app is built with Rust for efficient performance, and user data is stored in a lightweight SQLite database, ensuring low memory usage.

While the web technologies used for the UI may take up some resources, you can reduce this by closing the VTFTK window. The app will continue running in the background as just the server, removing any unnecessary resource usage from the UI.

You can easily reopen the webview or fully quit VTFTK by clicking the tray menu icon:

Tray Icon

πŸ› οΈ Built-In Assets

The app includes a collection of pre-configured throwable items from Pixel Mart.

Sounds are sourced from KBonk which is originally sourced from Game Audio GDC specifically from the Hong Kong Action Kit Hit Kit 1 kit

Builtins