Every Discord bot eventually gets the same feature request:
"Can I customize the welcome message?"
Seems simple enough. An admin wants to write something like:
Welcome {user} to {server}! You're member #{count}.
Enter fullscreen mode
Exit fullscreen mode
and your bot fills in the blanks.
The first version I built looked exactly like you'd expect:
const msg = template . replaceAll ( " {user} " , `<@ ${ member . id } >` ) . replaceAll ( " {server} " , guild . name ) . replaceAll ( " {count} " , String ( guild . memberCount ));
Enter fullscreen mode
Exit fullscreen mode
Honestly, it felt done.
Then reality showed up.
A server owner wanted premium members to get a different welcome message. Another wanted to display the user's roles. Someone else wanted conditional content.…