JSFiddle - React, Tailwind, and code Playground

HTML

<span>
  <label for="spin-rx">RX:</label>
    <input id="spin-rx" name="value"/>
</span>
 <span>
  <label for="spin-ry">RY:</label>
     <input id="spin-ry" name="value"/>
</span>

<span>
  <label for="spin-rz">RZ:</label>
    <input id="spin-rz" name="value"/>
</span>

<span>
  <label for="spin-tx">TX:</label>
    <input id="spin-tx" name="value"/>
</span>
 <span>
  <label for="spin-ty">TY:</label>
     <input id="spin-ty" name="value"/>
</span>

<span>
  <label for="spin-tz">TZ:</label>
    <input id="spin-tz" name="value"/>
</span>

<hr>
<button id="btn-apply">apply rot + transl</button>
<button id="btn-reset">reset</button>
<hr>
<div class="fixed"> <span id="row1"></span> 
    <br/> <span id="row2"></span> 
    <br/> <span id="row3"></span> 
</div>
<hr>
<div class="fixed"> <span id="reverse"></span> 
</div>

CSS

.ui-spinner {
    width: 76px
}
.fixed {
    font: 18px Courier, monospace;
}

JavaScript

function getRotation(matrix) {
    var angleX = 0;
    var angleY = 0;
    var angleZ = 0;

    angleX = -Math.atan2(-matrix.m21, matrix.m11);
    angleY = -Math.atan2(-matrix.m02, matrix.m00);
    angleZ = Math.asin(matrix.m01);

    var rev = {
        degX: angleX * (180 / Math.PI),
        degY: angleY * (180 / Math.PI),
        degZ: angleZ * (180 / Math.PI)
    };
    return rev;
}

/* matrix functios */
function rotateX(matrix, angle) {
    if (angle !== 0) {
        angle *= Math.PI / 180;
        var s = Math.sin(angle);
        var c = Math.cos(angle);
        var m10 = c * matrix.m10 - s * matrix.m20;
        var m11 = c * matrix.m11 - s * matrix.m21;
        var m12 = c * matrix.m12 - s * matrix.m22;
        var m13 = c * matrix.m13 - s * matrix.m23;
        var m20 = c * matrix.m20 + s * matrix.m10;
        var m21 = c * matrix.m21 + s * matrix.m11;
        var m22 = c * matrix.m22 + s * matrix.m12;
        var m23 = c * matrix.m23 + s * matrix.m13;

        matrix.m10 = m10;
        matrix.m11 = m11;
        matrix.m12 = m12;
        matrix.m13 = m13;
        matrix.m20 = m20;
        matrix.m21 = m21;
        matrix.m22 = m22;
        matrix.m23 = m23;
    }
    return matrix;
}

function rotateY(matrix, angle) {
    if (angle !== 0) {
        angle *= Math.PI / 180;
        var s = Math.sin(angle);
        var c = Math.cos(angle);

        var m00 = c * matrix.m00 + s * matrix.m20;
        var m01 = c * matrix.m01 + s * matrix.m21;
        var m02 = c * matrix.m02 + s * matrix.m22;
        var m03 = c * matrix.m03 + s * matrix.m23;
        var m20 = c * matrix.m20 - s * matrix.m00;
        var m21 = c * matrix.m21 - s * matrix.m01;
        var m22 = c * matrix.m22 - s * matrix.m02;
        var m23 = c * matrix.m23 - s * matrix.m03;

        matrix.m00 = m00;
        matrix.m01 = m01;
        matrix.m02 = m02;
        matrix.m03 = m03;
        matrix.m20 = m20;
        matrix.m21 = m21;
        matrix.m22 = m22;
        matrix.m23 = m23;
    }
   ...