Community编程与开发github.com

Uzski-Corp/agent-skills

将 React 页面或组件移植到 Phoenix LiveView 和 HEEx,保留风格、响应式行为和交互。适用于 React 到 LiveView 的迁移、JSX 到 HEEx 的转换,或在 Phoenix 中重建 React 界面之前进行检查。

agent-skills 是什么?

该技能(Skill)专门用于将 React 界面(页面或组件)转换为 Phoenix LiveView 和 HEEx 模板。它不仅包括视觉元素的忠实复刻,还强调与目标 Phoenix 应用架构的深度集成,而非机械的语法转换。技能要求代理先全面审查源 React 项目(如 CSS、状态逻辑、组件变体)和目标 Phoenix 应用的约定(如主题、认证、数据访问),并创建一份迁移映射表。在实现阶段,技能指导代理复用目标应用的现有组件、布局和上下文,将服务器状态保留在 LiveView 中,仅对必要的浏览器功能使用 Hooks,并确保完成所有相关状态(加载、失败、权限、恢复等)的处理。最后,技能要求基于迁移映射进行审查,并通过项目验证命令或运行测试来确保质量和运行时正确性。该技能适用于 Cursor 和 Claude Code 等 AI 代理平台,帮助开发者高效、可靠地完成 React 到 Phoenix 的转换工作。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Uzski-Corp/agent-skills/tree/HEAD/skills/react-to-liveview-port

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

React 到 Phoenix LiveView 移植指南

复刻请求的 React 界面,同时与目标应用的架构集成。将源界面作为视觉和行为参考;当目标应用有明确要求且与源不同时,遵循目标要求。通过代码发现约定,而不是假设使用了某个 React 框架、CSS 系统、组件库或 Phoenix 版本。

确定范围与约定

  • 阅读两个项目中适用的仓库说明和相关文档。定位 React 入口点、目标应用以及请求的路由或组件。项目可能位于不同的仓库,也可能共享一个工作区。
  • 检查清单文件和现有实现,以识别样式、组件、字体、主题、资源、路由、认证、数据访问和 JavaScript 集成。在创建新的路由、组件或钩子之前,先检查是否存在现有的路由、部分移植、组件或钩子。
  • 将范围限定在分配的界面和所需的行为上。静态原型不需要新的后端功能;功能性迁移则需要真实的集成或明确披露的差距。
  • 尊重用户的测试和工具权限。源代码检查、参考检查、预览准备、自动化测试和浏览器 QA 是不同的活动;不要假设所有操作都已获得授权。

1. 检查源项目

阅读 css-extraction.md。追踪页面、视觉上重要的子元素、样式、组件变体、资源和状态逻辑。确定:

  • 布局、响应式规则、排版、主题、图像和动画。
  • 库默认值、本地覆盖、条件属性和 CSS 级联之后的有效样式。
  • 导航、表单、覆盖层、加载、权限、变更、持久化和恢复路径(在范围内)。

记录一份简洁的迁移映射表:源组件 → 目标组件,源数据/操作 → 目标上下文/事件,源令牌 → 目标等效物。将观察到的行为与假设和未解决的运行时值区分开。

如果是分析请求,给出发现结果并停止。如果是授权的实现,简要说明重要的差距或偏离并继续。仅当未解决的选择会实质性改变范围、行为或保真度时才提问;对于常规的转换决策,不需要单独的确认。

2. 在 Phoenix 中实现

阅读 liveview-conventions.md。复用目标组件、布局、上下文、授权、令牌、资源和钩子,以复刻所需的结果。

  • 翻译渲染输出和行为,而不是机械地翻译 React 语法或组件名称。
  • 保留视觉值、响应式规则、状态和语义。在没有充分理由的情况下,不要替换为大致相似的字体、图标、组件或动画。
  • 一致地应用明确的目标要求,并解释可见的偏离。切勿将另一个项目的字体限制、存储提供商、路由结构或命名带入移植中。
  • 将服务器拥有的状态保留在 LiveView 和上下文中;使用 CSS 或现有的客户端机制处理本地视觉行为。仅为需要它们的浏览器功能添加 Hooks。
  • 完成适用的加载、空、验证、待定、成功、失败、重试、权限和恢复状态。在失败时保留用户输入,并防止重复操作破坏数据。

3. 审查与交接

对照迁移映射表审查更改,包括响应式/主题变体、授权、事件处理、可访问性和生命周期清理。检查所需的资源和引用的组件是否存在。

仅在允许时使用项目验证命令和运行时工具。如果允许,准备实时预览。切勿仅凭源代码检查就声称运行时、视觉或测试验证。

简要交接:移植了什么、重要的偏离、模拟或缺失的集成、执行或省略的验证、以及用户应该测试的状态。如果依赖项阻止了完成,具体说明它,并在范围内完成独立的工作。

相关技能