Late 2018 Product Updates

Between gigantic moderate portions of turkey, pints small glasses of bourbon, and sleeping until noon other festive frivolities, we've been working occasionally tirelessly over the winter break to bring you some much-updated updates to the platform.

TL;DR we added a bunch to the text editor, made multilingual more multilingual, and fixed some things.

Text Editor Improvements

First up is the text editor. We're really proud of our editing experience and work hard to make it the best in the business.

Last year we introduced a plethora of additions and updates, and recoded the whole thing from scratch. Starting this year in the same spirit we have some updates for you.

Preview Unsaved Changes

When you update an article in HelpDocs you'll understandably want to see the changes right away.

Before, you had to save changes before you could preview. Now when you hit the Preview button with unsaved changes you'll actually see a live preview without having to hit save.

No more half-updated changes going live to your customers.

This has historically been one of our most requested features, so I'm thrilled to announce it today.

Improved Article Versioning

When a member of your team updates an article it's sometimes useful to know exactly what's been changed.

We've always let you see the previous 10 versions of an article, but we've made some improvements to the way we store versions, and we now allow you to diff two different versions to see what's changed.

Previously we'd save a new version of the article every time you hit Save. That meant loads of new versions when you're making big updates. Now we're much smarter about it, and save every 5-10 minutes (and only when there's something to save).

You view those versions the exact same way as before, but now in the top right there's a dropdown to compare with another version. Use that and you can see at a glance what's changed between the versions. Additions in green, removals in red, happiness in you. πŸ¦„βœ¨

Start Lists from Any Number

Sometimes when you're writing docs you might find yourself with complex flows of information. Ordered lists are a natural fit for this kinda thing, since they show your customers step by step what they need to do.

But lists can get a little out of hand. Especially if you want to include block elements like tables, callouts, or cat GIFs inside the steps.

Fear not my purrfect friend. You can now start your next list from any number you like. 😻

Just hit the plus icon next to the start number of an ordered list to increment (or the minus to decrement).

Alt Text for Accessibility

Accessibility (or a11y if you're in the know) is an important part of web design. And you'll find this crops up in a lot of our product update posts over the next year.

We're kicking off our a11y efforts by allowing you to easily set alt text for each of the images in your posts. Just click an image in the text editor and enter your text in the provided field.

Users with screenreaders rely on alt text to see the unseeable, and we recommend you add this descriptive copy every time you include an image on your docs.

In some juristictions (Norway, I'm looking at you πŸ‘€) this is even a legal requirement.

Multilingual Improvements

Multilingual support in HelpDocs is one of our most powerful features. You can write your knowledge base articles in any language your customers speak (and likely many they don't).

We've added a few really valuable features to our multilingual offerings in the past few months to make your users' experience even better.

Automatically Redirect Users

Historically when a user landed on your site they'd be sent to the default language version of your docs.

Now, we make a valiant effort to detect what language they'd prefer (based on their browser settings) and present that to them instead. It's a huge bump in multilingual user experience.

Maintain Article While Switching Languages

Users have always been able to switch languages from anywhere on your knowledge base, but until now that's carelessly thrown them back to the homepage.

Now if a user is reading an article, remembers halfway through that they can't in fact read Mandarin (and would prefer to read in French) they can use the language switcher with abandon, and stay on the same article (but in the new language).

It's an obvious feature, but it's great.

Swap Default Language

Ok, now say you start with great intentions and write all your articles in Spanish, only to later realize that the bulk of your customers, product and content is in fact German.

Previously that meant contacting support and waiting for us to manually switch over your default language. That was a big blocker to some teams, since it could take us a couple days to get round to it.

Now you can swap your default language in Settings at any time and we'll automatically switch everything in the background for you.

We recommend taking a backup of your articles first. Don't worry, we support multilingual in the backups too.

Other Small but Mighty Updates

We work hard to improve and fix things every single day. Here's some of what we've done the past couple months.

New Features

  • Import articles from Readme automatically. Readme joins our host of other import sources in Settings > Import & Export. Migrations take as little as a few minutes and are totally automated. πŸ¦‰
  • deepLookup Handlebars helper on custom templates. This behaves like the regular lookup helper, except it goes deeeeeep and lets you chain calls together, rather than converting the result to a string. It's useful for cool things like forward/backwards buttons on sequences of articles.


  • Pasting text into the text editor is more robust. πŸ›€ We strip out more extraneous formatting than ever, especially when it comes to list items. You can also resize more images than ever with more reliable image parsing.
  • Working with tables in the text editor is less depressing. You can now insert block elements like callouts, images, lists, and even (wait for it) TABLES into tables. So meta.
  • Changed "Invalid token" error message on login to "Token has expired". There was an annoyingly incorrect message when you tried to access the dashboard with an expired token. Now there's still an error, but it speaks the truth.
  • Upload a .csv file to the CSV migrator. We used to ask you to open your .csv file in a text editor and copy/paste the content into HelpDocs. This was tough on large files and confusing on any files. Now, in the spirit of saving you time and effort, you can just upload the file instead. And when you do, we'll no longer create a bunch of empty categories when articles are uncategorized.
  • Lucidchart integration now works for logged out viewers. When you include a chart from Lucidchart, your end user no longer needs to have access to that Lucidchart account. We handle the heavy lifting hereβ€”there's no change in the way your editors add charts.
  • Easier to hide top articles on Curve theme. We provide custom CSS examples to hide CSS on all our latest themes. The Curve theme had an edge case where instead of hiding top articles it would hide all articles. Not ideal. Now it doesn't. If you were using our old CSS for this, we've already updated your account to the new code.


  • PDF invoices now show your address and tax information. These have always been available on online invoices. Now your tax info's available on PDF versions too.
  • Invoices now available on accounts that manage other accounts. These were briefly and erroneously removed. But they're back! View away.
  • Requesting a machine translation in-app is more reliable. There were multiple instances where requesting an automatic machine translation of an article would fail. Now it doesn't.
  • You can no longer set your primary langugage as a secondary language too. This caused a host of issues on multilingual accounts where you'd have duplicate versions of each article.
  • If you're still using Jade custom templates and want to switch away from it, you'll need to contact us. Since if you switch away you won't be able to get it back, we've disabled switching entirely on your account. Contact us if you wanna update or make other changes.
  • Less extraneous spacing in automatic article descriptions. We had an edge case where spacing would be adding in automatically generated article descriptions. It looked crappy, and now it looks less so.
  • Historical analytics would not be visible on accounts that recently enabled permissioning. If you upgraded to the Growth plan you'd temporarily lose access to your historical analytics until you contacted support to get it reset. Now you can (and should) upgrade without a care in the world. πŸ“ˆ
  • Accounts weren't correctly unlocked after successful payment after failed payment. If your payment card failed, then succeeded, but you didn't update anything else in your account it would lock out after a few months. Now it correctly updates your payment status as an active customer and isn't so mean and ungenerous.
  • Crisp integration would sometimes not save. When you made changes to your Crisp setup there was a high chance it'd just disappear. Now it very much appears.
  • Front integration now works more reliably on Web. The Front plugin's always worked great in the Desktop apps, but not so much on Web. We've sorted some issues here and you should see much higher reliability.