[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6BXMP72XE29HMXDXKBEK2A3":3,"skill-same:01M6BXMP72XE29HMXDXKBEK2A3":72},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":33,"linkOnly":34,"markdownContent":35,"markdownBody":36,"frontMatter":37,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":43,"ownerHtmlUrl":44,"ownerBlogUrl":45,"ownerDescription":46,"updatedAt":47,"install":48,"resources":61},"01M6BXMP72XE29HMXDXKBEK2A3","2048-web-development",null,"Implement or review the 2048 browser client, including its rules engine, responsive UI, accessibility, PWA metadata, screenshots, or SEO.","hoangsonww\u002F2048-Game","hoangsonww","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F124531104?v=4","01M6BXM9A0QGHQBDAT7AVC5SCQ","dav nguyxn","01M6BXM9DMJZ81EY08ZWXN2A5D",22,"MIT","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-web-development\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32],"web","development","web development","2048","2048 web development","screenshots","review","implement","accessibility","browser","metadata","ui","seo","engine","2026-11-10 10:12:30",false,"---\nname: 2048-web-development\ndescription: Implement or review the 2048 browser client, including its rules engine, responsive UI, accessibility, PWA metadata, screenshots, or SEO.\n---\n\n# 2048 web development\n\nRead `AGENTS.md` and `docs\u002Farchitecture.md`. Keep rules in `Web-Version\u002Fgame-engine.js` deterministic and DOM\u002Fstorage concerns in `Web-Version\u002Fscript.js`. The app must remain static and work beneath the GitHub Pages `\u002F2048-Game\u002F` base path.\n\nFor controls, use inline SVG with a `viewBox`, center it through layout, and put the accessible name on the button. Preserve keyboard arrows, WASD, touch swipes, mobile direction buttons, undo, restart confirmation, state recovery, win continuation, and game-over restart.\n\nA board swipe must not scroll the page. The board sets `touch-action: none`, `html`\u002F`body` set `overscroll-behavior: none`, and a non-passive `touchmove` listener scoped to the board calls `preventDefault()` — the other touch listeners are passive and cannot. Keep the `touchcancel` handler that clears the start point, and keep scrolling working for gestures that begin anywhere else.\n\nWhen changing public content or routes, update canonical\u002Fsocial metadata, JSON-LD, sitemap, robots, manifest, and `llms*.txt` where relevant. Do not add claims or structured data that are not visible and true on the page.\n\nRun `make check` and `make test-web`. Optional cloud work lives in `Web-Version\u002Fcloud.js` and `account.js` — keep play local-first and see `docs\u002Fbackend.md`. For visible changes, run `make screenshots-web` and inspect desktop and mobile gameplay, restart, win, loss, About, and cloud surfaces (guest banner, auth dialogs, leaderboard, account).\n","# 2048 web development\n\nRead `AGENTS.md` and `docs\u002Farchitecture.md`. Keep rules in `Web-Version\u002Fgame-engine.js` deterministic and DOM\u002Fstorage concerns in `Web-Version\u002Fscript.js`. The app must remain static and work beneath the GitHub Pages `\u002F2048-Game\u002F` base path.\n\nFor controls, use inline SVG with a `viewBox`, center it through layout, and put the accessible name on the button. Preserve keyboard arrows, WASD, touch swipes, mobile direction buttons, undo, restart confirmation, state recovery, win continuation, and game-over restart.\n\nA board swipe must not scroll the page. The board sets `touch-action: none`, `html`\u002F`body` set `overscroll-behavior: none`, and a non-passive `touchmove` listener scoped to the board calls `preventDefault()` — the other touch listeners are passive and cannot. Keep the `touchcancel` handler that clears the start point, and keep scrolling working for gestures that begin anywhere else.\n\nWhen changing public content or routes, update canonical\u002Fsocial metadata, JSON-LD, sitemap, robots, manifest, and `llms*.txt` where relevant. Do not add claims or structured data that are not visible and true on the page.\n\nRun `make check` and `make test-web`. Optional cloud work lives in `Web-Version\u002Fcloud.js` and `account.js` — keep play local-first and see `docs\u002Fbackend.md`. For visible changes, run `make screenshots-web` and inspect desktop and mobile gameplay, restart, win, loss, About, and cloud surfaces (guest banner, auth dialogs, leaderboard, account).\n",{"name":5,"description":7},"main","cc419901510ce53f8ac8ee3160e4a436a773c6de",".agents\u002Fskills\u002F2048-web-development",14,"https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game","https:\u002F\u002Fthe-2048.netlify.app","https:\u002F\u002Fgithub.com\u002Fhoangsonww","sonnguyenhoang.com","swe @ tiktok & unc-ch graduate","2026-09-28 03:40:00",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add hoangsonww\u002F2048-Game --skill 2048-web-development",{"tool":54,"command":55},"bunx","bunx skills add hoangsonww\u002F2048-Game --skill 2048-web-development",{"tool":57,"command":58},"pnpm","pnpm dlx skills add hoangsonww\u002F2048-Game --skill 2048-web-development","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-web-development\u002FSKILL.md",true,[62,68],{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"agents\u002Fopenai.yaml","REFERENCE","参考文档",236,"https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-web-development\u002Fagents\u002Fopenai.yaml",{"path":69,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":70,"sourceHtmlUrl":71},"references\u002Fdetailed-guide.md",16168,"https:\u002F\u002Fgithub.com\u002Fboisenoise\u002Fskills-collections\u002Fblob\u002Fmain\u002Fskills\u002Fantigravity-azure-maps-search-dotnet\u002Freferences\u002Fdetailed-guide.md",[73,79,90,101,112,122],{"skillNo":74,"name":5,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":33},"01M6BXN2EQG3T79V5M5QHXEM5A","Implement or review the 2048 browser client, responsive UI, accessibility, PWA metadata, screenshots, or SEO.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-web-development\u002FSKILL.md",[],[23,19,20,22,21,25,24,29,26,30,31,28,27],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":85,"publishedAt":33},"01M6BXMZZ4AZZM96QGQ7J4B4TZ","2048-release-readiness","Verify tests, builds, screenshots, metadata, documentation, and release readiness for all 2048 clients.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-release-readiness\u002FSKILL.md",[],[86,22,87,88,29,89,24],"release","2048 release readiness","verify","documentation",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":33},"01M6BXMXJACB2F5PTQBXY4DBJB","2048-ios-development","Implement or review the SwiftUI 2048 client, ViewModel, persistence, accessibility, tests, or simulator flows.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-ios-development\u002FSKILL.md",[],[97,22,98,20,27,25,26,99,100],"2048 ios development","ios","persistence","swiftui",{"skillNo":102,"name":103,"nameZh":6,"description":104,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":105,"categories":106,"keywords":107,"publishedAt":33},"01M6BXMTZ4P5CSWTHCD91XXG8X","2048-cross-platform-parity","Coordinate behavior and UX changes across the web, iOS, and Android 2048 clients.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-cross-platform-parity\u002FSKILL.md",[],[108,22,109,110,19,111,98],"2048 cross platform parity","cross platform","android","ux",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":33},"01M6BXMRQBDQQF17ENG2AMSQ00","2048-android-development","Implement or review the Compose 2048 client, ViewModel, persistence, Gradle build, or emulator flows.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-android-development\u002FSKILL.md",[],[119,120,22,110,20,25,26,121,99],"2048 android development","android development","gradle build",{"skillNo":123,"name":81,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":127,"publishedAt":33},"01M6BXMKVRN5ABGASEW48FD3AE","Perform final release-readiness validation for the 2048 repository, including tests, builds, screenshots, metadata, documentation, and a scoped findings report.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-release-readiness\u002FSKILL.md",[],[86,22,87,89,128,129,29,130,24],"report","validation","repository"]