一个前端程序员,9周,22500行代码,5种语言——我用 Vibe Coding 一个人做了一个全栈地缘交易平台

3 阅读11分钟

本文记录了我作为一名资深前端工程师,在完全不懂后端、不懂运维、不懂 Go 语言的情况下,用 Vibe Coding(AI 辅助编程)从零搭建了一个生产级全栈应用的完整过程。不吹不黑,真实经历。


先说结论

9 周时间,我一个人交付了这些东西:

  • 22,500 行代码,分布在 ~200 个文件
  • 5 种编程语言:Python、TypeScript、Go、SQL、YAML
  • 7 个微服务:FastAPI 后端 + Go WebSocket 网关 + Scrapy 爬虫引擎 + Redis + ClickHouse + Nginx + Next.js 前端
  • 3 种数据库:PostgreSQL(12张表)、ClickHouse(3张时序表)、Redis(13类键)
  • 30+ REST API 端点 + 6 种 WebSocket 实时推送消息
  • 7 个新闻爬虫:覆盖伊朗、美国、中国、俄罗斯官方媒体
  • 4 步 AI 分析流水线 + 3 层模型降级链
  • 13 个前端页面 + 30+ 组件
  • 完整的 Docker Compose 部署 + Nginx SSL + Let's Encrypt

如果这是一个传统团队项目,至少需要 5 人(产品+后端+前端+数据+运维),至少 3 个月。

但我只是一个前端程序员。


背景:为什么做这个项目

2026 年初,美伊关系急剧升级。2 月 28 日美以联合对伊朗发动军事打击,霍尔木兹海峡被关闭,全球市场剧烈波动。

作为一名 A 股交易者,我迫切需要一个工具:实时追踪地缘事件 → 自动分析对 A 股各板块的影响 → 推送可操作的交易建议

市面上没有。要么是滞后的券商研报,要么是碎片化的新闻聚合,没有人把"地缘政治事件"和"A 股板块影响"直接关联起来。

于是我决定自己做。

问题是——我只会写前端

领域我的水平
React / Next.js / TypeScript★★★★★ 日常工作
Python / FastAPI★☆☆☆☆ 约等于零
Go☆☆☆☆☆ 从未写过
PostgreSQL / ClickHouse★☆☆☆☆ 只会 SELECT
Docker / 运维★☆☆☆☆ 只会 docker run
爬虫 / AI 工程☆☆☆☆☆ 纯白纸

怎么办?答案是 Vibe Coding


什么是 Vibe Coding

Vibe Coding 是 Andrej Karpathy 在 2025 年提出的概念:你不逐行写代码,而是向 AI 描述你想要什么,AI 帮你实现

但在我的实践中,它远不止"和 AI 聊天"。我总结的公式是:

Vibe Coding = 文档驱动 + AI 执行 + 人工验收

核心变化是:你从"程序员"变成了"导演"。你定方向、做决策、做验收。AI 做所有具体的编码工作。


方法论:三层文档驱动开发

这是我整个 Vibe Coding 实践中最核心的方法论,也是和大多数人"直接跟 AI 聊"最大的区别。

我建立了一套三层文档体系

┌─────────────────────────────────────────────┐
│ 第 1 层:PRD(产品需求文档)~5,000 字        │
│ → 告诉 AI "做什么产品"                       │
│ → 用户画像、功能模块、事件分类、指标体系       │
├─────────────────────────────────────────────┤
│ 第 2 层:TDD(技术设计文档)~15,000 字        │
│ → 告诉 AI "用什么技术怎么做"                  │
│ → 数据库 Schema、API 设计、服务架构、代码骨架  │
├─────────────────────────────────────────────┤
│ 第 3 层:Tasks(任务分解文档)~12,000 字       │
│ → 告诉 AI "现在做哪一步"                      │
│ → 37 项任务、实施步骤、验收标准、代码片段      │
└─────────────────────────────────────────────┘

反直觉的部分:文档本身也是 AI 写的

我的实际输入只有一段 ~500 字的需求描述

"我需要一个追踪美伊局势的平台,能实时推送新闻、分析对 A 股各板块的影响、给出投资建议。要有仪表盘看各种指标。"

然后 AI 推导出了 32,000 字的完整实施方案:

  • 6 大事件分类体系(军事行动、外交谈判、能源市场、政治变动、国际反应、中俄动向)
  • 10 个核心指标(冲突级别指数 0-100、海峡状态、核威胁评估、中国双轨指标...)
  • 12 张 PostgreSQL 表的完整 Schema
  • 30+ API 端点设计
  • 37 项任务的实施步骤和验收标准

500 字 → 32,000 字。这个"需求放大"能力是 Vibe Coding 最被低估的部分。

AI 不只是写代码的工具——它是从模糊目标推导精确方案的推理引擎

为什么文档驱动而不是对话驱动

大多数人做 Vibe Coding 是对话驱动的:

"帮我做个网站""加个登录""用 PostgreSQL""再加个 WebSocket" → ...

