Repository navigation
feat(growth): Discord/Telegram bot commands, ROI Calculator, and Streak Celebration Modal - #1504
Merged
joelpeace48-cell merged 3 commits intoOct 21, 2026
Conversation
…mands Adds Discord slash-command handler for real-time campaign metrics (FinesseStudioLab#1349) and Telegram /claim command for claimable reward balances (FinesseStudioLab#1350). Both expose webhook routes mounted under /api/v1 with validation and error boundaries. Includes unit tests for all command branches.
…oLab#1351) Provides marketing partners a tool to estimate engagement and retention ROI from budget, reward-per-action, participant count, and conversion rate. Includes responsive layout and unit tests for calculation branches.
…ab#1352) Shows a celebration modal when users hit 7-day or 30-day activity streak milestones. Includes pop/bounce animations, keyboard dismiss support, and a reusable isStreakMilestone utility. Unit tests cover milestone detection and modal interaction.
|
@KidDev88 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1349, Closes #1350, Closes #1351, Closes #1352
Type of Change
Summary
This PR adds four growth-engine features: a Discord
/trivela-statsslash command for real-time campaign metrics (#1349), a Telegram/claimcommand for checking claimable reward balances (#1350), an interactive Campaign ROI Calculator for marketing partners (#1351), and an animated streak celebration modal for 7-day/30-day milestones (#1352).Motivation / Context
Closes #1349, Closes #1350, Closes #1351, Closes #1352 — all four features drive user acquisition, viral loops, sponsor engagement, and user retention across the Trivela platform.
Changes
/trivela-statsservice + webhook routebackend/src/services/discordBotService.js,backend/src/routes/discordBot.js/claimservice + webhook routebackend/src/services/telegramBotService.js,backend/src/routes/telegramBot.jsfrontend/src/components/CampaignRoiCalculator.jsx+.cssfrontend/src/components/StreakCelebrationModal.jsx+.css,frontend/src/utils/streakMilestone.jsbackend/src/index.jsTesting
node --test) covering Discord PING/pong, stats aggregation, active-campaign detection, Telegram claim summary, command routing, and edge cases — all pass.vitest) covering ROI calculation branches, invalid input handling, milestone detection, modal rendering, keyboard dismiss, and click dismiss — all pass.Tradeoffs
isStreakMilestoneutility is exported for reuse.Out of scope