Teams | Collaboration | Customer Service | Project Management

Latest Posts

Building an Integration? Here's When to Use Apps instead of Plugins

In the last few months, we have been working on a new Apps framework for developers. The idea behind this framework is to make it easier for more developers to integrate external applications or their own applications into Mattermost. But wait a moment, don’t we have Plugins for that? Yes, but Apps provide some advantages to developers over Plugins.

Manage Dynamic Schemas at Scale with Rudderstack & dbt

I recently had the pleasure of hosting a webinar with the team over at Rudderstack. It focused on Data Engineering and managing dynamic schemas at scale. More specifically, Rudderstack-generated, dynamic schemas at scale. This blog will discuss the tools, software, and methods to do just that.

Automate EKS Node Rotation for AMI Releases

In the daily life of a Site Reliability Engineer, the main goal is to reduce all the work we call toil. But what is toil? Toil is the kind of work tied to running a production service that tends to be manual, repetitive, automatable, tactical, devoid of enduring value, and scales linearly as a service grows. This blog post describes our journey to automate our nodes rotation process when we have a new AMI release and the open source tools we built on this.

Securing XML implementations across the web

In December 2020, we blogged about security issues in Go’s encoding/xml with critical impact on several Go-based SAML implementations. Coordinating the disclosure around those issues was no small feat; we spent months emailing the Go security team, reviewing code, testing and retesting exploits, coming up with workarounds, implementing a validation library, and finally reaching out to SAML library maintainers and 20 different companies downstream.

Migrating Thousands of Cloud Instances to New Kubernetes Custom Resources

Mattermost’s Kubernetes Operator spins up and manages Mattermost instances running on Kubernetes based on a ClusterInstallation Custom Resource (CR). Mattermost Operator 1.0 has evolved a lot since its release, along with the ClusterInstallation CR in the v1alpha version. As time went by — as with any software — the Operator gained more features, configuration options, functionalities, and technical debt.

Installing Mattermost to Heroku

Heroku is a wonderful cloud platform that allows developers to provision and operate applications. It enables the kind of fast feedback loop that developers crave. There is a heavy layer of abstraction when using Heroku to run applications, but it’s a valid tradeoff considering its ability to bootstrap projects. In this article, we will provide the steps you need to take in order to get Mattermost running on the Heroku Cloud Platform.

Collapsed Reply Threads are here! Get early access to the beta

We’ve heard your feedback, and are excited to announce that users of Mattermost Cloud and Mattermost Self-Managed v5.37 or later can now get early access to Collapsed Reply Threads in beta! This feature has been a top priority for our team and is the most voted feature request on our idea forum. Given this is an early access beta, we highly encourage Admins and users interested in enabling the feature to review our documentation and known issues.

Looking forward to the next big Mattermost product milestone: Mattermost v6.0

The Mattermost team is actively working on our next major product release: Mattermost v6.0 is shipping this fall. That’s right around the corner! In advance of the release, we’d like to communicate some specifics on select features being promoted from beta to generally available and upcoming deprecations. We would also like to share a glimpse of what’s coming.

Mattermost plugins: The web app

This is the fourth installment in a series of articles on Mattermost plugins. First, we talked about how to set up your developer environment. We then examined the structure of server-side and web app plugins before walking through how to build a server-side plugin in Mattermost. In this piece, we’ll explore how to create web app plugins. The web app is written in JavaScript. It uses Redux, and you can write your plugin in Typescript as well. In this article, we’ll use JavaScript.