问题:

  1. 上下文碎片化:AI 会忘记之前的约定
  2. 不可复用:换 AI 工具就得从头来
  3. 无法验收:自己都说不清做到什么程度了
  4. 无法追溯:出 Bug 不知道谁引入的

文档驱动解决了所有这些问题。文档就是上下文、就是验收标准、就是追溯手段。


系统长什么样

先放架构图,有个整体感知:

┌───────────────────────────────────────────────────────┐
│                    呈现层 (Next.js 14)                 │
│  仪表盘 · 信息流 · 投资建议 · 时间线 · 管理后台        │
│            ↕ REST API + WebSocket                     │
├───────────────────────────────────────────────────────┤
│                    处理层                              │
│  FastAPI (30+ 端点)  ·  Go WebSocket 网关  · Scrapy   │
│  AI 4步分析管线      ·  APScheduler 调度    · 7 爬虫   │
│            ↕ Redis Streams/PubSub                     │
├───────────────────────────────────────────────────────┤
│                    存储层                              │
│  PostgreSQL (12表)  ·  Redis (缓存+队列)  · ClickHouse │
├───────────────────────────────────────────────────────┤
│                    采集层                              │
│  财联社 RSS · Scrapy 爬虫 · Twitter API · AkShare 行情 │
└───────────────────────────────────────────────────────┘

数据流是这样的:

新闻源 → SHA-256 去重 → Redis Stream → AI 4步分析
  → Step 1: 事件识别 (不相关=跳过)
  → Step 2: 板块影响推理 (9条规则)
  → Step 3: 中俄因子分析 (双轨指标)
  → Step 4: 投资建议生成
  → 质量三重校验 (格式/幻觉/一致性)
  → 持久化 (PostgreSQL + Redis + ClickHouse)
  → WebSocket 推送 (Red/Orange 全量广播, Yellow/Blue 定向)
  → 前端实时更新

整个链路从新闻采集到用户收到推送,延迟控制在 5 分钟以内。


逐周叙事:9 周 37 项任务

第 1 周:基础设施(6项任务)

Docker Compose 编排 7 个服务、Supabase 建库 12 张表、ClickHouse 3 张时序表、Redis 键空间初始化、AkShare 行情采集器(11 个函数)、RSS 轮询器。

体感:最难的一周,不是代码难,而是不知道该不该相信 AI 的架构决策。它推荐了 ClickHouse——我连听都没听过。它设计了 Go WebSocket 网关——我一行 Go 都没写过。

我选择了"先信了再说"。事后证明这些决策都是合理的。

第 2 周:AI 引擎 + 后端 API(4项任务)

这周我第一次意识到 Vibe Coding 的真正威力。

AI 分析管线的四步流水线——事件识别、板块影响推理、中俄因子分析、建议生成——完全是 AI 在 TDD 阶段自己推导出来的。我只说了"要分析新闻并给出投资建议",AI 把它展开成了一个有完整 Prompt 模板、JSON 输出格式、降级策略、质量校验的工程系统。

AI 甚至设计了一个"中国双轨指标"的概念:将中国的态度拆分为"外交强硬度"和"经济扩张度"两个独立维度,两者同时走强时触发"强信号"。这个设计比大多数金融产品的指标体系都要精巧。

第 3 周:WebSocket + 前端骨架(4项任务)

Go 网关是整个项目中最"黑盒"的部分。5 个 Go 文件、约 600 行代码,我至今只看懂了大概逻辑。

但它就是能跑——WebSocket 连接、心跳、消息广播、Redis 消费全都正常。

我用了一门自己不会的语言,做了一个正在生产环境运行的服务。 这是 Vibe Coding 最魔幻的体验。

第 4-5 周:功能开发 + 联调

信息流、板块分析、投资建议——进入产品功能开发后效率飙升。联调阶段 Bug 最多:CORS 没配对、WebSocket token 格式不对、Redis Consumer Group 没创建... 但每次把错误日志贴给 AI,它都能快速定位。

第 6 周:爬虫

7 个 Scrapy Spider,覆盖伊朗(塔斯尼姆/迈赫尔)、美国(国务院)、中国(外交部)、俄罗斯(塔斯社/克宫)、Twitter 降级。

Scrapy 是我完全没用过的框架。但 AI 生成的代码结构清晰,我能看懂逻辑但写不出来。

这一周让我真切理解了 Vibe Coding 的核心状态:不需要成为专家,只需要知道"它在跑"且"数据正确"

第 7-8 周:管理后台 + 时间线 + 看板

管理后台是 AI 效率最高的场景——一个 CRUD 页面,从路由到组件到表单验证一次性完成。D3.js 交互式时间线是前端硬骨头,但 AI 一次对话生成了初版,我调了两天样式。

第 9 周:收尾 + 部署

情景模拟、历史回测、多栏布局、紧急加速机制、E2E 测试、部署上线。

docker compose up -d 一行命令,7 个服务全部拉起。真的就这么简单。


四个核心感悟

1. "不懂的领域看不出问题,但这没关系"

