{"id":24414340,"url":"https://github.com/squilliamx/nfts-2024","last_synced_at":"2026-05-19T01:39:56.688Z","repository":{"id":190878661,"uuid":"683194060","full_name":"SquilliamX/NFTs-2024","owner":"SquilliamX","description":"MoodNFT: A sophisticated Ethereum-based NFT platform featuring dynamic on-chain SVG storage, mood-changing mechanics, and comprehensive testing. Built with Solidity/Foundry, demonstrating advanced smart contract development including gas optimization, secure access controls, and Base64 encoding for true decentralization.","archived":false,"fork":false,"pushed_at":"2024-12-26T05:07:06.000Z","size":670,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-20T07:17:53.249Z","etag":null,"topics":["base64-encoding","blockchain-technology","ethereum","evm-blockchain","foundry","nft","openzeppelin","solidity"],"latest_commit_sha":null,"homepage":"","language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SquilliamX.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-25T20:29:01.000Z","updated_at":"2024-12-26T05:07:09.000Z","dependencies_parsed_at":"2024-12-04T21:25:43.461Z","dependency_job_id":"f6904794-c412-40d3-b94e-490d7a0efd66","html_url":"https://github.com/SquilliamX/NFTs-2024","commit_stats":null,"previous_names":["squilliamx/foundry-nft-f23","squilliamx/nfts-2024"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SquilliamX%2FNFTs-2024","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SquilliamX%2FNFTs-2024/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SquilliamX%2FNFTs-2024/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SquilliamX%2FNFTs-2024/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SquilliamX","download_url":"https://codeload.github.com/SquilliamX/NFTs-2024/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243392331,"owners_count":20283564,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["base64-encoding","blockchain-technology","ethereum","evm-blockchain","foundry","nft","openzeppelin","solidity"],"created_at":"2025-01-20T07:17:58.241Z","updated_at":"2026-05-19T01:39:56.650Z","avatar_url":"https://github.com/SquilliamX.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MoodNFT: Dynamic Emotional NFT Platform\n\n![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)\n![Solidity](https://img.shields.io/badge/Solidity-0.8.19-blue)\n![Framework](https://img.shields.io/badge/Framework-Foundry-red)\n\n## Overview\n\nMoodNFT is an innovative smart contract platform that introduces dynamic, emotion-driven NFTs to the blockchain space. Built with Solidity and leveraging the ERC721 standard, these NFTs can change their visual representation based on the owner's mood, creating an unprecedented level of interaction between digital assets and human emotion.\n\n## Technical Highlights\n\n- **On-Chain SVG Storage**: All artwork is stored directly on-chain as base64-encoded SVG data, ensuring true decentralization and permanent availability\n- **Dynamic State Management**: Implements sophisticated state management for mood tracking using Solidity enums and mappings\n- **Gas Optimization**: Utilizes storage patterns and memory management best practices to minimize transaction costs\n- **Comprehensive Testing**: Features both unit and integration tests with 100% coverage\n- **Access Control**: Implements secure ownership validation for mood modifications\n- **Base64 Encoding**: Efficient implementation of on-chain base64 encoding for metadata and image URIs\n\n## Smart Contract Architecture\n\n### Core Components\n\n1. **MoodNFT.sol**\n\n   - ERC721-compliant NFT implementation\n   - Dynamic token URI generation\n   - Mood state management\n   - Access control mechanisms\n\n2. **Deployment Scripts**\n\n   - Automated deployment process\n   - SVG-to-URI conversion utilities\n   - Environment-specific configurations\n\n3. **Interaction Scripts**\n   - Minting functionality\n   - Mood modification capabilities\n   - Contract state management\n\n## Key Features\n\n- **Dual-State NFTs**: Each NFT can switch between happy and sad states\n- **Owner-Controlled**: Only token owners can modify their NFT's mood\n- **On-Chain Metadata**: Complete decentralization with no external dependencies\n- **Gas-Efficient**: Optimized storage patterns and function execution\n- **Standardized**: Full ERC721 compliance for maximum compatibility\n\n## Testing Framework\n\nThe project includes a comprehensive testing suite:\n\n- **Unit Tests**: Verify individual component functionality\n- **Integration Tests**: Ensure proper component interaction\n- **Gas Optimization Tests**: Monitor and optimize transaction costs\n- **Access Control Tests**: Validate security mechanisms\n\n## Development Stack\n\n- **Smart Contract Language**: Solidity 0.8.19\n- **Development Framework**: Foundry\n- **Testing Framework**: Forge\n- **Libraries**: OpenZeppelin\n- **Version Control**: Git\n\n## Getting Started\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/SquilliamX/NFTs-2024.git\n```\n\n2. Install dependencies:\n\n```bash\nforge install\n```\n\n3. Run tests:\n\n```bash\nforge test\n```\n\n4. Deploy:\n\n```bash\nforge script script/DeployMoodNft.s.sol\n```\n\n## Interaction Scripts\n\nThe project includes several scripts for interacting with deployed contracts:\n\n```solidity\n// Mint a new MoodNFT\nforge script script/Interactions.s.sol:MintMoodNft\n\n// Flip mood of an existing NFT\nforge script script/Interactions.s.sol:FlipMood --args \u003ctokenId\u003e\n```\n\n## Testing Coverage\n\nThe testing suite includes:\n\n- **Unit Tests**: `test/Unit/MoodNftTest.t.sol`\n\n  - Token URI generation\n  - Minting functionality\n  - Counter mechanics\n\n- **Integration Tests**: `test/Integrations/MoodNftIntegrationTest.t.sol`\n  - End-to-end deployment\n  - Mood flipping mechanics\n  - Access control validation\n\n## Business Applications\n\nThis NFT could be used in:\n\n- **Digital Art**: Dynamic NFT artwork that reflects collector sentiment\n- **Brand Engagement**: Interactive digital collectibles for brand communities\n- **Social Expression**: Blockchain-based emotional expression platform\n- **Gaming**: Dynamic in-game assets that respond to player actions\n\n## Security Considerations\n\n- **Access Control**: Strict ownership validation for mood modifications\n- **Gas Optimization**: Efficient storage patterns to minimize costs\n- **Standards Compliance**: Full ERC721 implementation\n- **Testing Coverage**: Comprehensive unit and integration tests\n\n## Contributing\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the MIT License\n\n## Acknowledgments\n\n- OpenZeppelin for secure contract implementations\n- Foundry team for development framework\n- Ethereum community for standards and best practices\n\n---\n\nBuilt with ❤️ by Squilliam\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquilliamx%2Fnfts-2024","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsquilliamx%2Fnfts-2024","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquilliamx%2Fnfts-2024/lists"}