Claude code 30 分钟做了一个 Kimi k2 免费套壳站 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
danke
V2EX    分享创造

Claude code 30 分钟做了一个 Kimi k2 免费套壳站

  •  
  •   small class="gray">danke 140 天前 2824 次点击
    这是一个创建于 140 天前的主题,其中的信息可能已经有所发展或是发生改变。

    网站:https://kimik2.ai 快来体验,欢迎吐槽

    Prompt 如下: You are an elite full-stack engineer & SEO copywriter. Build a production-ready landing page for kimik2.ai targeting “kimi k2” and featuring the product type ai-chat.

    Tech Stack

    • Next.js 14 (App Router, RSC) TypeScript, Edge-ready.
    • Tailwind CSS v3 dark mode class strategy, custom config.
    • shadcn/ui reusable primitives, including Button, Card, Tabs, Accordion, Dialog, Toaster.
    • lucide-react icon set.
    • Optional: Prisma + SQLite for email capture.

    1 Market & SERP Research

    1. Crawl top 10 SERP results for “kimi k2” (EN + ZH)。
    2. Summarise: value props, CTA patterns, content gaps, avg. title/meta length.
    3. Extract:
      • 3 unique selling points for our page.
      • 5 long-tail keywords (≥ 4 words).
      • Best-fit <title> (≤ 60 chars) & meta description (≤ 155 chars).

    Return a research.md with these findings.

    2 Landing Page src/app/page.tsx

    Sections

    1. Hero H1 (includes kimi k2) + sub-title + primary CTA.
    2. Features 3-4 cards (Card) each with icon + headline + copy.
    3. How It Works Tabs step-by-step walkthrough with illustrations.
    4. Testimonials 3 quotes (Card grid).
    5. Pricing dynamic tiers (see rules ↓).
    6. FAQ 5-6 questions (Accordion).
    7. Footer links + copyright + social.

    Pricing Rule

    • If {{PRODUCT_TYPE}} == ai-video: tiers Basic / Pro / Studio.
    • Else if ai-image or ai-chat: tiers Starter / Growth / Business.
    • Use insights from research.md to set quota & price placeholders.

    SEO

    • Dynamic <title> & <meta name="description"> via generateMetadata().
    • JSON-LD: BreadcrumbList & Product.
    • OG tags (og:title, og:description, og:image, twitter:card).
    • Sitemap & robots.txt via Next.js route handlers.

    UX / UI

    • Tailwind palette slate + accent indigo.
    • Light & dark modes (class strategy, respect system).
    • Motion: framer-motion fade-in on section viewport.
    • Accessibility: all interactive components with ARIA labels.

    3 CTA Email Capture API src/app/api/subscribe/route.ts

    1. Accept { email } POST (JSON).
    2. Server action validates & writes to prisma.subscriber (SQLite).
    3. Return { success: true }.
    4. Front-end: Dialog → email form → toast on success/fail.

    Prisma schema:

    model Subscriber { id Int @id @default(autoincrement()) email String @unique createdAt DateTime @default(now()) } 

    若不想引入数据库,可改存入 SendGrid / Resend / Supabase 请在 README 备注替代方案。

    4 Project Bootstrap (可选已完成可跳过)

    提示:你已完成此步骤,可直接跳过。如果需要重新初始化项目,请参考下方命令或附录 B 。

    # 1. Scaffold pnpm create next-app@latest kimik2.ai --ts --tailwind --eslint --app cd kimik2.ai # 2. Install deps pnpm add @shadcn/ui clsx lucide-react framer-motion pnpm add -D prisma @prisma/client tailwind-merge tailwindcss-animate # 3. Init shadcn/ui pnpm dlx shadcn-ui@latest init -y # 4. Generate shadcn components as needed pnpm dlx shadcn-ui@latest add button card tabs accordion dialog toaster # 5. Prisma setup (optional) pnpm dlx prisma init --datasource-provider sqlite 

    5 Recommended File Tree

    / (repo root) ├─ src/ │ ├─ app/ │ │ ├─ page.tsx # landing page (RSC) │ │ ├─ layout.tsx # base <html> │ │ ├─ api/ │ │ │ └─ subscribe/ │ │ │ └─ route.ts # POST handler │ │ └─ sitemap.xml/route.ts # dynamic sitemap │ ├─ components/ │ │ ├─ hero.tsx │ │ ├─ feature-card.tsx │ │ ├─ pricing-table.tsx │ │ └─ ... │ └─ lib/ │ └─ prisma.ts ├─ prisma/ │ └─ schema.prisma ├─ public/ │ └─ og-default.png ├─ README.md └─ tailwind.config.ts 

    6 Delivery Format

    • Output file path → code in one Markdown block (use tsx`, ts`, etc.).
    • Boilerplate 可用 // ... 占位;关键逻辑需完整。
    • 最后附 " Quick Start" 教程:5 分钟本地运行 + Vercel 部署。

    7 Grading Checklist (自检)

    • Lighthouse > 95 (Performance / Best Practices / SEO).
    • CLS & LCP 分别 < 0.1 和 2 s 。
    • 页面所有文本包含 kimi k2 的频率控制在 1.52.5%。
    • npm run lint & npm run type-check 无错误。
    第 1 条附言    139 天前
    10 条回复    2025-07-29 10:41:40 +08:00
    xclrr
        1
    xclrr  
       140 天前 via Android
    厉害,这段提示词不用人工干预一次就能直出吗,提示词里好像没说让它用 openrouter 去接 api ,它自己选的吗?这段提示词应该也不是手写的吧
    qiqi669
        2
    qiqi669  
       140 天前
    30 分钟绝对扯淡,这就是不诚实的广告贴罢了。
    @xclrr
    danke
        3
    danke  
    OP
       139 天前 via iPhone
    @xuAN111 我骗你干啥 你可以拿 prompt 去试
    danke
        4
    danke  
    OP
       139 天前 via iPhone
    @xclrr openrouter 是我后面又写了一段提示词完成的 3 分钟 ai 就写好了 一次过
    danke
        5
    danke  
    OP
       139 天前 via iPhone
    prompt 是 o3 写的
    pinyoung
        6
    pinyoung  
       139 天前
    e
    vivianLi7
        7
    vivianLi7  
       139 天前
    我也 vibe coding 了一个 https://kimi-k2.net/
    vivianLi7
        8
    vivianLi7  
       138 天前
    https://github.com/classroom6x-hub/Kimi-ai

    我也搞了个,https://kimi-k2.net/ ,还没接登录,大家可以先免费使用
    xuyusolo
        9
    xuyusolo  
       136 天前
    @danke #5 如何让 ai 给你写一个好点的 prompt
    Flowing
        10
    Flowing  
       123 天前
    想问下 这种套壳做会话 context 记忆的话,也是把最近 x 条会话存到你自己的数据库?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1041 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 21ms UTC 23:58 PVG 07:58 LAX 15:58 JFK 18:58
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86