JSFiddle - React, Tailwind, and code Playground

HTML

<script src="//cdn.rawgit.com/mrdoob/three.js/master/build/three.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/phaser/3.21.0/phaser.min.js"></script>

JavaScript

// create canvas
    var myCustomCanvas = document.createElementNS('http://www.w3.org/1999/xhtml', 'canvas')
    myCustomCanvas.id = 'myCustomCanvas';
    document.body.appendChild(myCustomCanvas);

    const parameters = {}

    // copied from https://github.com/mrdoob/three.js/blob/dev/src/renderers/WebGLRenderer.js
    const _alpha = parameters.alpha !== undefined ? parameters.alpha : false
    const _depth = parameters.depth !== undefined ? parameters.depth : true
    const _stencil = parameters.stencil !== undefined ? parameters.stencil : true
    const _antialias = parameters.antialias !== undefined ? parameters.antialias : false
    const _premultipliedAlpha = parameters.premultipliedAlpha !== undefined ? parameters.premultipliedAlpha : true
    const _preserveDrawingBuffer = parameters.preserveDrawingBuffer !== undefined ? parameters.preserveDrawingBuffer : false
    const _powerPreference = parameters.powerPreference !== undefined ? parameters.powerPreference : 'default'
    const _failIfMajorPerformanceCaveat = parameters.failIfMajorPerformanceCaveat !== undefined ? parameters.failIfMajorPerformanceCaveat : false

    // threejs's context attributes
    var contextAttributes = {
      alpha: _alpha,
      depth: _depth,
      stencil: _stencil,
      antialias: _antialias,
      premultipliedAlpha: _premultipliedAlpha,
      preserveDrawingBuffer: _preserveDrawingBuffer,
      powerPreference: _powerPreference,
      failIfMajorPerformanceCaveat: _failIfMajorPerformanceCaveat,
      xrCompatible: true,
    };

    //  default context config for phaser
    var contextCreationConfig = {
      alpha: false,
      depth: false,
      antialias: true,
      premultipliedAlpha: true,
      stencil: true,
      preserveDrawingBuffer: false,
      failIfMajorPerformanceCaveat: false,
      powerPreference: 'default',
      // merge bots context attributes
      ...contextAttributes
    };

    // create context
    var myCustomContext =...