let tagline = ["c", "o", "d", "e", "/",
"d", "e", "c", "o", "l", "o", "n", "i", "z", "e", "d"
let widther, heighter, waver, glitch, maxIndex, maxim
font1 = loadFont("TWKLausanne-900.otf")
font2 = loadFont("Tomato Grotesk Black.otf")
font3 = loadFont("Inter-Black.otf")
createCanvas(windowWidth, windowHeight, SVG);
button = createButton('click me to save');
button.mousePressed(saveC);
inp.style('width', '120px')
function myInputEvent() {
tagline = inp.value().replaceAll(" ", "/").split("")
translate(width / 8, height / 3)
glitch = random(0.3, 0.8)
for (let i = 0; i < tagline.length; i++) {
for (let i = 0; i < tagline.length; i++) {
cuteCircle(tagline[i], i)
for (let i = 0; i < tagline.length; i++) {
text("the roaming bookstore",
maxim + random(50, 150), 50)
function generateXYC(index) {
let ratio = random(1, 1.5)
if (tagline[index] === "/") {
widther -= random(50, 100)
cy.push(heighter + sin(index / 2 + waver) * 30)
widther += textWidth(tagline[index]) * ratio
function cuteCircle(texter, index) {
translate(cx[index], cy[index])
rect(20, -20, 60 * cratio[index], 60, random(5, 25))
function cuteText(texter, index) {
if (random(1) < glitch) {
} else if (decider < 0.5) {
} else if (decider < 0.75) {
translate(cx[index], cy[index])
shearX(random(-PI / 20, PI / 20));
button.style('background', 'black');
button.style('color', 'white');
button.style('padding', '10px');
button.style('border', '2px solid #fff');
button.style('border-radius', '20px');
button.style('border-radius', '20px');
button.style('cursor', 'pointer');