DESIGN/设计资源·MOTION
meursyphus/ssgoi
让移动网页拥有原生App般的页面切换,连Safari也能流畅过渡Native app-like page transitions for mobile web — even in Safari
给网页加原生App那种页面切换动画,支持Next.js和SvelteKit。Animated page transitions for mobile web apps using SSR frameworks, including Safari.
怎么装:Install: claude plugin marketplace add meursyphus/ssgoi
02 / 现在的位置02 / Why now
首次发现FIRST SEEN
03 OCT 202603 OCT 2026
增长GROWTH
+1.0%+1.0%
982 → 992 stars · 5 个快照982 → 992 stars · 5 snapshots
状态STATUS
持续活跃Active
项目在最近7天有8次提交,表明仍在活跃开发。Works in Safari where View Transition API is limited
03 / 它能帮你做什么03 / What it helps you do
让手机网页像原生App一样滑动切换页面
只要加两段代码就能给React项目加上页面动画
在Next.js的页面间自动套用翻页效果
在Claude Code里说一句就自动配置页面转场
Add native-like page transitions to mobile web apps
Analyze element motion and overlap from screen recordings
Verify app changes with runtime demos and docs
Integrate transitions via a single link or plugin
04 / 安装04 / Install
$ README 里给出的安装方式。The installation method given in the README.
$ Node 用户的安装方式。The install route for Node users.
两种装法选一个即可 —— 上面那条给命令行用户,下面那条给写代码的用户。Pick one of the two — the first is for command-line users, the second for people writing code.
可通过 npm install @ssgoi/react 或 claude plugin marketplace add meursyphus/ssgoi 安装。Install via Claude Code plugin marketplace or npm package @ssgoi/react.
05 / 限制与风险05 / Limits and risk
风险不是警告,是可信度的一部分。以下结论只基于文档静态扫描,我们不会执行项目里的任何代码。Risk here is evidence, not an alarm. These findings come from static scanning of the docs; we never execute a project’s code.
限制LIMITS
需检查Needs review
静态扫描STATIC SCAN
01控制浏览器Controls a browserapps/docs/.claude/skills/verify/SKILL.md
Playwright is installed globally (asdf node), not in the repo. From a scratch
静态扫描发现一个中等风险:控制浏览器(Playwright 全局安装,不在仓库内)。未发现高风险项。Static scan found a medium risk: Playwright is installed globally, not in the repository. This may affect reproducibility but does not directly impact security.
这里只做静态扫描:读 README、SKILL.md 和依赖清单,不执行代码。没有命中不代表安全。This is static scanning only: we read the README, SKILL.md and dependency list, and never execute code. No findings does not mean safe.
依赖:Dependencies:framer-motion, next-mdx-remote-client
{
"agents": [
{
"agent": "claude-code",
"evidence": "tree: .claude/"
}
],
"apiKey": null,
"docker": null,
"taxonomy": {
"scores": {
"design": 5,
"ai-tools": 0,
"dev-tools": 0,
"indie-web": 0,
"skill-agent": 0,
"productivity": 0
},
"primary": "design",
"secondary": "motion"
},
"localRuntime": null,
"skillMdTotal": 4,
"skillMdErrors": [
{
"path": ".claude/skills/ssgoi-motion-analyzer/SKILL.md",
"error": "no frontmatter"
}
],
"treeTruncated": false,
"categoryScores": {
"data": 0,
"agent": 0,
"media": 0,
"design": 3,
"browser": 0,
"devtool": 0,
"security": 0,
"marketing": 0,
"productivity": 0
},
"classification": [
{
"signal": "3 SKILL.md with name + description",
"weight": 0.95
},
{
"signal": "skills/ directory with 1 markdown files",
"weight": 0.75
},
{
"signal": "Claude Code plugin manifest",
"weight": 0.7
}
],
"scannedSources": [
"readme",
".agents/skills/ssgoi-motion-analyzer/SKILL.md",
".claude/skills/ssgoi-motion-analyzer/SKILL.md",
"apps/docs/.claude/skills/verify/SKILL.md",
"plugins/ssgoi/skills/mobile-web-app/SKILL.md"
],
"skillMdFetched": 4
}