Entre com o Discord para postar códigos de welcome e curtir os da comunidade.

// ===== FUNDO =====
ctx.setFillGradient(0, 0, width, height, [
[0, '#050711'],
[0.45, '#0b1020'],
[1, '#160b2e']
]);
ctx.fillRect(0, 0, width, height);
// ===== GLOWS =====
ctx.globalAlpha = 0.28;
ctx.fillStyle = '#7c3aed';
ctx.beginPath();
ctx.arc(width - 45, 35, 95, 0, Math.PI * 2);
ctx.fill();
ctx.fillStyle = '#a855f7';
ctx.beginPath();
ctx.arc(20, height + 10, 85, 0, Math.PI * 2);
ctx.fill();
ctx.globalAlpha = 1;
// ===== CARD =====
ctx.fillStyle = 'rgba(10, 13, 28, 0.94)';
ctx.roundRect(14, 14, width - 28, height - 28, 20);
ctx.fill();
ctx.lineWidth = 2;
ctx.strokeStyle = '#8b5cf6';
ctx.stroke();
// Linha neon superior
ctx.setFillGradient(28, 31, width - 28, 31, [
[0, '#7c3aed'],
[0.5, '#c084fc'],
[1, '#8b5cf6']
]);
ctx.roundRect(28, 30, width - 56, 4, 4);
ctx.fill();
// ===== AVATAR =====
const ax = 78;
const ay = 91;
ctx.shadowColor = '#8b5cf6';
ctx.shadowBlur = 18;
ctx.beginPath();
ctx.arc(ax, ay, 41, 0, Math.PI * 2);
ctx.fillStyle = '#8b5cf6';
ctx.fill();
ctx.shadowBlur = 0;
ctx.save();
ctx.beginPath();
ctx.arc(ax, ay, 36, 0, Math.PI * 2);
ctx.clip();
ctx.drawImage(avatar, ax - 36, ay - 36, 72, 72);
ctx.restore();
ctx.beginPath();
ctx.arc(ax, ay, 45, 0, Math.PI * 2);
ctx.lineWidth = 2;
ctx.strokeStyle = 'rgba(255,255,255,0.35)';
ctx.stroke();
// ===== TEXTOS =====
ctx.textAlign = 'left';
ctx.textBaseline = 'middle';
ctx.fillStyle = '#a1a1aa';
ctx.font = 'bold 12px Arial';
ctx.fillText('NOVO MEMBRO', 130, 59);
ctx.fillStyle = '#ffffff';
ctx.font = 'bold 26px Arial';
ctx.fillText('Bem-vindo(a),', 130, 86);
let username = member.username;
if (username.length > 13) username = username.slice(0, 10) + '...';
ctx.fillStyle = '#c084fc';
ctx.font = 'bold 25px Arial';
ctx.fillText(username, 130, 112);
// ===== BOX INFO =====
ctx.fillStyle = 'rgba(139,92,246,0.16)';
ctx.roundRect(130, 130, 210, 30, 9);
ctx.fill();
ctx.strokeStyle = 'rgba(192,132,252,0.45)';
ctx.lineWidth = 1.5;
ctx.stroke();
ctx.fillStyle = '#ffffff';
ctx.font = '15px Arial';
ctx.fillText('Membro #' + member.memberCount, 145, 145);
// ===== SERVER =====
let guild = member.guildName || 'Seu Servidor';
if (guild.length > 24) guild = guild.slice(0, 21) + '...';
ctx.fillStyle = 'rgba(255,255,255,0.45)';
ctx.font = '13px Arial';
ctx.fillText(guild, 130, 173);
// ===== TAG WELCOME =====
ctx.fillStyle = 'rgba(139,92,246,0.35)';
ctx.roundRect(width - 92, height - 31, 65, 19, 10);
ctx.fill();
ctx.fillStyle = '#ede9fe';
ctx.font = 'bold 9px Arial';
ctx.textAlign = 'center';
ctx.fillText('WELCOME', width - 60, height - 21);
// ===== DETALHE INFERIOR =====
ctx.fillStyle = 'rgba(192,132,252,0.55)';
ctx.roundRect(28, height - 25, 95, 3, 3);
ctx.fill();
Tem certeza?