Skip to content

Enhance course module with animations, progress tracking, and admin APIs#16

Open
AyuShetty wants to merge 6 commits intoAvarchLLC:mainfrom
AyuShetty:main
Open

Enhance course module with animations, progress tracking, and admin APIs#16
AyuShetty wants to merge 6 commits intoAvarchLLC:mainfrom
AyuShetty:main

Conversation

@AyuShetty
Copy link
Copy Markdown
Contributor

This pull request adds new artifact files for the Ownable, IERC4906, and ERC721 contracts from OpenZeppelin. These artifacts include both ABI definitions and debug metadata, which are essential for contract interaction and debugging during development.

New contract artifacts added:

Artifacts for ABI and deployment:

  • Added Ownable.json and IERC4906.json containing ABI, bytecode, and metadata for the Ownable and IERC4906 contracts, enabling contract interaction and deployment. [1] [2]

Artifacts for debugging:

  • Added debug metadata files (Ownable.dbg.json, IERC4906.dbg.json, and ERC721.dbg.json) to support contract debugging in development tools. [1] [2]

- Added motion animation to the lesson display on CourseModulePage.
- Improved progress bar with milestone markers and updated completion messages.
- Enhanced lesson viewer with detailed on-chain feedback for NFT minting.
- Updated NFT share modal to display on-chain transaction details and off-chain status.
- Refactored session provider to ensure correct network handling for Polygon mainnet.
- Improved SIWE login button with status messages and error handling.
- Enhanced progress component with smoother transitions.
- Updated environment variables to support Polygon mainnet.
- Refactored claim NFT hook to provide detailed feedback on NFT claiming status.
- Improved blockchain error handling with more descriptive messages and actions.
- Updated certificate generator to reflect correct chain labels.
- Refactored contract service to support Polygon mainnet and ensure proper address handling.
- Updated ENS service to reflect changes in network configuration.
- Refactored NFT service to ensure compatibility with Polygon mainnet.
- Updated viem client to use Polygon mainnet configurations.
- Refactored wallet client to ensure proper network switching and compatibility.
…nd OpenZeppelin contracts

- Created index files for factories and contracts to streamline TypeChain integration.
- Added TypeScript definitions for various OpenZeppelin contracts including Ownable, ERC721, and related interfaces.
- Implemented contract factory methods in HardhatEthersHelpers for easy contract deployment and interaction.
- Implemented POST, PUT, and DELETE methods for section management in courses.
- Added validation for section creation and updates using Zod.
- Included admin role verification for all endpoints.
- Enhanced error handling for course and section operations.

fix(api): improve course completion logic and XP awarding

- Updated course completion endpoint to handle quiz passing and scoring.
- Added checks for already completed courses to prevent duplicate XP awards.
- Enhanced logging for course completion events.

fix(api): refine user progress tracking and XP awarding

- Adjusted progress tracking to prevent XP duplication on module completion.
- Updated user profile data to include XP, level, and streak information.

fix(ui): improve error handling and user feedback in projects page

- Added error state handling for project fetching with retry option.
- Enhanced user experience with loading indicators and error messages.

fix(ui): update NFT components to include owner address

- Modified NFT components to accept and display owner address.
- Improved ownership verification in wallet interactions.

fix(gamification): implement progressive XP level thresholds

- Updated XP awarding logic to use new level thresholds for better progression.
- Refined level calculation based on total XP.

fix(pinata): ensure proper metadata upload handling

- Enhanced metadata upload functions to ensure valid IPFS URIs.
- Improved error handling for Pinata uploads.

fix(wallet): add active wallet address retrieval function

- Implemented function to get the currently active wallet address from MetaMask.
- Improved error messages for wallet-related operations.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants