TL;DR I shipped Scholar AI's MVP in 3 days with Vibe Coding: an academic tool that searches papers, auto-generates summaries, does multilingual translation, and answers questions with RAG. Stack: Python / FastAPI / React / PostgreSQL / ChromaDB. Vibe Coding is great for rapid prototypes and standardized features, but complex business logic and performance-critical paths still need handwritten code — treat it as your coding copilot, not autopilot.

What Is Vibe Coding

Vibe Coding comes from Andrej Karpathy. The core idea: instead of hand-writing every line of code, you describe your intent and let AI generate most of the implementation. Your role shifts from “person who writes code” to “person who directs code.”

Sounds like laziness, but it actually demands a higher level of skill — you need to know exactly what you’re building, be able to judge the quality of AI-generated code, and know when to step in manually. For me, it was a completely new way of programming.

“There’s a new kind of coding I call ‘vibe coding’, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” — Andrej Karpathy

The Project: Scholar AI

Scholar AI is a research assistant tool. As a college student who reads papers and organizes literature constantly, I know how painful that process is. I wanted a tool that could quickly find relevant papers, auto-generate summaries, and even handle multilingual translation.

This idea sat in my head for a long time, but the traditional approach would have taken at least one or two weeks. Then I tried Vibe Coding — three days later, a working MVP was live.

Project Overview
  • Project: Scholar AI
  • Stack: Python / FastAPI / React / PostgreSQL / ChromaDB
  • Core features: Paper search · Smart summaries · Multilingual translation · RAG Q&A
  • Build time: 3 days (MVP)
  • GitHub: 37chengshan/scholar-ai

Day 1: Backend from Scratch

Day one’s goal was simple: get a working backend running. I used Claude as my main coding assistant, generating code by describing what I needed.

01

Define the API surface

Describe the endpoints you need in plain language, let the AI generate an OpenAPI spec, then generate FastAPI route code from the spec. This took about 30 minutes.

02

Database design

Describe how the data models relate, let the AI generate SQLAlchemy models and Alembic migration scripts. Hit a few type-mapping issues and fixed a couple of fields by hand.

03

RAG pipeline

This was the fun part. Describe the retrieval-augmented generation flow: chunking → embedding → retrieval → generation. The AI scaffolded the ChromaDB integration and OpenAI API calls for me.

Day 2: Frontend Takes Shape

Day two was frontend. I went with React + TypeScript plus the shadcn/ui component library. Vibe Coding’s speed boost is even more obvious on the frontend — describe a page’s layout and interactions, and the AI can usually generate usable component code in one shot.

Key lesson: don’t try to describe an entire page at once. Break it into small components and describe them one by one — the results are far better. For example, “a search box with autocomplete that shows paper titles and authors in the dropdown” gives much better results than “build a search page.”

Vibe Coding doesn't let you stop thinking — it lets you spend your brainpower where it matters more: product thinking and user experience.

Personal note

Day 3: Integration & Polish

Day three was integration and polish. Frontend-backend wiring, error handling, loading states, responsive layout — this “dirty work” is where Vibe Coding is actually most efficient. Describe a problem, the AI proposes a fix, you verify, move on.

A few traps I hit:

  • CORS config: AI-generated CORS middleware sometimes drops specific headers — add them by hand
  • Streaming responses: SSE (Server-Sent Events) has a lot of fiddly details; the AI’s first attempt had bugs, but once I described the errors clearly, the fix was quick
  • Vector DB performance: ChromaDB’s defaults get slow with larger datasets — tune the index parameters manually

Reflections

Shipping a full-stack AI app MVP in three days used to be unthinkable. Vibe Coding genuinely changed my development rhythm — from “writing code” to a loop of “describe requirements, verify output, iterate.”

But it has limits. For complex business logic, performance-critical paths, and anything that needs a deep understanding of the underlying tech, handwritten code is still irreplaceable. Vibe Coding shines at rapid prototypes and standardized features.

My advice: treat Vibe Coding as your coding copilot, not autopilot. Stay in control and keep understanding the code — that’s how you actually get the most out of it.

FAQ

Can you really build a full-stack AI app in three days?

Yes — but it’s an MVP. Day 1 backend, Day 2 frontend, Day 3 integration and polish. The precondition: you have to be in the “describe requirements, verify output, iterate” loop, know exactly what you’re building, and be able to judge the quality of the AI’s code.

Is Vibe Coding good for big projects?

Not for complex business logic, performance-critical paths, or anything that needs a deep dive into fundamentals — handwritten code is still irreplaceable there. It’s best at rapid prototypes and standardized features.

Do you still need to know how to code?

Yes. Your role shifts from “person who writes code” to “person who directs code” — you still need to judge code quality and know when to step in. The AI’s CORS middleware dropped specific headers; its first SSE attempt had bugs. A human has to fix those.

Any tips for describing frontend work?

Don’t describe a whole page at once — break it into small components and describe them one by one. “A search box with autocomplete showing paper titles and authors in the dropdown” beats “build a search page” every time.

一句话总结 我用 Vibe Coding 在 3 天里做出了 Scholar AI 的 MVP:一个能检索论文、自动生成摘要、做多语言翻译和 RAG 问答的学术工具,技术栈是 Python / FastAPI / React / PostgreSQL / ChromaDB。Vibe Coding 最适合快速原型和标准化功能,但复杂业务逻辑、性能关键路径还是得手写代码——把它当"编码副驾驶",而不是"自动驾驶"。

什么是 Vibe Coding

Vibe Coding 这个概念来自 Andrej Karpathy,核心理念是:你不需要逐行手写每一行代码,而是通过描述你的意图,让 AI 帮你生成大部分实现。你的角色从”写代码的人”变成了”指挥代码的人”。

这听起来像是偷懒,但实际上它要求更高层次的能力 — 你需要清晰地理解自己要构建什么,能够判断 AI 生成的代码质量,并且知道什么时候该手动干预。对我来说,这是一种全新的编程体验。

“There’s a new kind of coding I call ‘vibe coding’, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” — Andrej Karpathy

项目背景:Scholar AI

Scholar AI 是一个学术研究辅助工具。作为一个经常需要阅读论文、整理文献的大学生,我深知这个过程有多痛苦。我想要一个工具,能帮我快速检索相关论文、自动生成摘要、甚至支持多语言翻译。

这个想法在我脑子里酝酿了很久,但传统的开发方式意味着至少需要一两周的时间。直到我开始尝试 Vibe Coding — 三天后,一个可用的 MVP 就上线了。

项目概览
  • 项目名:Scholar AI
  • 技术栈:Python / FastAPI / React / PostgreSQL / ChromaDB
  • 核心功能:论文检索 · 智能摘要 · 多语言翻译 · RAG 问答
  • 开发周期:3 天(MVP)
  • GitHub:37chengshan/scholar-ai

Day 1:后端 从零搭建

第一天的目标很明确:搭建一个能跑起来的后端。我用 Claude 作为主要的编码助手,通过描述需求来生成代码。

01

定义 API 接口

先用自然语言描述需要哪些接口,让 AI 生成 OpenAPI spec,再基于 spec 生成 FastAPI 路由代码。这一步花了大约 30 分钟。

02

数据库设计

描述数据模型的关联关系,让 AI 生成 SQLAlchemy 模型和 Alembic 迁移脚本。遇到一些类型映射问题,手动调整了几个字段。

03

RAG 管道搭建

这是最有趣的部分。描述了检索增强生成的流程:文档分块 → 向量化 → 检索 → 生成。AI 帮我搭好了 ChromaDB 集成和 OpenAI API 调用的骨架。

Day 2:前端 快速成型

第二天转向前端。我选择 React + TypeScript,配合 shadcn/ui 组件库。Vibe Coding 在前端开发中的效率提升更加明显 — 描述一个页面的布局和交互,AI 几乎能一次性生成可用的组件代码。

关键心得:不要试图一次描述整个页面。拆成小组件,逐个描述,效果好得多。比如”一个搜索框,带自动补全,下拉显示论文标题和作者”比”做一个搜索页面”得到的结果精准得多。

Vibe Coding 不是让你不动脑,而是让你把精力花在更重要的地方 — 产品思考和用户体验。

个人体会

Day 3:集成 与打磨

第三天做集成和细节打磨。前后端联调、错误处理、加载状态、响应式布局 — 这些”脏活”反而是 Vibe Coding 效率最高的地方。描述一个问题,AI 给出修复方案,你验证,继续。

几个踩过的坑:

  • CORS 配置:AI 生成的 CORS 中间件配置有时会漏掉特定的 header,需要手动补充
  • 流式响应:SSE (Server-Sent Events) 的实现细节比较多,AI 第一次生成的代码有 bug,但描述清楚错误后修复很快
  • 向量数据库性能:ChromaDB 的默认配置在数据量大时会变慢,需要手动调优索引参数

总结与反思

三天完成一个全栈 AI 应用的 MVP,这在以前是不可想象的。Vibe Coding 真正改变了我的开发节奏 — 从”写代码”变成了”描述需求、验证输出、迭代优化”的循环。

但它也有局限。对于复杂的业务逻辑、性能关键路径、以及需要深度理解底层原理的场景,手写代码仍然不可替代。Vibe Coding 最适合的是快速原型和标准化功能的实现。

我的建议:把 Vibe Coding 当作你的”编码副驾驶”,而不是”自动驾驶”。保持对代码的理解和控制,才能真正发挥它的威力。

常见问题

三天真的能做完一个全栈 AI 应用吗?

能,但做的是 MVP。Day 1 搭后端、Day 2 做前端、Day 3 集成打磨,前提是进入”描述需求、验证输出、迭代优化”的循环,而且你得清楚自己在建什么、能判断 AI 生成的代码质量。

Vibe Coding 适合大项目吗?

不适合复杂业务逻辑、性能关键路径和需要深挖底层原理的场景,这些地方手写代码仍然不可替代。它最适合的是快速原型和标准化功能的实现。

用 Vibe Coding 还需要会写代码吗?

需要。你的角色从”写代码的人”变成”指挥代码的人”,得能判断 AI 生成的代码质量、知道什么时候手动干预。比如 AI 生成的 CORS 中间件漏了特定的 header、SSE 第一次生成的代码有 bug,都得人来修。

前端描述有什么技巧?

不要试图一次描述整个页面,拆成小组件逐个描述,效果好得多。比如”一个搜索框,带自动补全,下拉显示论文标题和作者”,比”做一个搜索页面”得到的结果精准得多。