top of page

100

+

Projects Completed

75

+

Happy Clients

03

+

Years of Experience

99

%

Client Satisfaction Rate

Bringing your vision to life.

I’m an experienced brand and web designer, SEO professional, and Wix Legend partner with 4+ years of crafting impactful digital solutions. I specialize in user-focused, high-performing websites that drive growth and visibility. Let’s build something extraordinary together—your vision, designed for success.

suku_edited.png

Hey, I'm Sukumar Swain.

Solopreneur.

Footer Code

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Your Website Title</title>
    <style>
        body {
            font-family: 'Fahkwang', sans-serif;
        }

        .footer {
            text-align: center;
            padding: 20px 0;
            font-size: 14px;
            background-color: #D84705;
            color: #FFFFFF;
        }
    </style>
    <!-- Include the Fahkwang font -->
    <link href="https://fonts.googleapis.com/css2?family=Fahkwang:wght@400;700&display=swap" rel="stylesheet">
</head>

<body>
    <!-- Your website content goes here -->

    <div class="content">
        <!-- Your website content goes here -->
    </div>

    <div class="footer">
        Designed by <a href="https://www.sukumarswain.com/" target="_blank">Sukumar Swain</a>
    </div>
</body>

</html>

// Function to handle the typewriter effect with looping for multiple lines

function typeWriterEffect(textElement, textArray, speed, pauseTime) {

let index = 0; // Index to track the character in the current text

let lineIndex = 0; // Index to track the current line in textArray

 

function type() {

let currentText = textArray[lineIndex]; // Get the current line of text

 

// If there are still characters left to type

if (index < currentText.length) {

textElement.text = currentText.substring(0, index + 1); // Update the text content progressively

index++; // Move to the next character

setTimeout(type, speed); // Continue typing at the defined speed

} else {

// Once the full text has been typed, wait and move to the next line

setTimeout(() => {

textElement.text = ""; // Clear the text to start the next line

index = 0; // Reset the index for the new line

lineIndex = (lineIndex + 1) % textArray.length; // Move to the next line and loop back if necessary

type(); // Start typing the next line

}, pauseTime); // Pause before starting the next line

}

}

 

// Start the typing effect

type();

}

 

// Function to manage the blinking cursor

function manageCursor(textElement) {

const cursor = "|"; // Define the cursor as a single character

if (textElement.text.endsWith(cursor)) {

textElement.text = textElement.text.slice(0, -1); // Remove cursor

} else {

textElement.text += cursor; // Add cursor

}

}

 

// On page load, trigger the typewriter effect with a blinking cursor

$w.onReady(function () {

let textElement = $w("#typewriterText");

let textArray = [

"Web Designer.",

"Brand Designer.",

"SEO Professional.",

"Wix Partner.",

"No-Code Consultant.",

"Solopreneur.",

"Digital Nomad."

]; // Array of lines to type

let typingSpeed = 100; // Speed of typing (milliseconds per character)

let pauseTime = 2000; // Pause duration before starting the next line (milliseconds)

 

// Call the typewriter effect for multiple lines

typeWriterEffect(textElement, textArray, typingSpeed, pauseTime);

// Manage the blinking cursor effect

setInterval(() => {

manageCursor(textElement); // Toggle the cursor visibility

}, 500); // Blink every 500ms

});

bottom of page