JSFiddle - React, Tailwind, and code Playground

HTML

<pre id="out"></pre>

JavaScript

function start() {
    var start = prompt("Start: (ex: aabb)");
    var end = prompt("End: (ex: ccaa)");
    if (start.length != end.length) {
        alert("They must have the same length!");
        return;
    }
    if (start > end) {
        var tmp = start;
        start = end;
        end = tmp;
    }
    var alphabet = prompt("Alphabet: (ex: abc)");
    var out = "";

    var i, digit, stop;
    while (start < end) {
        out += start + "\n";
        stop = false;
        for (i = start.length - 1 ; !stop && i >= 0 ; i-- ) {
            digit = alphabet.indexOf( start.charAt(i) );
            if (digit < 0) {
                alert("Letter `" + start.charAt(i) + "` is not part of the provided alphabet!");
                return;
            }
            digit++;
            stop = digit < alphabet.length;
            start = start.substr(0, i)
                + alphabet.charAt( digit % alphabet.length )
                + start.substr( i + 1 );
        }
        if (!stop) break;
    }

    document.getElementById("out").textContent = out + end;
}

start();