Surface vs LiveView

I think you can take the following approach:

  • let your users install TailwindUI via npm
  • Your lib can peek into the assets/node_modules on the files installed by TailwindUI, compile it into a elixir module
  • Your user can now use the auto-generated module from Surface

If you are not redistributing, this is just a derivative library, only in a different language