AI 仿站神器。从此仿站告别双手。截图就能做出网页

# screenshot-to-code

一个简单的工具,可将截图、设计稿和 Figma 设计转换为干净且功能完整的代码,使用 AI 实现。**现已支持 Claude Sonnet 3.5 和 Gemini 2.0 Flash!**

[项目链接](https://github.com/abi/screenshot-to-code/assets/23818/6cebadae-2fe3-4986-ac6a-8fb9db030045)

支持的技术栈:

  • - HTML + Tailwind
  • - HTML + CSS
  • - React + Tailwind
  • - Vue + Tailwind
  • - Bootstrap
  • - Ionic + Tailwind
  • - SVG
  • 支持的 AI 模型:

  • - Claude Sonnet 3.5 - 最佳模型!
  • - GPT-4o - 同样推荐!
  • - DALL-E 3 或 Flux Schnell(通过 Replicate 使用)用于图像生成
  • 参见 [示例](#-examples) 部分以查看更多演示内容。

    我们还新增了对**将网站视频/屏幕录制内容转化为功能原型**的实验性支持。

    google in app quick 3![google in app quick 3](https://github.com/abi/screenshot-to-code/assets/23818/8758ffa4-9483-4b9b-bb66-abd6d1594c33)

    [了解更多视频功能](https://github.com/abi/screenshot-to-code/wiki/Screen-Recording-to-Code)。

    [在 Twitter 上关注我获取更新](https://twitter.com/_abi_)。

    ## 🌍 托管版本

    [试用托管版(付费)](https://screenshottocode.com)。如果您是中大型企业(50 名以上员工),[预约会议以探索定制企业计划](https://cal.com/abi-raja-wy2pfh/30min)。

    ## 🛠 快速开始

    应用包括一个基于 React/Vite 的前端和一个基于 FastAPI 的后端。

    所需密钥:

  • - [OpenAI API 密钥(支持 GPT-4)](https://github.com/abi/screenshot-to-code/blob/main/Troubleshooting.md) 或 Anthropic 密钥(可选)
  • - 推荐同时使用两者以便比较 Claude 和 GPT4o 的结果
  • 如果您希望使用 Ollama 开源模型运行应用(结果质量较差,不推荐),请参见 [此评论](https://github.com/abi/screenshot-to-code/issues/354#issuecomment-2435479853)。

    ### 启动后端(我使用 Poetry 进行包管理 - 如果没有,先安装 `pip install poetry`):

    bash</s><i> </i>cd backend echo "OPENAI_API_KEY=sk-your-key" &gt; .env echo "ANTHROPIC_API_KEY=your-key" &gt;&gt; .env poetry install poetry shell poetry run uvicorn main:app --reload --port 7001<i> </i><e>

    您也可以通过前端的设置对话框(点击加载前端后的齿轮图标)设置密钥。

    ### 启动前端:

    bash</s><i> </i>cd frontend yarn yarn dev<i> </i><e>

    打开 [http://localhost:5173](http://localhost:5173) 使用应用。

    如果希望在其他端口运行后端,请更新 `frontend/.env.local` 中的 `VITE_WS_BACKEND_URL`。

    ### 模拟模式(避免浪费 GPT4-Vision 额度):

    bash</s><i> </i>MOCK=true poetry run uvicorn main:app --reload --port 7001<i> </i><e>

    ### 使用 Docker

    如果系统已安装 Docker,在项目根目录运行:

    bash</s><i> </i>echo "OPENAI_API_KEY=sk-your-key" &gt; .env docker-compose up -d --build<i> </i><e>

    应用将运行在 [http://localhost:5173](http://localhost:5173)。注意,此配置无法用于开发环境,文件变更不会触发重新构建。

    ## 🙋‍♂️ 常见问题

  • - 启动后端时出错,如何修复? 尝试这个。若仍无效,请提交 Issue。
  • - **如何获取 OpenAI API 密钥?**[文档](https://github.com/abi/screenshot-to-code/blob/main/Troubleshooting.md)。
  • - **如何配置 OpenAI 代理?** 如果您因地区限制无法直接访问 OpenAI API,可以尝试 VPN 或设置代理:在 `backend/.env` 中配置 `OPENAI_BASE_URL`,或在前端 UI 设置对话框中直接配置。URL 应包含“v1”路径,如 `https://xxx.xxxxx.xxx/v1`。
  • - **如何更新前端连接的后端主机地址?** 配置 `frontend/.env.local` 中的 `VITE_HTTP_BACKEND_URL` 和 `VITE_WS_BACKEND_URL`,如:`VITE_HTTP_BACKEND_URL=http://124.10.20.1:7001`。
  • - **运行后端时遇到 UTF-8 错误?** 在 Windows 上,用 Notepad++ 打开 `.env` 文件,选择“编码”>“UTF-8”。
  • - **如何反馈?** 您可以提交 Issue 或在 [Twitter](https://twitter.com/_abi_) 联系我。
  • ## 📚 示例

    **纽约时报**

    | | | | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | | | |
    原始版本复刻版本
    Image description![Image description](https://s.rmimg.com/2025-01-20/1737306756-739321-image.png)Image description![Image description](https://s.rmimg.com/2025-01-20/1737306763-247702-image.png)

    **Instagram 页面(不含明星照片)**

    https://github.com/abi/screenshot-to-code/assets/23818/503eb86a-356e-4dfc-926a-dabdb1ac7ba1

    **Hacker News**(初始颜色有误,我们手动调整)

    https://github.com/abi/screenshot-to-code/assets/23818/3fec0f77-44e8-4fb3-a769-ac7410315e5d

    太厉害了 我完全看不懂 一个字牛:cow_face:

    这才是个好东西。

    AI越来越6了现在,很多接触不到的,跟不上节奏了

    好东西mark

    ai太厉害了,以前废寝忘食敲代码,感觉都是个笑话。