Bun

bun create

注意 — 您不需要 bun create 來使用 Bun。您根本不需要任何設定。此指令存在的目的是讓入門變得更快速、更簡單。

使用 bun create 範本建立新的 Bun 專案。這是一個彈性的指令,可用於透過 create-<template> npm 套件、GitHub 儲存庫或本機範本建立新專案。

如果您要建立一個全新的空專案,請使用 bun init

npm

bun create <template> [<destination>]

假設您沒有同名的 本機範本,此指令會從 npm 下載並執行 create-<範本> 套件。下列兩個指令的行為會完全相同

bun create remix
bunx create-remix

請參閱相關 create-<範本> 套件的說明文件,以取得完整的說明文件和使用說明。

從 GitHub

這會將 GitHub 儲存庫的內容下載到磁碟。

bun create <user>/<repo>
bun create github.com/<user>/<repo>

您可以選擇指定目標資料夾的名稱。如果沒有指定目標,則會使用儲存庫名稱。

bun create <user>/<repo> mydir
bun create github.com/<user>/<repo> mydir

Bun 會執行下列步驟

  • 下載範本
  • 將所有範本檔案複製到目標資料夾
  • 使用 bun install 安裝相依性項。
  • 初始化新的 Git 儲存庫。使用 --no-git 旗標退出。
  • 如果已定義,則執行範本設定的 start 腳本。

預設情況下,Bun 不會覆寫 任何現有檔案。使用 --force 旗標覆寫現有檔案。

從本機範本

⚠️ 警告 — 與遠端範本不同,使用本機範本執行 bun create 會刪除整個目標資料夾(如果已存在)!請小心。

可以擴充 Bun 的範本產生器,以支援在您的本機檔案系統上定義的客製化範本。這些範本應置於下列其中一個目錄中

  • $HOME/.bun-create/<名稱>:全域範本
  • <專案根目錄>/.bun-create/<名稱>:專案特定範本

注意 — 您可以透過設定 BUN_CREATE_DIR 環境變數來自訂全域範本路徑。

若要建立本機範本,請前往 $HOME/.bun-create 並使用您希望的範本名稱建立一個新目錄。

cd $HOME/.bun-create
mkdir foo
cd foo

然後,在該目錄中建立一個 package.json 檔案,其內容如下

{
  "name": "foo"
}

您可以在檔案系統上的其他位置執行 bun create foo,以驗證 Bun 是否正確找到您的本機範本。

設定邏輯

您可以在本機範本的 package.json"bun-create" 區段中指定安裝前和安裝後的設定腳本。

{
  "name": "@bun-examples/simplereact",
  "version": "0.0.1",
  "main": "index.js",
  "dependencies": {
    "react": "^17.0.2",
    "react-dom": "^17.0.2"
  },
  "bun-create": {
    "preinstall": "echo 'Installing...'", // a single command
    "postinstall": ["echo 'Done!'"], // an array of commands
    "start": "bun run echo 'Hello world!'"
  }
}

支援下列欄位。這些欄位可以對應到字串或字串陣列。指令陣列會依序執行。

安裝後在安裝依賴項後執行
安裝前在安裝依賴項前執行

複製範本後,bun create 會在將 package.json 寫入目標資料夾前自動移除 "bun-create" 區段。

參考

CLI 旗標

旗標說明
--force覆寫現有檔案
--no-install略過安裝 node_modules 和任務
--no-git不要初始化 git 儲存庫
--open完成後啟動並在瀏覽器中開啟

環境變數

名稱說明
GITHUB_API_DOMAIN如果您使用 GitHub 企業版或代理伺服器,您可以自訂 Bun ping 下載的 GitHub 網域
GITHUB_ACCESS_TOKEN這允許 bun create 與私人儲存庫一起使用,或在您受到速率限制時使用

bun create 的運作方式