Sort:  

If I do yarn add hive-tx (without -js).

Then I put in my vue component:

import { hiveTx } from "hive-tx"

I immediately get this:

ReferenceError: Buffer is not defined

I've tried adding Buffer but fundamentally there's some issue here with using things that want to be running via Node and I do not understand the Javascript universe well enough to understand this.

There's some magic I'm missing that nobody ever talks about.

You can use the minified JS if that's the case. There are ways to define Buffer in different environments though. For example in Angular adding the following to the polyfills.ts file would do the trick.

global.Buffer = global.Buffer || require('buffer').Buffer;

I've added this to quasar.conf:

    boot: ["i18n", "axios", "buffer"],

And created a file buffer.js in the boot folder:

import { boot } from "quasar/wrappers"
import { Buffer } from "buffer"

export default boot(({ app }) => {
  app.config.globalProperties.$Buffer = Buffer
})

and hive-tx still throws this error:

vue-router.mjs:3472 ReferenceError: Buffer is not defined
    at node_modules/hive-tx/transactions/signTransaction.js 

Nothing is ever as easy as yarn add ... with javascript or so it seems to me.