初看无比不负责任,但仔细想——Go 网关里有没有 goroutine 泄漏?PostgreSQL 有没有慢查询?我看不出来。

但关键是:这些问题会在使用中暴露。暴露的时候,AI 依然可以帮你修。

这是"事后调试优先"的策略。前提是:项目不是银行系统、AI 修 Bug 的能力足够强、你有足够的监控手段。对于个人项目来说完全可行。

2. "AI 推导复杂需求的能力被严重低估"

500 字模糊需求 → 32,000 字精确方案。6 大事件分类、10 个核心指标、12 张表、30+ API 端点,全是 AI 推导的。

AI 不只是 Copilot(副驾驶),它是 Architect(架构师)。

3. "好模型比好提示词重要一万倍"

同样的提示词给不同模型,质量差异巨大。弱模型生成的 Go 网关编译都不过;强模型一次生成可运行的完整代码。

Prompt Engineering 是弱模型时代的补丁。 模型够强的时候,你只需要说清楚要什么。

4. "不必为现在的模型不够好发愁"

这影响了我的整个策略:

  • Go 代码不够优雅?没关系,下一代模型重新生成就行
  • AI 有内容审查限制?等下一代模型更灵活时自然解决
  • 文档是真正的资产,代码可以重新生成

技能鸿沟跨越:一张图说清楚

     我掌握的能力                    AI 补充的能力
┌────────────────────┐        ┌────────────────────────┐
│ 前端 (React/Next)  │        │ 后端 API (FastAPI)      │
│ CSS / Tailwind     │        │ 数据库 Schema 设计      │
│ D3.js 可视化       │  合并   │ Go WebSocket 网关       │
│ 产品直觉           │  ───→  │ Docker / Nginx 部署     │
│ 用户体验判断       │        │ AI 管线工程             │
│                    │        │ 爬虫 (Scrapy)           │
└────────────────────┘        └────────────────────────┘
                    ↓
     ┌──────────────────────────────────┐
     │  一个人交付的全栈生产级应用       │
     │  22,500 行 · 5 种语言 · 7 个服务 │
     └──────────────────────────────────┘

左边是我会的:前端开发 + 产品直觉。 右边是 AI 补的:后端 + 数据库 + Go + 运维 + AI + 爬虫。 合在一起:一个人交付了一个全栈应用。


诚实地谈风险

Vibe Coding 不是银弹。真实存在的风险:

风险说明
Go 网关出 Bug 无法排查不懂 Go,goroutine 泄漏我 Debug 不了
AI 内容审查阻断国产模型对军事内容审查严格,部分分析失败
爬虫目标站改版Spider 依赖 HTML 结构,改版即失效
"知其然不知其所以然"AI 生成了 JWT 手动解析代码,但我不知道为什么不用库
安全隐患难发现不懂后端安全,可能有我看不见的漏洞

最大的风险是第四条:你可能用了一个有安全漏洞的实现,但因为不懂这个领域,你根本不知道。

我的应对策略是:

  1. 这是个人项目,不做银行系统
  2. CLAUDE.md 里的踩坑记录积累下来,形成项目级"免疫系统"
  3. 等 AI Agent 成熟后,让 Agent 做安全审计

给想尝试 Vibe Coding 的人的建议

  1. 选一个你有领域知识的方向 —— 你不需要会写代码,但需要知道产品该是什么样
  2. 花时间在需求定义上 —— 500 字清晰需求胜过 5000 字模糊描述
  3. 用最好的模型 —— 不要省钱用弱模型,差距是数量级的
  4. 建立三层文档体系 —— PRD → TDD → Tasks,每层为下层提供精确上下文
  5. 维护 AI 记忆文件 —— 类似 CLAUDE.md,记录项目约定和踩坑经验
  6. 按周 Sprint 推进 —— 不要一次让 AI 做太多,逐步推进
  7. 接受不完美 —— 代码不是最优解,但它是可工作的解
  8. 记住:文档是资产,代码可以重新生成

写在最后

有人说 Vibe Coding 是"编程界的自动驾驶"。我觉得这个比喻很贴切:

  • L2(辅助驾驶)= GitHub Copilot 自动补全
  • L3(条件自动驾驶)= AI 生成完整函数/模块,人审查
  • L4(高度自动驾驶)= 文档驱动的 Vibe Coding,你定方向,AI 开车 ← 我们现在在这里
  • L5(完全自动驾驶)= Coding Agent,给需求直接交付产品

我们正处在 L4 到 L5 的过渡期。现在还需要人来"坐在驾驶座上"做验收。但可以预见,很快这一步也会被自动化。

对于每一个想做"超级个体"的人来说:Vibe Coding 让你不再被技术所困。你需要的不是写代码的能力,而是定义"做什么"的产品洞察力和"对不对"的验收判断力。

这两样东西,恰恰是 AI 最不擅长的。

也恰恰是人类最值得培养的。


本文中所有数据均来自对实际代码仓库的分析,未做夸张或编造。项目仍在迭代中。