You’re right, multiple tailwind configs (and esbuild ones, where the admin loads everything all at once but the main bundle for the app load big dependencies on demand).
# config.exs
config :tailwind,
version: "3.3.2",
default: [
args: ~w(
--config=tailwind.config.js
--input=css/app.css
--output=../priv/static/assets/app.css
),
cd: Path.expand("../assets", __DIR__)
],
admin: [
args: ~w(
--config=tailwind-admin.config.js
--input=css/admin-app.css
--output=../priv/static/assets/admin-app.css
),
cd: Path.expand("../assets", __DIR__)
]
# dev.exs
watchers: [
tailwind: {Tailwind, :install_and_run, [:default, ~w(--watch)]},
tailwind: {Tailwind, :install_and_run, [:admin, ~w(--watch)]}
]
# aliases in mix.exs
"assets.deploy": [
"tailwind default --minify",
"tailwind admin --minify",
]
IIRC this is all that is needed.


















