Tailwind autocomplete not working in a new phoenix 1.8 app?!?

Okay–this make no sense.

For some reason, tailwind autocomplete is not working in a brand new phx 1.8.1 template e.g. lib/foo_web/controllers/page_html/home.html.heex But it works fine in an older project, e.g. lib/bar_web/templates/layout/app.html.heex

(Same thing with .ex files with ~H. Works in older repo, not in new one.)

I’m using VS Code.

This seems impossible.

If anyone has any ideas, drop a note!

Thanks in advance!

Okay–I’m not crazy… seems to be a tailwind 4.1 issue that is crashing the tailwind plugin…

[assets/css/app.css] Initializing...
[assets/css/app.css] Failed to load workspace modules.
[assets/css/app.css] Using bundled version of `tailwindcss`: v4.1.1
[assets/css/app.css] Building...
[Error - 11:43:04 PM] Loading fallback stylesheet for: tailwindcss
[Error - 11:43:04 PM] Unable to load plugin: ../vendor/heroicons Error: Can't resolve 'tailwindcss/plugin' in '/Users/adam/dev/agentic/foo/assets/vendor'
    at p (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:130:7155)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:131:713
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:15:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:16:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:15:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:15:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:42:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:6990
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:405
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:16:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2396
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:20548
    at D0e.stat (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:1272)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:20279
    at r (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2342)
    at rU.exports (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2453)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:20263
    at _next0 (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:8:1)
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:30:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:135:1921
    at pb.eval [as callAsync] (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:22:1)
    at e.doResolve (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:344)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:6922
    at pb.eval [as callAsync] (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:37:1)
    at e.doResolve (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:344)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:21097
    at pb.eval [as callAsync] (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:7:1)
    at e.doResolve (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:344)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:21097
    at pb.eval [as callAsync] (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:7:1)
    at e.doResolve (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:344)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:21097
    at _next0 (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:8:1)
    at eval (eval at create (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:5:78), <anonymous>:30:1)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:7618
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:3388
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2396
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2752
    at D0e.n.readJson (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:1943)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2650
    at r (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2342)
    at rU.exports (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2453)
    at c (/Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2583)
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:3383
    at /Users/adam/.vscode/extensions/bradlc.vscode-tailwindcss-0.14.26/dist/tailwindServer.js:134:2396 {
  details: "resolve 'tailwindcss/plugin' in '/Users/adam/dev/agentic/foo/assets/vendor'\n" +
    '  Parsed request is a module\n' +
    '  No description file found in /Users/adam/dev/agentic/foo/assets/vendor or above\n' +
    '  resolve as module\n' +
    "    /Users/adam/dev/agentic/foo/assets/vendor/node_modules doesn't exist or is not a directory\n" +
    "    /Users/adam/dev/agentic/foo/assets/node_modules doesn't exist or is not a directory\n" +
    "    /Users/adam/dev/agentic/foo/node_modules doesn't exist or is not a directory\n" +
    "    /Users/adam/dev/agentic/node_modules doesn't exist or is not a directory\n" +
    "    /Users/adam/dev/node_modules doesn't exist or is not a directory\n" +
    "    /Users/adam/node_modules doesn't exist or is not a directory\n" +
    "    /Users/node_modules doesn't exist or is not a directory\n" +
    "    /node_modules doesn't exist or is not a directory"
}
----------
RESTARTING
----------

Okay–seems to be a known issue: