Skip to content

Implement Quest Metadata and Description System #104

@RUKAYAT-CODER

Description

@RUKAYAT-CODER

Overview

Add support for storing quest metadata including title, description, requirements, and tags on-chain or via hash reference.

Background

Rich metadata helps users understand quest requirements and makes the platform more user-friendly.

Specifications

Modules to Create:

  • Metadata struct (or hash reference)
  • Metadata storage helpers
  • Query functions for metadata

Tasks:

  • Define metadata structure (title, description, category, tags)
  • Decide on on-chain vs hash-based storage
  • Add metadata to quest registration
  • Implement metadata update function
  • Create metadata query functions
  • Consider gas optimization for large descriptions
  • Write tests for metadata operations

Impacted Files:

  • contracts/earn-quest/src/types.rs (update)
  • contracts/earn-quest/src/quest.rs (update)
  • contracts/earn-quest/src/storage.rs (update)
  • contracts/earn-quest/tests/test_metadata.rs (new)

Labels: contract, metadata, user-experience, priority-low

Acceptance Criteria

  • Metadata can be set during quest creation
  • Metadata is retrievable via queries
  • Authorized users can update metadata
  • Gas costs remain reasonable
  • Support for different metadata formats
  • All metadata operations tested

🙌Contribution Guidelines:

Assignment required before PR submission
Timeframe: 24-48 hours
PR description must include: Close #[issue-number]
Star the repo⭐
For more context, please refer to the contract README 🚀

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions