# Lokalize - Manage translation strings for your app in Cockpit

**URL:** <https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574>\
**Category:** Addons\
**Created:** [February 12, 2019, 3:44pm UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574 "2019-02-12T15:44:09Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![artur](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.getcockpit.com/artur/32/4_2.png) [@artur](https://discourse.getcockpit.com/u/artur)\
**Post date:** [February 12, 2019, 3:44pm UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/1 "2019-02-12T15:44:09Z")

</div>

# Lokalize

Manage translation strings for your app in Cockpit

 ![image](https://canada1.discourse-cdn.com/flex030/uploads/getcockpit/original/1X/4890325770f7101c06e95fa187f768bc1d79f765.png)

# Configuration

Configuration `config/config.yaml`:

```auto
lokalize:
    importkeys: false,
    publicAccess: false,
    translationService:
        provider: Google // or Yandex
        apikey: AIzaxxx

```

# Api

Get localized strings of a project:

```auto
/api/lokalize/project/{name}?token=*apitoken*

```

Get strings for a specific language

```auto
/api/lokalize/project/{name}/{local}?token=*apitoken*

```

> **[agentejo/Lokalize](https://github.com/agentejo/Lokalize)**
>
> Manage localzation strings for your app in Cockpit - agentejo/Lokalize

---

<div class="post-metadata">

**Author:** ![tof](https://avatars.discourse-cdn.com/v4/letter/t/db5fbb/32.png) [@tof](https://discourse.getcockpit.com/u/tof)\
**Post date:** [February 21, 2019, 9:28am UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/2 "2019-02-21T09:28:01Z")

</div>

This is a pretty neat addon !

I’ve already found a usage on a multi-language Wordpress website. It’s easier and more elegant to translate forms made with Gravity Forms with Lokalize translation strings than with the clumsy WPML plugin.

It’s also easy to add a new language by just adding an element in the $languages array in bootstrap.php and a svg flag in assets/media/flags/.

I don’t know if the forum is the place for a feature request, but it would be interesting to have events on Lokalize (like for collection, singleton, forms), just to be able to plug webhooks on some Lokalize events.

Real case usage: I’ve got a php script on a website that calls a distant cockpit API to retrieve translation strings and store them as json files on local filesystem (I don’t want to call API at every page load). A webhook on the modification of a Lokalize object would just call this script and keep the local json files up-to-date.

Thanks.

---

<div class="post-metadata">

**Author:** ![artur](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.getcockpit.com/artur/32/4_2.png) [@artur](https://discourse.getcockpit.com/u/artur)\
**Post date:** [February 27, 2019, 11:54am UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/3 "2019-02-27T11:54:27Z")

</div>

FYI: there is now a `lokalize.saveproject` event triggered

---

<div class="post-metadata">

**Author:** ![tof](https://avatars.discourse-cdn.com/v4/letter/t/db5fbb/32.png) [@tof](https://discourse.getcockpit.com/u/tof)\
**Post date:** [February 27, 2019, 3:23pm UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/4 "2019-02-27T15:23:25Z")

</div>

Oh great. I’ll test it out.  
Thanks.

---

<div class="post-metadata">

**Author:** ![liamemaps](https://avatars.discourse-cdn.com/v4/letter/l/90db22/32.png) [@liamemaps](https://discourse.getcockpit.com/u/liamemaps)\
**Post date:** [December 5, 2020, 1:37am UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/5 "2020-12-05T01:37:45Z")

</div>

I may be out of the technically out of the loop, but how you’re supposed to install it? Can’t find any instruction anywhere.

---

<div class="post-metadata">

**Author:** ![entelostre](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.getcockpit.com/entelostre/32/727_2.png) [@entelostre](https://discourse.getcockpit.com/u/entelostre)\
**Post date:** [December 6, 2020, 9:50am UTC](https://discourse.getcockpit.com/t/lokalize-manage-translation-strings-for-your-app-in-cockpit/574/6 "2020-12-06T09:50:16Z")

</div>

It’s actually pretty easy! Check this article: [https://zeraton.gitlab.io/cockpit-docs/guide/addons/#installation](https://zeraton.gitlab.io/cockpit-docs/guide/addons/#installation)
