JSFiddle - React, Tailwind, and code Playground

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/pixi.js/2.0.0/pixi.js"></script>

JavaScript

var stage = new PIXI.Stage(0x000000);
var renderer = PIXI.autoDetectRenderer(600, 600);
document.body.appendChild(renderer.view);

var container = new PIXI.DisplayObjectContainer();
container.position = new PIXI.Point(300,300);
container.interactive = true;
container.buttonMode = true;
container.mousedown = function () {
    container.cacheAsBitmap = !container.cacheAsBitmap;
};



// add some random children
for (i = 0; i < 40; i++) {
    var child = new PIXI.Graphics();
    child.beginFill(Math.round(Math.random() * 0xFFFFFF));
    child.drawRect(0, 0, 100, 100);
    child.endFill();
    child.position.x = Math.random() * 600 -  300;
    child.position.y = Math.random() * 600 - 300;
    container.addChild(child);
}

// Create and set a mask rectangle
var maskRect = new PIXI.Graphics();
maskRect.beginFill();
maskRect.drawRect(100, 100, 400, 400);
maskRect.endFill();
stage.addChild(maskRect);
container.mask = maskRect;


stage.addChild(container);


requestAnimFrame(animation);

function animation() {
    renderer.render(stage);
    requestAnimFrame(animation);
};