All projects
TypeScriptNode.jsTwitch APIFirebaseTwurple

AifeDesBot

A Twitch bot for Aife's stream with a custom command system, community games, channel point redemptions, and automated chat management - all backed by Firebase.

2021 - 2023

Overview

AifeDesBot is the Twitch bot running Aife’s channel. It handles everything from custom chat commands to community games and channel point redemptions, with all state persisted in Firebase.

Features

Community games

  • Leader - viewers compete to become the leader of the stream; the community can vote to kick the current leader out; the leader had certain rights notably to increment counters on the stream
  • Challenge - viewers redeem channel points to submit challenges (capped at 5 in queue); proposals over 25 characters are rejected with an in-chat response

Channel point redemptions

  • Emote-only mode - toggle emote-only chat via redemption
  • VIP - grant VIP status to a viewer via redemption

Command system

  • Dynamic command registration and management from Firebase
  • Incrementer commands - counters that track recurring events in chat (e.g. deaths, wins)
  • Mod-only commands for stream title and game updates, synced with the overlay via Firebase

Automated chat

  • AutoMessages - scheduled recurring messages broadcast to chat at set intervals

Event listeners

  • Follows, subs, bits, raids - each with dedicated handlers and Firebase logging
  • Viewer tracking for real-time data in the overlay

Stack

  • Runtime: Node.js, TypeScript
  • Twitch: Twurple
  • Storage: Firebase