Skip to main content

πŸ”΄ Release v2.69.0

⭐⭐ Moderate Complexity β€’ 16 commits β€’ 118 files changed
Shopify rewards syncing, enhanced OIDC authentication, locked community rules enforcement, and improved admin workflows. This release introduces direct Shopify product syncing for rewards, streamlines enterprise OIDC setup with auto-fetched configuration, prevents accidental disabling of community rules, exposes user wallets in public communities, and upgrades our marketing website to v2. A massive release delivering significant value across gamification, security, and integrations.

What’s New

  • Sync Rewards from Shopify - Admins can now directly sync Shopify products as rewards without manual configuration. Browse, select, and activate Shopify store inventory with automatic discount linking.
  • Auto-Fetch OIDC Configuration - Enterprise OIDC setup now auto-detects provider endpoints and supported scopes, eliminating manual URL entry and configuration errors.
  • Locked Community Rules - Once community rules are enabled, they cannot be disabled to maintain compliance and integrity of established gamification rules.
  • Public User Wallets - Users can now view their rewards wallet (earned points, assets, and entries) while anonymous or not logged in, increasing engagement before joining.
  • Website v2 Refresh - Marketing site upgraded with improved navigation, hero sections, and enterprise messaging for better brand perception.

Apps Updated

User App

βœ“ Updated - 12 changes

API

βœ“ Updated - 24 changes

Admin

βœ“ Updated - 21 changes

MCP Server

β€” No changes

Website

βœ“ Updated - 10 changes

Games

β€” No changes

Design System

βœ“ Updated - 5 changes

API Client

βœ“ Updated - 2 changes

Detailed Changes

πŸͺ Shopify Integration

This release marks the beginning of Nudj’s Shopify integration journey. Admins can now leverage their existing Shopify inventory as rewards without manual setup. Key Capabilities:
  • Browse and search products from connected Shopify stores
  • Sync product variants as individual reward tiers
  • Automatically generate and manage discount codes for redemption
  • Track redemption status and inventory in real-time
  • Unlink all rewards at once for store migrations
How It Works:
  1. Admin navigates to Community Settings β†’ Shop Integration
  2. Connects Shopify store via secure OAuth
  3. Syncs products β†’ they appear as selectable rewards
  4. Users redeem β†’ system automatically creates discount codes
  5. Admins track usage across the Nudj platform
Customer Impact: Reduces reward setup time from hours to minutes, eliminates manual discount management, and keeps physical inventory and digital rewards in sync.
Shopify & Features:
  • Shopify reward sync integration endpoints
  • Public wallet exposure for anonymous users (enables pre-engagement wallets)
  • Updated wallet display in app layout for better visibility
  • Redesigned reward asset and entry cards to match updated wallet experience
  • Improved typography with Real Head Pro font addition
Community Updates:
  • Community card component refined for consistency
  • Reward code display improved for redemption clarity
  • Question action component streamlined for better UX
Shopify Integration:
  • New /api/reward/{rewardId} endpoint for Shopify reward queries
  • New /api/sync-reward endpoint for bulk reward syncing
  • New /api/unlink-all-rewards endpoint for store migrations
  • RewardsService extended with Shopify sync logic and inventory tracking
  • Admin schema updated with Shopify-specific fields (productId, variantId, discountCode)
  • Integration schema updated with new Shopify endpoints for external apps
Cross-App Cache:
  • Fixed cache invalidation reliability when updating communities
  • Cache now properly invalidates across user app, admin, and integration APIs
  • Prevents stale data from appearing after configuration changes
OIDC Enhancement:
  • New /api/oidc/well-known endpoint for auto-fetching OIDC configuration
  • Supports provider discovery via .well-known/openid-configuration
  • Extracts available scopes to guide admin configuration
  • Rate limiting (30 req/min) and timeouts (10s) for security
Shopify Management:
  • Discounts table for viewing synced Shopify products
  • Sync Discount Modal for bulk product import and linking
  • Add to Shop Dialog for individual reward linking
  • Shop Allocations List showing inventory allocation across rewards
  • Loading states and selectors for better UX during sync
