clmatrix
Version:
Clean terminal and display 'wake up, neo...' with loading effect
32 lines (24 loc) • 747 B
JavaScript
const clearTerminal = () => {
process.stdout.write('\033c');
};
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
const displayMessage = async () => {
clearTerminal();
const message = "wake up, neo";
const dots = "...";
const duration = 5000; // 5 seconds
const dotDelay = 500; // Delay between each dot
const startTime = Date.now();
process.stdout.write(message);
while (Date.now() - startTime < duration) {
for (const dot of dots) {
if (Date.now() - startTime >= duration) break;
process.stdout.write(dot);
await delay(dotDelay);
}
process.stdout.write("\b\b\b \b\b\b"); // Remove the dots
}
process.stdout.write("\n");
};
displayMessage();