All Projects → chejen → Keys Translations Manager

chejen / Keys Translations Manager

Licence: mit
KTM, a locale management web app built on MERN stack, lets you manage and control locales in one place. It's particularly useful for someone who needs to manage multiple internationalization/localization projects.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Keys Translations Manager

inlang
Open Source Localization Solution for Software.
Stars: ✭ 160 (+97.53%)
Mutual labels:  i18n, internationalization, localization, l10n
python-fluent
Python implementation of Project Fluent
Stars: ✭ 142 (+75.31%)
Mutual labels:  i18n, internationalization, localization, l10n
Angular-Gulp-Boilerplate
Clean but full-featured AngularJS boilerplate using Gulp workflow and best practices
Stars: ✭ 30 (-62.96%)
Mutual labels:  i18n, internationalization, localization, l10n
stone.js
gettext-like client-side Javascript Internationalization Library
Stars: ✭ 20 (-75.31%)
Mutual labels:  i18n, internationalization, localization, l10n
Redux React I18n
An i18n solution for React/Redux and React Native projects
Stars: ✭ 64 (-20.99%)
Mutual labels:  i18n, localization, internationalization, l10n
lisan
🌈i18n, Reimagined! 🚀A blazing fast and super small i18n library for Javascript
Stars: ✭ 85 (+4.94%)
Mutual labels:  i18n, internationalization, localization, l10n
Laravel Js Localization
🌐 Convert your Laravel messages and consume them in the front-end!
Stars: ✭ 451 (+456.79%)
Mutual labels:  i18n, localization, internationalization, l10n
msgtools
Tools for Developing Diagnostic Messages
Stars: ✭ 18 (-77.78%)
Mutual labels:  i18n, internationalization, localization, l10n
Fluent.js
JavaScript implementation of Project Fluent
Stars: ✭ 622 (+667.9%)
Mutual labels:  i18n, localization, internationalization, l10n
labels
Bolt Labels extension - Translatable labels for Bolt
Stars: ✭ 18 (-77.78%)
Mutual labels:  i18n, internationalization, localization, l10n
I18N
I18N Library for .NET, and Delphi
Stars: ✭ 48 (-40.74%)
Mutual labels:  i18n, internationalization, localization, l10n
Fluent Rs
Rust implementation of Project Fluent
Stars: ✭ 503 (+520.99%)
Mutual labels:  i18n, localization, internationalization, l10n
android-studio-plugin
Integrate your Android project with Crowdin
Stars: ✭ 52 (-35.8%)
Mutual labels:  i18n, internationalization, localization, l10n
i18n
internationalize projects to Arabic
Stars: ✭ 67 (-17.28%)
Mutual labels:  i18n, internationalization, localization, l10n
figma-static-localizer
A Figma plugin for static localization
Stars: ✭ 30 (-62.96%)
Mutual labels:  i18n, internationalization, localization, l10n
rosetta
A blazing fast internationalization (i18n) library for Crystal with compile-time key lookup.
Stars: ✭ 23 (-71.6%)
Mutual labels:  i18n, internationalization, localization, l10n
sketch-crowdin
Connect your Sketch and Crowdin projects together
Stars: ✭ 35 (-56.79%)
Mutual labels:  multilingual, internationalization, localization, l10n
awesome-i18n
🌍 A curated list of i18n resources for all kind of languages and frameworks
Stars: ✭ 205 (+153.09%)
Mutual labels:  i18n, internationalization, localization, l10n
i18n
Package i18n is for app Internationalization and Localization.
Stars: ✭ 79 (-2.47%)
Mutual labels:  i18n, internationalization, localization, l10n
Mojito
An automation platform that enables continuous localization.
Stars: ✭ 256 (+216.05%)
Mutual labels:  i18n, localization, internationalization, l10n

MIT Licensed Build Status (Windows) Build Status (Linux) Coverage Status

Keys-Translations Manager

Demo | Key Features | Getting Started | Custom | Technologies | License | Questions?

Keys-Translations Manager, a web application scaffolded with MERN stack, aims to facilitate locale management. With this application, you can:

  • control and manage locales in one place,
  • import locales from nested/flat JSON or Properties files,
  • export locales to nested/flat JSON or Properties files,
  • view revision history of every single key,
  • get data validation for input/import, and
  • get real-time notifications if data has been changed by the other users.

Demo

demo

Key Features

Import locales

Transfer your locales from separate files to Keys-Translations Manager to make them easy to read, convenient to collaborate, and maintainable. (See instructions)

Export locales

Not only can you download locales directly from the web, but you can also get them via CLI or REST API.

Merge translations

Keys-Translations Manager can help you to merge the same keys that have the same translations for each locale but sit in different projects. (See instructions)

View revision history

See the demo

Visualization

See the demo

Getting Started

Method 1:

  • Download Node.js (v10.13+ is required) and MongoDB, and then get them installed.
  • Start mongod process and make sure it's running normally.
  • Checkout this repo (or directly download the stable releases from here), install dependencies, then start the web server:
$ git clone https://github.com/chejen/keys-translations-manager
$ cd keys-translations-manager
$ npm install (or yarn install)
$ npm run build (or yarn build)
$ npm start (or yarn start)

Open http://localhost:3000/ and enjoy it.

Method 2:

Alternatively, if you have Docker and docker-compose installed:

$ git clone https://github.com/chejen/keys-translations-manager
$ cd keys-translations-manager
$ docker-compose up -d

Open http://localhost:3000/ and enjoy it.

Custom

There are several environment variables you can configure:

Variable Description Default
PORT Web server's port 3000
DB MongoDB connection URI mongodb://localhost:27017/translationdb

There are some other settings (in ktm.config.js) you can configure. The table below lists the available ones:

Setting Description Default
locales The locales need to be managed. (You can add or remove locales arbitrarily.) ['en-US', 'zh-TW']
projects The projects need to be localized. (You can add or remove projects arbitrarily.) [ {id:'p1', name:'project A'}, {id:'p2', name:'project B'} ]
enableNotifications Push real-time notifications to users true

Note: Rebuild the code (npm run build or yarn build) and restart the server if you change any of these configurations. Or, if you run the app in containers, run docker-compose build and then docker-compose up -d.

Technologies

License

This source code is licensed under the MIT License.

Questions?

Please don't hesitate to open an issue or contact me.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].