There's been an increasingly large number of requests for Mattermost to offer localization, and we're starting a thread to discuss the best process to make this work at high quality.
From discussions on the Mattermost core team server, notable from the Localization channel, we have some initial thoughts:
1) Using React-Intl as a framework
Given we're built in React, React-Intl has been proposed by community members as the best approach, and there's even a wonderful guide on how to get started from the Mozilla team.
2) Breaking out tickets accepting pull requests to get started
We had an internal ticket to setup localization, but it keeps getting pushed back under the weight of other priorities (mobile apps, more support for integrations, usability, etc.).
So we're changing that from an internal ticket to a public ticket accepting pull requests, asking help from someone in the community who's done React-Intl work before to help add an example to Mattermost.
This would let us then break out more tickets for contributors to help convert portions of the Mattermost UI into a localizable form.
We'd then need to figure out how our build system works to produce localized releases.
3) Process for localization
After the infrastructure is set up on master, we're looking at using something like Mozilla's Pontoon system to run the localization process, where we'd need to find community members to help project manage, translate and review the localization work.
There's a bunch of upfront tasks to get out the first localized versions, and then a process with the Mattermost monthly releases to make sure the latest changes are updated.
4) Localizing documentation
There is also a task of figuring out how to localize install guides and other documentation.
The core team has thought about these tasks for a while--and we know that every day we wait to do localization the more work there is to do.
Opening this thread for community feedback to see what level of interest there might be the various roles and responsibilities discussed here.
If anyone is serious about helping out, please consider joining the Localization channel on Mattermost's core team site.