成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

AI 時代如何更高效開發前端組件?21st.dev 給了一種答案

開發 前端 人工智能
更值得稱謂的是,21st.dev 的功能設計真正做到了 AI 友好,能夠很好地應用在各類 AI 工具中(cursor、v0.dev、bolt.new、cline 等等),并且這套設計邏輯還非常適合復用到各種 TO-D 場景中,

給大家推薦一個好東西:21st.dev ,大致上你可以將它理解為一個非常前衛的組件托管市場,特別之處在于:

  1. 它參考 shadcn/ui 的設計理念提供了一種原子化的,Code Out 形式的依賴安裝、管理模式;
  2. 并且更具有啟發性的,它為每一個組件都提供了一套用于生成組件代碼的 Prompt,用戶可以借此在特定項目上下文中生成適配度更高的組件效果。

借助 21st.dev 與 cursor,我做了這樣一個 demo:

這一切都是在 5min 內,不寫一行代碼的情況下實現的!更值得稱謂的是,21st.dev 的功能設計真正做到了 AI 友好,能夠很好地應用在各類 AI 工具中(cursor、v0.dev、bolt.new、cline 等等),并且這套設計邏輯還非常適合復用到各種 TO-D 場景中,

21st.dev 是什么

21st.dev 是一個開源的 React  UI 組件市場,專門為設計工程師和前端開發者提供高質量的 UI 組件。它的靈感來自于 shadcn/ui,旨在幫助開發者快速構建精美的用戶界面,尤其適用于 AI 產品的開發。21st.dev 目前已經托管了海量開源組件,類型涵蓋各種極具設計感(由官方審核)頭像、dialog、按鈕、日歷,甚至完整 Page,應有盡有,并且這些組件都經過 21st.dev 官方審核,質量上還是比較有保證的。

與 npm 等傳統市場的主要差異點:

  1. 21st.dev 偏向于一次性交付,安裝后會把代碼 clone 到本地,之后就算是跟市場本身脫鉤了,這種方式缺點是無法持續跟進組件本身的迭代;但好處則是這會大大減少版本概念帶來的復雜性(《NPM 依賴管理的復雜性》),并且,代碼被復制下來后,可按項目的具體上下文做任意調整,比較適合一些復雜度不是很高的代碼復用場景;
  2. 21st.dev 提供了一些 AI 友好的交互,一是為每一個共享組件都設置了用于生成組件代碼的 Prompt,用戶可直接復制粘貼到 LLM 工具中(推薦用 Cursor),即可生成對應組件代碼;其次,它還提供了 MCP 實現,用戶可將之接入到各類支持 MCP 協議的工具中;

相對而言,21st.dev 的模式更匹配 AI 時代的用戶習慣:Codeout、可定制、AI 可理解,因此它在海外也就迅速走紅,Producthub 評分非常高。

怎么用

