Skip to content

Add NFT Minting and Distribution Logic for Rewards #330

Description

@codebestia

Description 📝

Implement the core logic to add nft minting and distribution logic for rewards. 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

Labels

Stellar WaveIssues in the Stellar wave program

Type

No type

Fields

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