JSFiddle - React, Tailwind, and code Playground

HTML

<body>
    <button id="0" type="button">Create button 1</button>
</body>

JavaScript

var counter = 0;

document.getElementById("0").addEventListener("click", function(){ create_button(0);})

function create_button(n) {

    /*Shift up*/
    for (i=counter; i>n; i--) {
        document.getElementById(i).id = i+1;
        document.getElementById(i+1).innerHTML = i+1;
    };

    /*Create new button*/
    var new_button = document.createElement("Button");
    new_button.innerHTML = n+1;
    new_button.type = "button";
    new_button.id = n+1;
    function helper() {
        create_button(n+1);
        alert(n+1);
    };
    new_button.addEventListener('click', helper );

    document.body.insertBefore(new_button,document.getElementById(n).nextSibling);

    counter++;
};