Custom Local Avatars

Jeff Atwood August 29, 2013

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.
  • 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:


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.


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


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!


Improved Image Handling

Jeff Atwood July 5, 2013

Although Discourse is open source discussion software designed around the fundamental concept of paragraphs, there is no denying that in this era of pervasive broadband, online discussions are as much about images and videos now as they are about words.

With Discourse, we wanted to make it as easy to post a picture as a paragraph. We had good support for images at launch:

  • You can drag and drop images (yes, more than one, even) into the composer.
  • You can paste images into the composer using command+v or ctrl+v*
  • You can paste a link to an image into the composer, on a line by itself. We automatically onebox the image and make it show up in your post.
  • You can use the image upload button on the composer toolbar.

But our image support was mostly designed for small images that fit in the discussion. If some user uploaded a giant image, or pasted a link to a giant image, everyone had to suffer through downloading that massive image – and there was no convenient way to see the image in larger size. Furthermore, forum owners could be on the hook for potentially massive bandwidth bills if a topic containing a few huge images got extremely popular.

Well, no longer! Through the contributions of the amazing ZogStriP, Discourse now has outstanding, comprehensive, and automatic thumbnailing support for images.

Now if you paste in a link to a giant image …

You’ll automatically get a proper discussion-sized thumbnail for that massive image rather than, well, a massive image.

We also show metadata for thumbnailed images in an overlay at the bottom when you hover over them – so you know how big an image you’re dealing with, and what the file size is if you want to download it. It’s also a hint that clicking the image will lightbox it and display it as large as your browser will allow.

Copying and pasting images from the clipboard*, even enormous images, works the same sane and safe way.

Because our image handling for large images is so much better now, we upped the default maximum image upload size from 1 MB to 2 MB. We feel that Discourse now has some of the best default image handling of any community discussion software out there. Did we mention that Discourse is completely open source and free to the world, forever?

Feel free to play with any of this new functionality (which is now enabled by default in all Discourse installs) in our sandbox at!

* You can only paste in images if you are using Google Chrome. We really, really wanted to get this working on Firefox but were unable to without madness.

1 Comment

The Discourse Logo: A System Of Rainbows

Jeff Atwood February 17, 2013

A great logo distills everything about your company and its mission into one succinct image. Getting the logo right sets the tone for everything else you’ll do. That’s why one of the first design elements we tried to nail down on Discourse was our logo.

But what is Discourse about?

Discourse is a project about fundamentally reinventing a technology that hasn’t changed much since the year 2000, web forums. All the cool people spend all their time talking on nifty modern websites like the Facebooks and the Twitters and the Tumblrs these days. Who even visits forums any more?

That’d be like going all the way across town to a run-down arcade to play that ancient, creaky old Street Fighter II machine when you could be playing a 3D, high definition fighting game on your console in the comfort of your own home, against anyone in the world over the Internet.


The very idea of typing paragraphs to other people has fallen out of favor as well. Can you even type a paragraph on Facebook any more? Is this even possible? Doesn’t the enter key submit your brief thought on someone else’s status update? 140 characters in a tweet should be enough for anyone, right? And why bother with those characters at all when a screen full of copypasta images on Pinterest will suffice. It’s faster to visually process than a lot of tedious words.

Who the hell cares about typing paragraphs on the Internet any more?

Well, as it turns out, we do. A lot. That’s why Discourse is, in a word:



Imitative of a style, fashion, or design from the recent past: “retro 60s fashions”.

Clothes or music whose style or design is imitative of those of the recent past.

Stack Exchange is a system of unicorns. It doesn’t really make sense for it to be open source, because it is a system that requires so much rigor and discipline in what it will accept. Having just a few rare, mystical, dew-flecked instances in appropriate science-y and fact-based topics is all that is needed. It’s a deeply beautiful thing to encounter a unicorn because so few exist.

Discourse, on the other hand, is a fully open-source system of rainbows – it needs to be all things to all people, and covers the entire spectrum of discussion up to and including things like forums for people that you may strongly disagree with. Rainbows are not hard to find. They’re seemingly around every corner. Just look out your window.

We now have some design direction to work with: we want something retro that has a rainbow element. What could be more retro than 80s consoles and computers – So many indelible design touchstones from the earliest era of typing paragraphs on a home computer.

Many early computers and consoles also had rainbows in their logos. Consider the rainbow-tastic Activision Atari 2600 library box art.

Dare I mention the early Apple logo? The rainbows, they are everywhere!


How do you capture the rainbow continuum of discussion along with that exquisitely retro feeling of actually typing a paragraph on a keyboard, and not some kind of touchscreen or gesture device? Here are a few of the early iterations we went through.

With a bit of tweaking, and the Century Gothic font, I hope you’ll agree that we ended up with a logo evocative of the themes that matter to the next decade of conversation on the Internet. If typing paragraphs on your iPad is retro, well, we’re unapologetically retro.

We bundle a “sketched in” pencil version of the logo with the GitHub installs to encourage owners to replace the default Discourse logo with their own identity straight away. Discourse won’t be successful because of us. We’re not in the business of running forums; we just create great free 100% open source forum software. If Discourse is successful, it’ll only be because we helped make your forum work.