JSFiddle - React, Tailwind, and code Playground

HTML

<div id="editable" contentEditable="true"></div>
current word: <span id="word"></span>

CSS

#editable {
    border: 1px solid blue;
}

JavaScript

var editable = document.getElementById('editable'),
    word = document.getElementById('word');

editable.addEventListener('input', function(e) {
    word.innerHTML = getWord();
}, false);

function getWord() {
    var range = window.getSelection().getRangeAt(0);
    if (range.collapsed) {
        text = range.startContainer.textContent.substring(0, range.startOffset+1);
        return text.split(/\b/g).pop();
    }
    return '';
}