Specify 7 Continuous Localization

Two way integration with Weblate

Specify 7 is an open-source collection management software. It's used in over 50 countries, making localization a big necessity.

However, with over 300,000 words being used in the User Interface and Data Model localization, sending text files or spreadsheets to translators and then re-integrating that back into the code quickly run into issues.

As a solution, I researched available solutions in the localization space and decided on Weblate as the best choice, as it's an open-source platform, with free hosting for non-profits, and more features that in many paid solutions.

The remaining challenges were integrating the way we store localization with Weblate and educating translators on how to use it.

Main aspects of the solution:

Technical details about the solution and and reasoning


Translation languages
String localization interface
Components of Specify 7

Webinar on the localization of Specify 7

After the integration was complete, came the task of teaching translators how to use Weblate. The following is a webinar prepared by our community manager:

In addition, there is a more detailed description of the localization process

Online demo

You can try out the live version of Specify 7 at sp7demofish.specifycloud.org. Also, you can take a look at the Weblate project for Specify 7 is available.

Things learned

At the start of the process, I had no idea that a platform like Weblate exists. I was about to bullishly start building my own interface for localization. Fortunately, my teammate, who knows my shortcomings, initiated the research of existing solutions, which I then picked up. After I shown an internal demo of a few finalists, Weblate was chosen by our community managers as the most friendly looking.