variable-rewards

Generate configurable variable reward systems with daily spins and mystery boxes.

Updated Jun 2, 2026
One-click install
npx skills add https://github.com/ano4l/SiteRent --skill variable-rewards-ano4l
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: variable-rewards
Source: https://github.com/ano4l/SiteRent/tree/main/skills/generators/variable-rewards
Command: npx skills add https://github.com/ano4l/SiteRent --skill variable-rewards-ano4l

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Engaging users with rewards often requires a safe, configurable system that prevents abuse while offering flexible reward types and a transparent probability model.

Core Features & Use Cases

  • RewardPool, Reward, and RewardManager provide deterministic testing and persistence.
  • Daily spin, mystery box, and random bonus mechanisms with daily/weekly caps.
  • UI components (DailySpinView, MysteryBoxView, RewardHistoryView) integrate with SwiftUI and SwiftData for a complete solution.

Quick Start

Initialize a RewardPool (with an optional seed for testing), create a RewardManager with a model context, and render a DailySpinView or MysteryBoxView in your UI.

Frequently Asked Questions about variable-rewards

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add daily spins and mystery boxes to a SwiftUI app?

You can add daily spins and mystery boxes by initializing a configurable RewardPool, creating a RewardManager with a SwiftData model context, and rendering the provided DailySpinView or MysteryBoxView in your SwiftUI interface.

Can I test variable rewards deterministically in SwiftData?

Yes, you can test variable rewards deterministically by passing an optional seed to the RewardPool during initialization, ensuring predictable outcomes for your SwiftData persistence and testing hooks.

How do I prevent users from abusing random bonus rewards in my iOS app?

You can prevent reward abuse by configuring the RewardManager to enforce daily and weekly caps on random bonuses, limiting how many rewards a user can claim within those periods.

How do I display transparent reward odds and history in SwiftUI?

You can display transparent odds and reward history by rendering the RewardHistoryView component in your SwiftUI app, which integrates with SwiftData to show users their past reward claims and probabilities.

Does this variable reward system support custom reward types?

Yes, the variable reward system supports custom reward types through the configurable RewardPool and Reward models, allowing you to define flexible reward categories while maintaining transparent probability models.