使用之前,建議先進入市場內(https://21st.dev/)看看有那些可用組件,整體質量很不錯。

21st.dev 本質上是一個組件市場,提供了多種組件消費方式:

  1. 使用 dlx 工具:進入 21st.dev ,選定組件,進入組件詳情頁后,直接復制右上角的 install component 命令,之后在項目目錄中執行,即可生成對應代碼;
  2. 使用 Prompt:同樣的,進入組件詳情頁后,點擊 copy prompt 按鈕,之后使用 cursor、cline 等工具,即可生成組件代碼:
  3. 使用 21st.dev MCP 服務:參考:https://github.com/21st-dev/magic-mcp 文檔,配置 MCP 服務接口,之后在 prompt 中使用 /ui 指令明確要求調用 21st.dev 生成組件(具體用法,下面有詳細介紹);

這里強烈推薦使用第三種:MCP 服務,這種方式相當于將 21st.dev 的組件知識外掛到 cursor 等 IDE,之后這類 IDE 可根據實際場景中的上下文,自行規劃實現路徑,以及自行判定如何基于 21st.dev 提供的組件設計知識(注意,這里是設計知識,而不是代碼本身)實現用戶需求。


如果你還不了解 MCP,可閱讀科普文檔:使用 MCP 擴展 Cursor 能力: https://ecn5ehmm9iou.feishu.cn/wiki/EyrOwRg5Cit5e8kKKjpcRe4cnuh

亮點:一鍵復制組件 Prompt

最讓人驚喜的是,組件詳情頁提供了 Copy Prompt 按鈕:

點擊即可復制用于實現該組件的 Prompt,用戶可將之粘貼到 Curosr 等工具中由 LLM 協助生成該組件的代碼,例如用于實現 AI Chat 對話框的組件:

過去,我們在開源市場見到一些驚艷的組件,至少需要經過學習、demo、編碼、調試之后才能復用起來,但 21st.dev 提供的 prompt,真的就能實現一鍵復刻,即使你完全不讀組件代碼也不妨礙你的使用和微調,效率高出許多。

亮點:MCP 服務

其次,21st.dev 官方還提供了一套 MCP 服務 (https://github.com/21st-dev/magic-mcp),可直接配置到各類支持 MCP 的工具中使用:

以 Cursor 為例:

  • 注冊 21st.dev 服務,拿到 api key
  • 在 cursor 中配置 MCP 服務:

注意幾個點:

Type 設置為 `command`
Command 中需要輸入如下命令:
npx -y @smithery/cli@latest run @21st-dev/magic-mcp --config "{"TWENTY_FIRST_API_KEY":"your-api-key"}"
  • 配置完成,并且確認 MCP 服務狀態正常可用后,使用 /ui 開頭的 prompt 生成組件,例如:

對應實現效果:

雖然顏色有點丑,但真的能在幾分鐘能完成初版內容,交互流程比 v0.dev、bolt.new 等工具都流暢許多,并且所有代碼都嚴格按照我倉庫設置的 .cursorrules 規則生成,幾乎沒有調整成本。

一些啟發

私有組件庫的復用思路

試用下來,我覺得 21st.dev 的爆火并非偶然,它實在太適合 AI 時代了,過往都是基于 package 粒度做組件共享,消費者需要閱讀理解組件文檔后,再嵌入到業務系統中使用,這會引發幾個問題:

  • 學習成本比較高,開發者需要花時間精力理解這些組件,分析組件質量(通過單測、源碼等);
  • 組件代碼與版本號綁定,一旦發布,消費者幾乎沒法修改,作者給了你啥,基本就得吃啥;
  • Package 與子 package 之間的相互依賴關系非常復雜,非常容易出現版本管理問題

而 21st.dev 這種源碼共享方式,配合 AI 自動理解、生成、修改代碼的能力,則很好解決了上述這些傳統組件復用手段的學習成本、版本化與靈活性等方面的問題,不僅僅大幅降低代碼復用成本,還能針對具體場景(技術棧、需求等)自動做好調整適配,某種程度上這已經是一種新的范式:不是代碼復用,而是設計邏輯復用了。

沿著這個解題思路,假設將 21st.dev 部署到私域,托管私有組件庫,那么我們只需集中精力維護好核心組件的質量、性能、文檔工程,之后借助 21st.dev + cursor 就可以輕易完成私域場景中的業務組件復用、復刻、組裝、功能開發等方面的任務,提升開發效率,這是一個非常值得探索的方向。

Prompt 優于代碼

如果 21st.dev 只是提供了傳統的組件托管、分發能力的話,那這只會是另一個俗套的 npm。但它創新地為每一個組件都提供了一套有針對性的 prompt,并且進一步提供了集成 MCP 服務,這性質可就變了。配合 AI 工具后,具體組件的代碼(僵化,無法調整的知識)已經不是很重要,取而代之的是指導 AI 實現同類效果的思路(靈活,可調整的知識),AI 可以根據實現思路與具體上下文約束,更靈活調整出更適配的具體代碼,算是從魚到漁的轉變了。

沿著這個思路,假設你正在開發一些 TO-D 類的產品,其實也可以考慮為每一個具體接口提供定制的 Prompt、功能描述以及集成 MCP 服務,提供一套轉為 AI 優化的知識面板,那么原本面向人類智能的交互,也就能夠轉換成面向 AI 的交互,對人類而言學習成本、使用成本都會急劇降低,也就更容易推廣。

因此,非常建議做 TO-D 工具的同學都往 AI 友好這個方向思考,包括但不限于:開源產品、Open API 類平臺、私有組件庫、私有代碼庫等。

基于 antd 的實踐

這只是一個實例,但這種模式其實可以被復用到各種基于 md 的信息場景,例如私有組件庫,代碼我已經整理好了:https://github.com/Tecvan-fe/vercel-ai-demo/blob/main/packages/mdc-mcp/package.json

基于上述啟發,有沒有可能在 antd 基礎上配合 Cursor 與 MCP 協議實現代碼自動生成效果呢?答案是必然的,并且成本并不高,需要做幾件事情:

  1. 為基礎組件梳理完善的使用文檔,并且最好是基于 MDX 格式的,方便LLM 理解;
  2. 開發 MCP 服務,讓 LLM 有機會理解 antd 所提供的能力細節,雖然我們也能通過 docs 等方式實現這一點,但出于擴展性與可維護性考慮,這里采用 MCP 方式;
  1. 可用的組件列表
  2. 每一個組件的使用方法
  1. 在 Cursor(其他工具同理) 中配置 MCP 服務;
  2. 寫好 .cursorrules ,讓 Cursor 知道我們的編碼規范,按正確的規則生成代碼;

這些動作,本質上就是把正確的、充足的信息,喂給 LLM ,讓它理解私域知識,滿足特定上下文下的開發需求(感謝 MCP)。基于這套 MCP ,我試著做了一個簡單頁面:

  • 原始頁面效果:
  • 初次實現效果:
  • 初次生成代碼:

從結果來說,還原度還是比較高的,并且也正確用了各種 antd 的各類組件。雖然各種樣式細節對不上,但我們可以繼續要求 LLM 持續優化代碼,不斷逼近最終要求;其次,初次生成的代碼結構雖然比較粗糙,但也同樣可以要求 LLM 持續優化直至符合技術規范。

重點在于,這是一個可持續迭代優化的過程,雖然結果上只能無限逼近理想狀態,但也比純粹靠人力從零開始開發、調優,要高效的多。并且,假如未來我們進一步整理出更多可復用的基礎業務組件,AI 的組件生成能力還可以進一步擴展,業務功能的開發成本還可以進一步降低。

接下來演示具體使用方法,以 Cursor 為例:

  1. 配置 MCP 服務,類型是 Command,命令是 npx @tecvan-fe/mdc-mcp@alpha start,例如:
  2. 在 Composer 中輸入關鍵詞 /ui 以及,你需要實現的效果,建議截圖貼進去,例如:
  3. 后續針對樣式效果和代碼結構繼續提出優化需求,例如:

不過,真實開發場景是很復雜的,這套邏輯還只能生成靜態代碼,后續還是需要繼續開發數據交互、用戶交互、調試、測試、上線、監控等方面的工作后續我會繼續輸出如何借助 Cursor 高效編碼的更多內容。

問題

說完優點,不能免俗的還是得聊聊 21st.dev 的問題,我目前看到的:

  • 底層基于 shadcn 實現,暫時無法脫離 react 技術棧,且從組件代碼來看,還深度綁定了 nextjs,有點捆綁銷售的意思;好消息是,它為每一個組件都生成了 prompt,可以很方便復制到項目中,之后借助 cursor 等工具做深度優化;
  • 不支持私有化托管,因此雖然能快速做出各種小產品的原型,但對大型項目并不友好;
  • 21st.dev 目前僅提供純前端類型的組件,并沒有很好串聯起前后端整套機制;

不過,即使如此,Cursor + 21st.dev 組合依然比傳統開發方式要高效太多了,非常建議大家深入學習。


責任編輯:武曉燕 來源: Tecvan
相關推薦

2009-04-16 18:52:43

Vmware虛擬化虛擬機

2023-09-12 16:20:04

邊緣AI深度學習

2019-08-12 08:37:45

2012-06-18 10:11:27

Chrome開發人員程序員

2023-03-07 15:08:57

2019-04-19 08:47:00

前端監控數據

2023-11-21 16:02:56

2022-07-17 06:57:02

時間戳唯一標識符

2014-11-28 14:41:06

工具

2021-12-26 09:22:44

前端Css圖標

2014-09-05 16:58:52

程序員老程序員

2020-11-27 14:22:35

技術首席信息官技術轉型

2018-11-06 21:50:09

前端Html腳本語言

2019-01-21 17:32:25

華為

2024-01-18 15:38:17

語言模型大型語言模型

2022-02-25 14:42:09

OpenHarmon環境搭建鴻蒙

2013-07-23 10:50:24

C程序

2017-08-24 15:02:01

前端增量式更新

2020-12-23 10:10:23

Pythonweb代碼

2022-06-22 09:44:41

Python文件代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲成人福利视频 | 欧美日韩精品一区 | 欧美片网站免费 | 欧美中文字幕一区二区三区亚洲 | 亚洲精品久久久久久国产精华液 | 日本欧美在线观看视频 | 国产男女视频网站 | 色伊人网| 日韩在线欧美 | 欧美成人h版在线观看 | 成人午夜精品 | av手机在线 | 欧美精品成人 | 日韩在线视频一区 | 久久日韩精品一区二区三区 | 成人午夜影院 | 中文字幕动漫成人 | www.亚洲一区二区三区 | 国产探花 | 中文字幕第三页 | 中文字幕免费中文 | 欧美精品久久久久久 | 99热精品在线 | 亚洲精品久久国产高清情趣图文 | 国产乱肥老妇国产一区二 | 久久久久久综合 | 成人在线观看免费视频 | 中文字幕日韩一区 | 中文字幕成人 | 九九伊人sl水蜜桃色推荐 | www.日韩| 国产一级淫片a直接免费看 免费a网站 | 国产 欧美 日韩 一区 | 99re在线 | 红桃成人在线 | 日日夜夜免费精品视频 | 精品国产欧美一区二区三区成人 | 丝袜毛片 | 在线一区| 欧美在线资源 | 91一区二区 |