Proposal: Ask Tailwind CSS to support RISC-V, for the sake of Phoenix portability

Hey folks,

This might sound niche, but I think it’s worth bringing up - especially given Phoenix’s reputation for being lightweight, portable, and fast.

I recently attempted to run a full Phoenix + LiveView stack on a RISC-V board (specifically a Milk-V Mars running Debian Trixie). Everything worked surprisingly well:

  • Erlang/OTP installed and ran without a hitch
  • Elixir compiled fine
  • Phoenix booted up like a champ
  • Even Docker worked!

And then… Tailwind happened.

As most of you know, Phoenix uses the Tailwind CLI during asset compilation - and unfortunately, the Tailwind CLI doesn’t currently provide builds for RISC-V. Even compiling it from source doesn’t work cleanly out of the box due to its Rust-based binary and tight coupling with unsupported system assumptions (like filesystem access during runtime scanning in v4).

This is the roadblock stopping Phoenix from running cleanly on RISC-V systems out of the box - and frankly, it’s a shame. Everything else is ready. We’re just blocked by one missing binary.

I’d like to suggest that the Phoenix core team officially reach out to Tailwind Labs, asking them to consider adding a RISC-V target for their standalone CLI releases.

It would:

  • Unlock Phoenix development on new/emerging architectures
  • Encourage broader experimentation (edge computing, low-power setups, alt-arch servers, etc.)
  • Future-proof the asset pipeline for what’s quickly becoming a real-world dev target (Debian officially supports RISC-V)

I know this is an upstream request, but coming from Phoenix - a major Tailwind integrator - it might carry more weight than individuals asking piecemeal.

Just planting the seed.

Thanks for considering and apologies if anyone finds this proposal silly/outrageous.

Andrea

9 Likes

I agree. I got a Phoenix application running on a Scaleway RISC-V VPS a year ago, and it went pretty well. I had to open a pull request to get esbuild working. (IIRC it works with a certain set of hardcoded architectures, and I just had to add RISC-V to the list).

I tried to build the standalone Tailwind CLI package but there was some upstream dependency that was blocking my progress. I’m unfamiliar with that build toolchain and it was a pain.

You can imagine my delight when I went to pull up the GitHub discussion I started a year ago… and the only reply is from you, 3 hours ago. LMAO

I think if we make enough noise about it, we could probably get something going on that front. Or at least irritate some busy developers on the Internet.

I would check to see if any progress has been made towards getting turbo working with RISC-V. See if you can build Tailwind CLI locally, then work your way from there.

LOL, sorry for giving you false hope.

I compiled turbo (by vercel) on my Milk-V Mars, took 2+ hours. It’s 03:18am as I type this so will try compiling tailwind tomorrow. That said, I was able to compile the oxide binary. Let’s see what happens.

2 Likes