How to create an omnilayer transaction by myself?
A was able to do that. I posted a small snippet:

https://gist.github.com/caffeinum/f64a51ce55d5ac9075bb2f5f2f439c0d

If you're familiar with bitcoinjs-lib, the omni-specific piece of code for tx creation:

  const simple_send = [
    "6f6d6e69", // omni
    "0000",     // version
    "00000000001f", // 31 for Tether
    "000000003B9ACA00" // amount = 10 * 100 000 000 in HEX
  ].join('')

  const data = Buffer.from(simple_send, "hex")

  const omniOutput = bitcoin.script.compile([
    bitcoin.opcodes.OP_RETURN,
    // payload for OMNI PROTOCOL:
    data
  ])

  tx.addOutput(recipient_address, fundValue) // should be first!
  tx.addOutput(omniOutput, 0)

  tx.addOutput(alice_address, skipValue)


If you're insterested in working towards publishing small library, feel free to tap me at https://bykhun.com