Skip to content

Implement Gamification Badges and Achievements for Backers #369

Description

@codebestia

Description 📝

Implement the core logic to implement gamification badges and achievements for backers. This feature is essential for the advanced crowdfunding aspect of the Shade contract, providing necessary tools for modern campaign creators and backers. The system must seamlessly integrate with existing fundraising modules while maintaining strict security checks and accurate state management.

Proposed Steps 📝

  • Define new DataKey entries in types.rs to track the necessary persistent state.
  • Create or update the relevant component module in the components/ directory.
  • Implement the primary action functions ensuring robust require_auth() and role-based checks.
  • Update the main ShadeTrait interface to expose these functions to the Soroban VM.
  • Define and emit appropriate, highly-detailed events in events.rs to facilitate off-chain indexing and UI updates.

Acceptance Criteria ✅

  • The new functionality executes flawlessly on the local testnet and handles concurrent calls.
  • Storage keys and data models are optimized to minimize Soroban rent/fee overhead.
  • Events are emitted correctly containing all necessary structural metadata.
  • The contract passes all static analysis, linting checks, and maintains backwards compatibility.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions