Skip to content

Commit

Permalink
[cna] upgrade templates tailwind to v4 (#75407)
Browse files Browse the repository at this point in the history
Since Tailwind v4 was released, update the create-next-app templates.
This PR made change of following process:

1. Remove tailwind config.
2. Update the `globals.css` file.
3. Add `--geist-` font CSS variable to the `globals.css` file.
4. Change `postcss` dependency to `@tailwindcss/postcss`.
5. Update postcss config.
6. Update tests.

**Note:** Removed the types for postcss added at
#63380 since it requires
additional
[postcss-load-config](https://www.npmjs.com/package/postcss-load-config)
dependency.
  • Loading branch information
devjiwonchoi authored Jan 28, 2025
1 parent 060d9e8 commit 46d0af3
Show file tree
Hide file tree
Showing 27 changed files with 49 additions and 191 deletions.
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;

This file was deleted.

9 changes: 6 additions & 3 deletions packages/create-next-app/templates/app-tw/js/app/globals.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

@theme {
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
}

:root {
--background: #ffffff;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
17 changes: 0 additions & 17 deletions packages/create-next-app/templates/app-tw/js/tailwind.config.mjs

This file was deleted.

9 changes: 6 additions & 3 deletions packages/create-next-app/templates/app-tw/ts/app/globals.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

@theme {
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
}

:root {
--background: #ffffff;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
18 changes: 0 additions & 18 deletions packages/create-next-app/templates/app-tw/ts/tailwind.config.ts

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

@theme {
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
}

:root {
--background: #ffffff;
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
/** @type {import('postcss-load-config').Config} */
const config = {
plugins: {
tailwindcss: {},
},
plugins: ["@tailwindcss/postcss"],
};

export default config;
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";

@theme {
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
}

:root {
--background: #ffffff;
Expand Down

This file was deleted.

24 changes: 3 additions & 21 deletions packages/create-next-app/templates/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,7 @@ export const installTemplate = async ({
const templatePath = path.join(__dirname, template, mode);
const copySource = ["**"];
if (!eslint) copySource.push("!eslint.config.mjs");
if (!tailwind)
copySource.push(
mode == "ts" ? "tailwind.config.ts" : "!tailwind.config.mjs",
"!postcss.config.mjs",
);
if (!tailwind) copySource.push("!postcss.config.mjs");

await copy(copySource, root, {
parents: true,
Expand Down Expand Up @@ -164,20 +160,6 @@ export const installTemplate = async ({
isAppTemplate ? "src/app/page" : "src/pages/index",
),
);

if (tailwind) {
const tailwindConfigFile = path.join(
root,
mode === "ts" ? "tailwind.config.ts" : "tailwind.config.mjs",
);
await fs.writeFile(
tailwindConfigFile,
(await fs.readFile(tailwindConfigFile, "utf8")).replace(
/\.\/(\w+)\/\*\*\/\*\.\{js,ts,jsx,tsx,mdx\}/g,
"./src/$1/**/*.{js,ts,jsx,tsx,mdx}",
),
);
}
}
}

Expand Down Expand Up @@ -223,8 +205,8 @@ export const installTemplate = async ({
if (tailwind) {
packageJson.devDependencies = {
...packageJson.devDependencies,
postcss: "^8",
tailwindcss: "^3.4.1",
"@tailwindcss/postcss": "^4",
tailwindcss: "^4",
};
}

Expand Down
Loading

0 comments on commit 46d0af3

Please sign in to comment.