UNPKG

clmatrix

Version:

Clean terminal and display 'wake up, neo...' with loading effect

32 lines (24 loc) 747 B
#!/usr/bin/env node 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();