{"id":50865370,"url":"https://github.com/runner365/gamenft","last_synced_at":"2026-06-15T00:33:35.912Z","repository":{"id":359025698,"uuid":"1244176654","full_name":"runner365/gamenft","owner":"runner365","description":"一个基于 Sepolia 测试网的区块链俄罗斯方块游戏，代码仓库分为三层：  智能合约层（Solidity + Foundry）；前端层Vue 3；后端层Go；","archived":false,"fork":false,"pushed_at":"2026-05-22T12:58:04.000Z","size":29283,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-15T00:32:56.106Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/runner365.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-20T03:10:25.000Z","updated_at":"2026-06-04T09:11:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/runner365/gamenft","commit_stats":null,"previous_names":["runner365/gamenft"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/runner365/gamenft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgamenft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgamenft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgamenft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgamenft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/runner365","download_url":"https://codeload.github.com/runner365/gamenft/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runner365%2Fgamenft/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34343312,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-14T02:00:07.365Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-06-15T00:33:35.076Z","updated_at":"2026-06-15T00:33:35.898Z","avatar_url":"https://github.com/runner365.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e 中文 | [English](README_en.md)\n\n一个基于 Sepolia 区块链俄罗斯方块游戏.\n\n核心玩法： 玩家在浏览器玩俄罗斯方块，根据游戏表现获得奖励（刀、手枪、炸弹）, 并将道具上架到市场合约进行交易。获得的 NFT 可以在链上市场用 GameToken 上架交易，GameToken 与 ETH 之间可通过 Uniswap 互相兑换。\n\n\n# GameNFT — 项目概述\n\n项目功能：\n* 俄罗斯方块游戏，玩家可以在Sepolia网络上进行游戏，获得奖励NFT，包括刀、手枪、炸弹。\n* 游戏奖励NFT的合约地址在Sepolia网络上部署，玩家可以在Sepolia网络上进行游戏，获得奖励NFT。\n* 玩家可以将获得的NFT上架到市场合约进行交易，市场合约支持ERC1155类型的NFT。\n* 市场合约支持ERC1155类型的NFT，玩家可以将获得的NFT上架到市场合约进行交易。\n\n## 主要合约\n* GameToken.sol:GameToken是游戏的代币，基于ERC20标准，玩家需要用ETH在Uniswap上兑换GameToken。GameToken可以在Uniswap上兑换为ETH。\n1）玩家可以在Uniswap上兑换GameToken\n2）玩家可以用GameToken购买独特NFT\n3）玩家可以在市场合约上架NFT进行交易\n* GameItems.sol:GameItems是游戏的奖励NFT合约，基于ERC1155标准，玩家可以在Sepolia网络上进行游戏，获得奖励NFT。\n玩家可以在Sepolia网络上进行游戏，获得奖励NFT。如：某address用户在游戏中获得了一把刀，立刻上链到GameItems合约中。\n* NFTMarketplace.sol:NFTMarketplace是游戏的NFT市场合约，基于ERC1155标准，玩家可以在市场合约上架NFT进行交易。\n1）玩家可以在市场合约上架NFT进行交易，如：某address用户上架了3把刀，价格为100GameToken。\n2）玩家可以在市场合约上购买NFT进行交易，如：某address用户购买了3把刀，支付了100GameToken。\n* UniswapLiquiditySetup.sol:UniswapLiquiditySetup是游戏的Uniswap流动性合约，玩家可以在Uniswap上兑换GameToken。\n\n## 后端服务(golang)\n* 监听区块链事件：监听GameItems合约的TransferSingle事件，获取玩家获得NFT的记录，并存储到数据库中。\n* 提供API接口：提供玩家查询NFT记录的接口，玩家可以通过接口查询自己的NFT记录。\n* 数据库：使用SQLite数据库存储玩家NFT记录，数据库文件为gamenft.db。\n\n## 前端应用(Vue3)-GameNFT\n* 俄罗斯方块游戏：玩家可以在浏览器玩俄罗斯方块，根据游戏表现获得链上ERC-1155 NFT奖励（刀、手枪、炸弹）。\n* NFT市场：玩家可以在市场页面查看所有上架的NFT，进行购买和销售。\n* 玩家可以在市场页面上架自己的NFT进行交易。\n* 玩家可以在市场页面购买其他玩家上架的NFT进行交易。\n* 玩家可以在市场页面查看自己的NFT记录。\n\n注意：钱包采用Phantom Wallet。\n玩家需要在Phantom Wallet中创建一个钱包，才能进行游戏和交易。\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunner365%2Fgamenft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frunner365%2Fgamenft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunner365%2Fgamenft/lists"}