[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-71401":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":23,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":29,"readmeContent":30,"aiSummary":31,"trendingCount":16,"starSnapshotCount":16,"syncStatus":32,"lastSyncTime":33,"discoverSource":34},71401,"page-spy-web","HuolalaTech\u002Fpage-spy-web","HuolalaTech","A remote debugging platform you'll definitely find useful. Lightweight, cross-platform, out-of-box debugging tool","https:\u002F\u002Fwww.pagespy.org",null,"TypeScript",5601,351,32,45,0,1,9,38.64,"MIT License",false,"main",true,[25,26,27,28],"console","debugger","devtools","remote-control","2026-06-12 02:02:52","[page-spy]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy.git 'page-spy'\n[license-img]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002FHuolalaTech\u002Fpage-spy-web?label=License\n[license-url]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy-web\u002Fblob\u002Fmain\u002FLICENSE\n[release-img]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fpackage-json\u002Fv\u002FHuolalaTech\u002Fpage-spy-web\u002Frelease?label=Release\n[release-url]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy-web\u002Fblob\u002Frelease\u002Fpackage.json\n[download-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fdw\u002F%40huolala-tech\u002Fpage-spy-api\n[download-url]: https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-api\n[browser-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@huolala-tech\u002Fpage-spy-browser?label=Browser&color=orange\n[browser-ver-url]: https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-browser\n[uniapp-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@huolala-tech\u002Fpage-spy-uniapp?label=UniApp&color=green\n[uniapp-ver-url]: https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-uniapp\n[wechat-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@huolala-tech\u002Fpage-spy-wechat?label=Wechat&color=green\n[wechat-ver-url]: https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-wechat\n[alipay-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@huolala-tech\u002Fpage-spy-alipay?label=Alipay&color=blue\n[alipay-ver-url]: https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-alipay\n[taro-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F@huolala-tech\u002Fpage-spy-taro?label=Taro&color=blue\n[taro-ver-url]: https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@huolala-tech\u002Fpage-spy-taro\n[harmony-ver-img]: https:\u002F\u002Fharmony.blucas.me\u002Fbadge\u002Fversion\u002F@huolala\u002Fpage-spy-harmony?label=Harmony&color=black\n[harmony-ver-url]: https:\u002F\u002Fohpm.openharmony.cn\u002F#\u002Fcn\u002Fdetail\u002F@huolala%2Fpage-spy-harmony\n[sdk-build-img]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Factions\u002Fworkflow\u002Fstatus\u002FHuolalaTech\u002Fpage-spy\u002Fcoveralls.yml?logo=github&label=build\n[sdk-build-url]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy\u002Factions\u002Fworkflows\u002Fcoveralls.yml\n[sdk-coveralls-img]: https:\u002F\u002Fimg.shields.io\u002FcoverallsCoverage\u002Fgithub\u002FHuolalaTech\u002Fpage-spy?label=coverage&logo=coveralls\n[sdk-coveralls-url]: https:\u002F\u002Fcoveralls.io\u002Fgithub\u002FHuolalaTech\u002Fpage-spy?branch=main\n[api-ver-img]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Ftag\u002FHuolalaTech\u002Fpage-spy-api?label=API\n[api-ver-url]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy-api\u002Ftags\n[api-go-img]: https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fgo-mod\u002Fgo-version\u002FHuolalaTech\u002Fpage-spy-api?label=go\n[api-go-url]: https:\u002F\u002Fgithub.com\u002FHuolalaTech\u002Fpage-spy-api\u002Fblob\u002Fmaster\u002Fgo.mod\n[node-deploy]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNode_Deploy-Install-CB3937\n[node-deploy-url]: https:\u002F\u002Fpagespy.org\u002F#\u002Fdocs\u002Fdeploy-with-node\n[docker-deploy]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocker_Deploy-Install-1E63ED\n[docker-deploy-url]: https:\u002F\u002Fpagespy.org\u002F#\u002Fdocs\u002Fdeploy-with-docker\n[bt-deploy]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FBT_Deploy-Install-20a53a\n[bt-deploy-url]: https:\u002F\u002Fpagespy.org\u002F#\u002Fdocs\u002Fdeploy-with-baota\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\".\u002Flogo.svg\" height=\"100\" \u002F>\n\n  \u003Ch1>PageSpy\u003C\u002Fh1>\n\n[![Release][release-img]][release-url]\n[![license][license-img]][license-url]\n[![Build Status][sdk-build-img]][sdk-build-url] \u003Cbr \u002F>\n[![Browser SDK version][browser-ver-img]][browser-ver-url]\n[![Wechat SDK version][wechat-ver-img]][wechat-ver-url]\n[![Alipay SDK version][alipay-ver-img]][alipay-ver-url]\n[![UniApp SDK version][uniapp-ver-img]][uniapp-ver-url]\n[![Taro SDK version][taro-ver-img]][taro-ver-url]\n[![Harmony SDK version][harmony-ver-img]][harmony-ver-url]\n[![API Version][api-ver-img]][api-ver-url] \u003Cbr \u002F>\n[![Deploy with Node][node-deploy]][node-deploy-url]\n[![Deploy with Docker][docker-deploy]][docker-deploy-url]\n[![Deploy with Baota][bt-deploy]][bt-deploy-url]\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F5407\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F5407\" alt=\"HuolalaTech%2Fpage-spy-web | Trendshift\" height=\"40\"\u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fpagespy?utm_source=badge-featured&utm_medium=badge&utm_campaign=badge-pagespy\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=429852&theme=light\" alt=\"PageSpy - Remote&#0032;debugging&#0032;as&#0032;seamless&#0032;as&#0032;local&#0032;debugging&#0046; | Product Hunt\" height=\"40\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fnews.ycombinator.com\u002Fitem?id=38679798\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fhackernews-badge.vercel.app\u002Fapi?id=38679798\" alt=\"PageSpy - Remote&#0032;debugging&#0032;as&#0032;seamless&#0032;as&#0032;local&#0032;debugging&#0046; | Hacker News\" height=\"40\" \u002F>\u003C\u002Fa>\n\nEnglish | [中文](.\u002FREADME_ZH.md) | [日本語](.\u002FREADME_JA.md)\n\n\u003C\u002Fdiv>\n\n## Intro\n\n**PageSpy** is a tool for debugging projects on platforms such as Web, React Native, Mini Programs, and HarmonyOS apps.\n\nIt wraps native APIs: when those methods run, it filters and transforms the arguments, serializes them in a standard format, and sends them to the debugging client. The client renders the data in an interface similar to your local devtools console.\n\n![Home](.\u002F.github\u002Fassets\u002Fdashboard-en.png)\n\n## Why PageSpy?\n\n> A picture is worth a thousand words.\n\n![Why PageSpy](.\u002F.github\u002Fassets\u002Fwhy-is-pagespy-en.png)\n\n## When to use\n\n_PageSpy shines in any scenario where local console debugging is not possible!_ Let's explore some use cases:\n\n- **Local Debugging of H5 and Webview Applications**: Mobile screens are small, traditional debugging panels are awkward to use, render poorly, and often truncate logs.\n\n- **Remote Work and Cross-Region Collaboration**: Email, phone, and video calls are slow; error details get lost, which leads to misunderstandings and wrong conclusions.\n\n- **Troubleshooting White Screen Issues on User Terminals**: Dashboards and log pipelines need strong business and stack knowledge, so pinpointing the issue on a user's device is slow.\n\nPageSpy is built for teams in situations like these.\n\n## How to use\n\nTo keep your data under your control and make self-hosting straightforward, we ship ready-made deployment options. Pick whichever fits your environment.\n\n### Option 1: Deploy with Node.js\n\n> Video tutorial:\n>\n> \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5zVnFPjursQ\" target=\"_blank\">\u003Cimg src=\".\u002F.github\u002Fassets\u002Fvideo-node-en.jpg\" width=\"320\" \u002F>\u003C\u002Fa>\n\n```bash\nyarn global add @huolala-tech\u002Fpage-spy-api@latest\n\n# if you use npm\n\nnpm install -g @huolala-tech\u002Fpage-spy-api@latest\n```\n\nAfter installation, run `page-spy-api` in the terminal to start the service. When it is up, open `http:\u002F\u002Flocalhost:6752` in your browser. After local testing, deploy the same setup to your server.\n\n### Option 2: Deploy with Docker\n\n> Video tutorial:\n>\n> \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=AYD84Kht5yA\" target=\"_blank\">\u003Cimg src=\".\u002F.github\u002Fassets\u002Fvideo-docker-en.jpg\" width=\"320\" \u002F>\u003C\u002Fa>\n\n```bash\ndocker run -d --restart=always -v .\u002Flog:\u002Fapp\u002Flog -v .\u002Fdata:\u002Fapp\u002Fdata -p 6752:6752 --name=\"pageSpy\" ghcr.io\u002Fhuolalatech\u002Fpage-spy-web:latest\n```\n\nWhen the container is running, open `http:\u002F\u002Flocalhost:6752` in your browser. After local testing, deploy the same setup to your server.\n\n## Contributing\n\nSee [Contributing](.\u002FCONTRIBUTING.md).\n\n## FAQ\n\nSee the [FAQ](https:\u002F\u002Fwww.pagespy.org\u002F#\u002Fdocs\u002Ffaq).\n","PageSpy 是一个轻量级、跨平台的远程调试工具，旨在简化网页和应用的调试流程。它支持多种前端框架与平台，如浏览器、UniApp、微信小程序、支付宝小程序及Taro等，并提供了丰富的API接口，便于开发者集成到自己的项目中。该工具基于TypeScript构建，具有良好的可维护性和扩展性。特别适用于需要远程调试或希望在不同环境下保持一致开发体验的场景，无论是Web开发还是移动应用开发都能从中受益。",2,"2026-06-11 03:37:33","high_star"]