独立的 CLI:在没有 Node.js 的情况下使用 Tailwind CSS

Adam Wathan

Tailwind CSS 是用 JavaScript 编写的,并作为一个 npm 包分发,这意味着您始终需要安装 Node.js 和 npm 才能使用它。

这使得在不常使用 npm 的项目中集成它变得更加困难,随着 RailsPhoenix 都默认不再使用 npm,我们需要找到一种方法,让人们在这些项目中使用 Tailwind,而不强迫他们采用一个完全独立的工具生态系统。

今天我们宣布一个新的 独立 CLI 构建,它为您提供了 Tailwind CLI 的全部功能,不需要安装 Node.js 或 npm。


快速开始

要安装它,请从 GitHub 上的 最新发布 中获取您平台的可执行文件,并确保授予其可执行权限:

# macOS arm64 示例
curl -sLO https://github.com/tailwindlabs/tailwindcss/releases/latest/download/tailwindcss-macos-arm64
chmod +x tailwindcss-macos-arm64
mv tailwindcss-macos-arm64 tailwindcss

现在您可以像使用我们的 npm 分发的 CLI 工具一样来使用它:

# 创建一个 tailwind.config.js 文件
./tailwindcss init
# 启动监视器
./tailwindcss -i input.css -o output.css --watch
# 为生产编译和压缩您的 CSS
./tailwindcss -i input.css -o output.css --minify

我们甚至捆绑了所有第一方插件的最新版本,因此如果您想在项目中使用它们,只需像在基于 Node 的项目中那样在 tailwind.config.js 文件中 require 它们:

module.exports = {
// ...
plugins: [require("@tailwindcss/forms"), require("@tailwindcss/typography")],
};

您将获得我们标准的 npm 分发的 CLI 的所有功能,便捷且可移植 — 不需要依赖。


它是如何工作的?

我们并没有用 Rust 重写 Tailwind 或其他任何东西(还没……) — 我们实际上使用了 pkg,这是由 Vercel 创建的一个非常酷的项目,它允许您将 Node.js 项目转换为可执行文件,可以在不安装 Node.js 的情况下运行,方法是将项目所需的所有部分打包到可执行文件中。

这使得您仍然可以使用 tailwind.config.js 文件,并拥有 JavaScript 的全部功能,而不是像 JSON 这样的静态格式。


我应该使用哪个 CLI?

如果您已经在项目中使用 npm,则使用我们一直提供的 npm 分发版本的 CLI。更新更简单,文件大小更小,而且您已经在该生态系统中——使用独立构建没有任何好处。

另一方面,如果您正在处理一个项目,而不需要 Node.js 或 npm,那么独立构建可能是一个不错的选择。如果 Tailwind 是您唯一需要 package.json 文件的原因,那么这可能会感觉更好一些。

Get all of our updates directly to your inbox.
Sign up for our newsletter.