Bulk actions and more...much more

It’s been a busy few weeks since launching on Product Hunt. We have announced our latest funding round and onboarded a bunch of awesome customers. In all the hustle and bustle we somewhat fell out of our regular changelog cadence 😅 Anywhooo… better late than never, right?

🚀 Bulk actions

A screenshot of our bulk action bar in Plain
The bulk action bar in all its glory

When working within the customer queues you can now perform bulk actions. This means you can select a number of customers in the same queue and perform an action on all the selected customers. The bulk actions available are:

  • Assigning all selected customers to one user.
  • Unassigning all selected customers.
  • Snoozing all selected customers.
  • Unsnoozing all selected customers.
  • Marking all selected customers as helped.

We've also added some keyboard shortcuts to these actions to make it even faster.

👩‍💻 Demo workspaces

When signing up to Plain you can now create a demo workspace with one click.

You’ll get a bunch of customers, customer cards and an email address so you can experiment with how Plain works without having to set up anything yourself and pretend to be a customer.

Try it out in Plain

👾 New API components

For Custom Timeline Entries and Customer Cards you now have a few more components to better structure your data.

  • Copy Button: To make it easy to quickly copy useful data like ids or links etc.
  • Row: This lets you easily place things next to each-other
  • Container: If you have a list of something you can use a container to wrap some components in a small border.
  • Plain Text: Useful if you want to create a custom timeline entry with user generated content and don’t want to use markdown.
A screenshot of a variety of different customer card examples generated by Plain
The new API components let you make way more powerful and dense customer cards and timeline entries.

🗑️ Delete customers API

You can now call the delete customer mutation from your own systems to programatically delete a customer and be GDPR compliant without having to manually reach out to us 😅

✨ Improvements

  • When you set up a workspace you are now greeted with a nice little tutorial showing you how to get the most out of Plain and suggesting nice follow-on actions such as customising notifications.
  • Improved navigation on all screens outside of a workspace to make it easier to get in touch if you run into issues.
  • Improved API validation error messages on array input fields so you can now tell which specific item failed validation.
  • Improved the settings navigation so that it’s grouped more logically and that it’s easier to… navigate.
  • When you sign-up we now pre-fill your details using your google auth details so you have less typing to do.
  • When you set up emails we now handle a more exhaustive list of email errors with specific error messages so you know what to do to fix the issue.
  • Improved empty states in customer sidebar to better explain why it’s empty and what you would see there normally.
  • You can now sort customer cards by dragging anywhere in the row, not just the handle.
  • Improve error messages when a customer card request expires to more clearly tell you what happened.
  • Visually tidied up the customer sidebar to make better use of space.
  • Add ability to sort customers in queues.
  • Added keyboard shortcuts “S” and “H” when on a customer to quickly mark them as Snoozed or Helped respectively.
  • Improved colour contrast on our marketing website for better accessibility.
  • Improved UI performance on the customer page to make typing feel smoother. Our react renders are roughly 10x faster when typing so we consistently hit 60fps.
  • Marking as Helped, Snoozing and Unsnoozing should be roughly 1923x faster now.
  • We now have documentation on how to set up email and chat

🦟 Bug fixes

  • Various tooltips are now once again rendering correctly above all content.
  • Fixed an edge case which resulted in customer timelines being refetched needlessly resulting in a slower experience.
  • The enable email button now correctly shows a loading state when it’s… loading.
  • Fixed a bug which prevented customer card settings from being updated if you had made more than 25 cards.
  • Fixed some layout/scrolling issues with the Mark as Helped button on mobile.
  • Fixed a bug which prevented slack notifications from being delivered when a message exceeded Slacks’s message size limit.
  • Fixed a bug which prevented @team-plain/react-chat-ui from working in certain setups where dynamic imports are not allowed (Create React App for example).
  • Handle auth expiry more gracefully and redirect to the login page.
  • Fixed a bug which let you remove admin roles from other users if you were allowed to manage roles but were not an admin yourself.
  • Fixed client side handling of permission errors to more gracefully tell you when you have insufficient permissions to view a page.
  • Fixed a bug which resulted in certain emails being marked as unverified/untrusted when they were in fact fine.
  • Visual fixes to composer when sending long emails which resulted in the text touching the send button.
  • #changelog

Get started with Plain ✨

Sign up now and provide support that's as polished as your product.

Join us 👩‍💻

…and write the next post. We're growing our small but mighty team.

© Plain. CS without the BS since 2020.
plain.com