Skip to main content

πŸ”΄ v2.61.0

πŸ”΄ Massive Release β€’ ⭐⭐ Moderate Complexity β€’ 7 commits β€’ 108 files changed
This release introduces powerful new engagement features for platform administrators, including supply management controls for rewards, interactive voting actions for end users, and Shopify integration for seamless e-commerce reward redemptions. Enhanced authentication handling ensures smoother user experiences across all platforms.

What’s New

  • Control reward allocation budgets β€” Set per-reward and per-user limits to manage supply constraints and prevent over-allocation
  • Engage users with voting polls β€” Launch real-time polling questions with live result visualization and user participation tracking
  • Redeem rewards via Shopify β€” Accept Shopify discount codes as reward redemptions, connecting your gamification directly to your online store
  • Improved anonymous user support β€” Enhanced authentication flow for temporary and guest user experiences
  • Enhanced session stability β€” Better session handling and lifecycle management across platforms

Apps Updated

User App

βœ“ Updated - 3 changes

API

βœ“ Updated - 4 changes

Admin

βœ“ Updated - 3 changes

MCP Server

βœ“ Updated - 1 change

Website

βœ“ Updated - 1 change

Games

β€” No changes

Detailed Changes

Reward Supply Management
  • Set total supply limits per reward to control inventory
  • Configure per-user allocation caps to prevent excessive claiming
  • Distinguish between asset supplies (owned) and entry supplies (chance-based)
  • Visual feedback on supply status in reward cards
  • Manage allocations across communities and shops with individual limits
Challenge & Action Configuration
  • New Voting action type for creating polls and surveys
  • Configure voting questions with custom options
  • Set up real-time result tracking and display
  • Localized voting options across multiple languages
  • Improved form handling for complex action types
Voting Action UI
  • Vote on polls with clear option presentation
  • View live voting results in real-time
  • Track your previous selections when revisiting actions
  • Smooth state management for valid/invalid input states
  • Enhanced action detail display with question context
Reward Redemption
  • New Shopify discount code redemption flow
  • Seamless integration with e-commerce checkout
  • Support for multiple display modes in redemption process
Voting Action Backend
  • Complete voting action validation and participation handling
  • Real-time result aggregation and calculation
  • User selection tracking and storage
  • Language-aligned voting attributes across communities
  • Comprehensive test coverage for voting logic
Shopify Integration
  • New reward redemption type for Shopify discounts
  • Shopify discount ID and prefix management
  • Redeemable asset type for Shopify configurations
  • Pagination and filtering for Shopify rewards
  • Async redemption asset tracking
Distribution & Allocation
  • Supply limit enforcement for both assets and entries
  • Per-user allocation tracking and validation
  • Enhanced distribution management service
  • Support for unlimited or capped allocations
  • New voting action component with results visualization
  • Shopify reward model definitions and schemas
  • Enhanced action icon library with voting icon
  • Multi-language voting copy and translations
  • Type-safe reward redemption configuration models
  • Improved anonymous user lifecycle management
  • Enhanced session handling and validation
  • Better auth state consistency across applications
  • Updated session configuration for reliability

Usage Examples

Setting Up Reward Supply Limits

Configure how many times a reward can be claimed:
// Admin API: Create reward with supply limits
{
  name: "Premium T-Shirt",
  assetsSupply: 100,           // 100 total shirts available
  maxAssetsPerUser: 1,          // Each user can claim max 1
  entriesSupply: "Infinity",    // Unlimited raffle entries
  allocations: [
    {
      communityId: "com_123",
      supply: 50,              // 50 allocated to this community
      maxPerUser: 1
    }
  ]
}

Creating a Voting Action

Set up an interactive poll for user engagement:
// Admin API: Create voting question
{
  type: "question-vote",
  attributes: {
    question: "What feature should we build next?",
    options: [
      { id: "opt_1", label: "Better dashboards" },
      { id: "opt_2", label: "Mobile app" },
      { id: "opt_3", label: "API integrations" }
    ]
  }
}

// User sees live results and can track their vote
// Results show vote counts and percentages in real-time

Shopify Reward Redemption

Connect Shopify discounts to your reward system:
// Admin API: Create Shopify reward
{
  name: "20% Off Discount",
  redemptionConfig: {
    type: "shopify",
    shopifyDiscountId: "disc_1234567890",
    prefix: "NUDJ20",
    displayMode: "Code"  // Show discount code to user
  }
}

Breaking Changes

None in this release. All changes are additive or improve existing functionality without affecting existing implementations.

Technical Notes

Allocation & Supply System:
  • Implements granular control over reward distribution with per-user and total supply limits
  • Distribution management service enhanced to validate allocation constraints before redemption
  • Supports both capped and unlimited allocation models through enum-based supply values (β€œInfinity”)
Voting Action Architecture:
  • Server-side result calculation ensures accurate vote tallying
  • User state tracking persists selections across session boundaries
  • Language alignment handlers automatically translate voting options across locales
  • Input validation enforces single-vote semantics per user
Shopify Integration:
  • Shopify rewards use new RewardRedemptionConfigShopify model
  • Display modes (Code, QR, Link) support different redemption UX
  • Redeemable asset tracking enables async code generation and validation
  • Pagination support for managing large Shopify reward catalogs
Authentication Enhancements:
  • Anonymous user sessions now properly lifecycle (creation β†’ use β†’ cleanup)
  • Session validation strengthened for multi-platform consistency
  • Improved state management for temporary vs. persistent users

Contributors

ZuhayrK00@ZuhayrK002 commits β€’ +1,597/-476 lines

SaadK94@SaadK942 commits β€’ +1,175/-455 lines

jamescockayne@jamescockayne1 commit β€’ +1,229/-38 lines

erek_d@me.com@erek_d2 commits β€’ +878/-8 lines

Release Stats

MetricValue
Total Commits7
Lines Added+4,878
Lines Removed-976
Files Changed108
Release SizeMassive
ComplexityModerate

v2.61.0 deployed on December 9, 2025