danielrlcl

danielrlcl

Tailwind CSS in a Phoenix app – configuration problems with Brunch and PostCSS

I’ve been trying to get Tailwind CSS running in a Phoenix app, but have run into configuration problems with Brunch. I’ve followed the instructions in the Tailwind docs and here https://stackoverflow.com/questions/48654765/add-tailwindcss-to-phoenix-with-brunch, but my main app.css file is just showing @tailwind preflight; etc at http://localhost:4000/css/app.css. So it looks like the build step is messed up somehow. I’ve looked in the postcss-brunch docs but not found an answer there either.

Can anyone help? I’ve been getting help in the Tailwind CSS Slack room, and I’m pretty sure I’ve got the Tailwind side of things set up correctly, so maybe this is a postcss-brunch problem?

I’ve also been pointed to this project level/assets at master · derrickreimer/level · GitHub which is a Phoenix app which uses Webpack as the build tool. Any thoughts on my switching out Brunch for Webpack? I would just rather stick to the well-beaten path if possible.

Marked As Solved

danielrlcl

danielrlcl

I just got this answer from Adam Wathan, the creator of Tailwind CSS, in the Slack channel:

“you need to install postcss-brunch from inside the assets folder
so everything should be done from inside that folder”

It seems we both made the mistake of installing postcss-brunch in the root folder by accident.

Also Liked

danielrlcl

danielrlcl

By the way, I see Tailwind CSS hasn’t yet been mentioned on this forum. I really recommend taking a look at it https://tailwindcss.com/, as it’s a functional/atomic utilities-first CSS framework that’s highly customisable and may well appeal to anyone who likes functional languages like Elixir.

thomasbrus

thomasbrus

Tailwind is awesome! What I like:

  • nice and descriptive class names, not too long and but not too cryptic either.
  • being able to customize it, especially being able to customize the colors
  • comprehensive; it covers almost all frequently used css properties
  • @apply .classname to create new components from existing tailwind classes.
ckhrysze

ckhrysze

Very much so. I’ve been using Tailwind mostly in conjunction with Vue.js, and often find myself creating components that are simple elements with several Tailwind classes applied.

This is probably the only thing I have customized at this point, but I do love being able to easily set the brand color (or colors) to the common name, and have that just work everywhere.

As to the other question, I haven’t used another utility framework like Tachyons but have used several small frameworks ( Bulma comes to mind ) as well as a few large ones like Bootstrap. I both enjoy Tailwind more, and agree that I’ve learned more about CSS since making the switch than I had in a much longer time span prior.

Where Next?

Popular in Questions Top

vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
vrod
I am using the Starship cross-shell prompt – it seems pretty nice, but I get some errors: [WARN] - (starship::utils): Executing command ...
New

Other popular topics Top

KronicDeth
Elixir plugin for JetBrain’s IntelliJ Platform (including Rubymine) This is a plugin that adds support for Elixir to JetBrains IntelliJ...
289 36820 110
New
dokuzbir
I want to highlight html closing tags when i click a html tag. That works in .html files but doesnt work for html.eex templates. How can...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 44265 214
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New

We're in Beta

About us Mission Statement