OIDC Configuration:
  • Enhanced auth-settings-tab with auto-fetch button
  • OIDC provider discovery from well-known endpoints
  • Automatic scope suggestion and validation
  • Improved error handling and user feedback
General Admin UX:
  • Refactored Achievement editor with improved validation
  • Enhanced Challenge editor with better action management
  • Streamlined Post editor with cleaner interface
  • Improved Reward editor with Shopify controls
  • Community selector redesigned for better performance
  • Feature flags form provider enhanced with real-time validation
Community Rules:
  • Rules toggle now permanently locked once enabled
  • Prevents accidental compliance violations
  • Clear visual indicator for locked state
  • Upgraded to Website v2 with modern design system
  • Improved navigation menu with better information hierarchy
  • Enhanced hero sections with enterprise-focused messaging
  • Updated benefits section with clearer value propositions
  • Logo cloud with improved visual presentation
  • Better mobile responsiveness across all pages
  • Refined call-to-action sections for higher conversion

Breaking Changes

None in this release. All changes are backward compatible.

Technical Notes

Cache Invalidation Architecture

The cache invalidation system was redesigned to handle cross-app updates more reliably. When admins update community settings, the system now properly invalidates caches across:
  • User App (dynamic pages showing community config)
  • Admin API (internal dashboards)
  • Integration API (external partner integrations)
This prevents the common issue where users would see stale configuration data after admin updates.

OIDC Well-Known Proxy

To simplify enterprise OIDC setup, we added a secure proxy endpoint that:
  1. Fetches OIDC provider metadata from their .well-known endpoint
  2. Validates and normalizes the configuration
  3. Extracts supported scopes for admin guidance
  4. Includes rate limiting and timeout protection
Admins no longer need to manually copy-paste endpoints from provider documentation.

Shopify Product Syncing

The Shopify integration uses OAuth for secure store connections and webhook-based inventory sync. Products are stored as reward templates, with variants becoming individual reward tiers. Discount codes are generated on-demand at redemption time.

Usage Examples

For Community Admins: Syncing Shopify Rewards

  1. Set Up Shopify Store Connection
    Navigate to Community Settings β†’ Shop Integration
    Click "Connect Shopify Store"
    Authorize Nudj app in your Shopify admin
    
  2. Sync Products as Rewards
    Click "Sync Products"
    Browse available products (live from your store)
    Select products to add as rewards
    Configure discount types (% off, fixed $, free shipping)
    
  3. Users Redeem Rewards
    User clicks reward in community
    System generates unique discount code
    User gets code to use at checkout
    Redemption tracked in Nudj dashboard
    

For Enterprise Teams: OIDC Auto-Configuration

  1. Enter Provider URL
    Navigate to Organization Settings β†’ Authentication
    Paste provider domain (e.g., "https://auth.company.com")
    Click "Auto-Fetch Configuration"
    
  2. Review & Confirm Scopes
    System auto-detects available scopes
    Verify recommended scopes for profile, email access
    Click "Save Configuration"
    OIDC login immediately available
    
  • Reward Redemption System
  • Community Gamification Settings
  • Enterprise Authentication
  • User Points & Currency
  • Leaderboards & Rankings

Performance Improvements

  • Reduced cache invalidation overhead from cross-app updates
  • OIDC configuration caching to minimize provider requests
  • Shopify API calls optimized with efficient product filtering

Contributors

Derek CounihanDerek Counihan5 commits β€’ +8,081/-22,373 lines

Saad KSaad K3 commits β€’ +777/-89 lines

James CockayneJames Cockayne2 commits β€’ +1,956/-244 lines

Zuhayir KZuhayir K2 commits β€’ +117/-40 lines

Derek CDerek C2 commits β€’ +616/-376 lines

Divyesh BhalalaDivyesh Bhalala1 commit β€’ +3/-1 lines

Release Stats

MetricValue
Total Commits16
Lines Added+11,810
Lines Removed-23,119
Files Changed118
Release SizeMassive
ComplexityModerate

v2.69.0 deployed on December 10, 2025