Custom Local Avatars

One of the most requested features in the last few months is easily custom avatars. Although Discourse has always supported standard Internet-wide Gravatars based on the account email address, there were some long-standing concerns:

  • Some people simply don't like Gravatar, for whatever reason, though as a WordPress company they are (at least in my opinion) one of the more ethical and responsible choices.
  • Gravatars may not function inside corporate firewalls as they have to reach out to an external public website to generate the avatar images.
  • Gravatar very recently changed their signup process so it is a bit more work; you have to have a WordPress account. One of the core Gravatar developers was kind enough to stop by our forum and explain the rationale for this change.
  • There are concerns about reversing the email hash used to generate the Gravatar and harvesting emails. (You can mitigate this by using plus email addressing if you are concerned, e.g. name+anything@example.com.)
  • It is another third party dependency required for your forum to work, for better or worse.

With all that community feedback in mind, we began to prioritize local avatar support, and I'm happy to announce that local avatar support is now here, tested, and will be enabled by default in the next numbered release!

Once enabled, you'll see a slightly different edit button on your user preferences next to your avatar:

Discourse-preferences-edit-avatar

Selecting edit brings you to a dialog where you can select either the default Gravatar based on your email address, or a completely custom avatar of your choice.

discourse-change-avatar-dialog

Once you upload an avatar, you are free to switch back and forth at will, or change your custom avatar at any time.

discourse-change-avatar-custom

A few caveats:

  • Avatars must be square, and we'll show a warning if we have to auto-square the uploaded image.
  • Animated GIF avatars are (thankfully) disabled by default, but if you hate yourself and your discussion community, you can optionally enable them … but if you do this, I want you to know that you are a bad person and you should feel bad. I'm just saying.

We continue to love Gravatar as an open web service that makes it easier for people to "automagically" have avatars on every website they visit with no effort at all -- but Discourse is a rainbow system of many options and you should be able to configure it exactly how you want.

We hope you enjoy your new custom local avatar option!