skillfed

wlc

A command-line utility for Weblate, translation tool with tight version control integration

wlc v2.1.1 229.7K downloads/30d#9,126 on PyPI45
Copyleft license GPL-3.0-or-later Active released

What it is and what it does

wlc is a command-line interface to Weblate, a web-based continuous localization platform used by over 2500 libre projects. It wraps Weblate's REST API to let developers manage translations, components, and projects from the shell, making it easy to integrate localization workflows into CI/CD pipelines and development scripts.

The tool supports operations like listing projects and translations, pulling and pushing changes, downloading and uploading files, and checking lock status. Configuration is flexible: you can use command-line flags, environment variables (WLC_URL, WLC_KEY), or INI files placed in your project or user config directories. It depends on requests and urllib3 for HTTP communication, argcomplete for shell completion, python-dateutil for date handling, and pyxdg for XDG config path discovery.

Use it for:

  • Automate translation updates in CI/CD pipelines by pulling latest translations from Weblate and committing them to version control.
  • Batch upload new source strings or translation files to Weblate from the command line without opening the web interface.
  • Script repetitive localization tasks like checking translation status, locking/unlocking projects, or syncing repositories.
  • Integrate Weblate into local development workflows by pulling translations on demand before building or testing.
  • Manage API keys and connection settings across multiple Weblate instances using environment variables in different deployment contexts.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

wlc is a command-line client for Weblate's REST API, enabling developers to manage translations, pull and push localization changes, and interact with Weblate projects from the terminal.

Yes, if you use Weblate and need CLI automation. Low install friction, active maintenance, no known vulnerabilities, and broad Python version support make it reliable. The copyleft license (GPL-3.0-or-later) is a constraint only if you plan to distribute proprietary derivatives; for open-source projects and internal CI/CD use, it poses no barrier.

Install

wlc on PyPI

pip

pip install wlc

uv

uv add wlc

poetry

poetry add wlc

Installing wlc

Before you install

Low install friction with a pure-Python wheel and five standard dependencies. Actively maintained with a release 20 days ago and recent commits; supports modern Python versions from 3.10 through 3.14.

License in practice

Licensed under GPL-3.0-or-later (copyleft). Any modifications or derivative works must be distributed under the same license; suitable for open-source projects but requires legal review for proprietary use.

Quickstart

pip install wlc

wlc --url https://hosted.weblate.org/api/ --key YOUR_API_KEY list-projects

# Or configure via ~/.config/weblate or .weblate.ini in your project directory

Requires Python 3.10 or later. API key authentication and a Weblate instance URL are required to connect.

Verify before relying

  • Whether wlc's command set covers all Weblate API operations or if some workflows require direct API calls.
  • Performance characteristics when managing large numbers of translations or projects.
  • Whether configuration file discovery from parent directories works reliably in all project structures.

Package facts

License GPL-3.0-or-later (copyleft)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 5 — argcomplete, python-dateutil, pyxdg, requests, urllib3
Maintenance actively maintained — 20 days since the last release
Last repo commit
First released
Downloads 229,687/month — #9,126 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: wlc-2.1.1-py3-none-any.whl

Keywords: i18n, l10n, gettext, git, mercurial, translate

Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Software Development :: InternationalizationTopic :: Software Development :: LocalizationTopic :: Utilities

Tags

weblate command line clienttranslation management clilocalization workflow automationweblate api command linei18n l10n cli tooltranslation push pull cliweblate project management
weblatelocalization-automationtranslation-management

More Utilities packages