Migrating to Weblate¶
Are you using a different localization platform and considering switching to Weblate? This guide provides a quick, step-by-step process to help you migrate your translation project from platforms like Transifex, Crowdin, Lokalise, or similar services.
Weblate is designed around continuous localization with Git integration at its core, making it ideal for teams that want to keep translations close to their development workflow.
Shihni edhe
Starting with internationalization for choosing the right internationalization framework
Integrim me Weblate-in for detailed integration options
Përkthim në vazhdimësi for setting up automated workflows
Prerequisites¶
Before starting your migration, ensure you have:
On your localization platform:
Access to export your translation files
List of translators and their roles/permissions
Understanding of your current workflow (review process, automation, etc.)
For Weblate:
A Weblate instance (either Hosted Weblate or self-hosted)
Admin or project creation permissions on your Weblate instance
Prepare your translation files¶
Export translations from your current platform¶
Most localization platforms allow you to export all translations at once:
Transifex: Use their CLI tool or download translations from the web interface
Crowdin: Export all translations as a ZIP file from project settings
Lokalise: Use the bulk export feature
Phrase: Download all locales from the project dashboard
Ndihmëz
Keep your translation files in the format native to your internationalization framework (PO, XLIFF, JSON, etc.) rather than converting them. Weblate supports many formats.
Commit translations to your Git repository¶
Ndihmëz
If you would rather not store translations in an external Git repository, you can skip this step and use the Upload translation files option when creating a component.
If your translations aren’t already in Git:
Create a Git repository or use your existing project repository
Organize translation files following your project structure
Commit and push the files to your Git hosting service (GitHub, GitLab, Bitbucket, etc.)
git add locales/
git commit -m "Add translation files for Weblate migration"
git push origin main
Shihni edhe
Përkthim në vazhdimësi for optimal repository structure
Integrim kontrolli versioni for supported version control systems
Import your project into Weblate¶
Create a new project¶
Navigate to your Weblate instance.
Click Add new translation project in the + menu.
Fill in your project details:
Project name: Your application or project name
URL slug: Short identifier (e.g.,
myapp)Project website: Your project homepage (optional)
Shihni edhe
Adding translation projects and components for detailed project creation instructions
Add a component from your Git repository¶
After creating the project, click Add new translation component
Select From version control
Configure your component:
Component name: e.g., «Application strings», «Website», «Documentation»
Repository URL: Your Git repository URL (HTTPS or SSH)
Repository branch: Optional: Specify repository branch (Weblate automatically detects the default branch if not specified)
Weblate will automatically detect:
Translation file format
Available languages
Gjuhë burimi
Review and confirm the detected settings
Shënim
If your repository contains a Transifex .tx/config, Weblate parses
it using translation-finder and offers matching component configurations
during discovery. This only covers file-related configuration, such as file
masks and source files. Other project settings from the previous platform,
including workflows, permissions, and language aliases, still need to be
configured manually in Weblate.
Language aliases are usually not needed because Weblate already recognizes and normalizes common language-code variants while parsing translation files. See Parsing language codes; configure Aliase gjuhe only if your repository uses codes Weblate cannot map as intended.
Ndihmëz
For repositories with multiple translation components (e.g., separate files for backend, frontend, documentation), create a separate Weblate component for each.
You can speed this up using From existing component for shared repositories or Pikasje përbërësish to automatically create them.
Shihni edhe
Component configuration for all configuration options
Formate dygjuhësh dhe njëgjuhësh for understanding monolingual vs. bilingual formats
Configure your workflow¶
Set up access control¶
Choose your project’s visibility and access level:
Go to your project settings: Operations → Settings → Access tab
Select the appropriate access control:
Public: Open-source projects, anyone can contribute
Protected: Visible to all, but only invited users can translate
Private: Only invited users can view and translate
Shihni edhe
Administrim kontrolli hyrjesh sipas projektesh for detailed access control configuration
Set up continuous localization¶
Enable automatic updates and commits:
Configure repository integration:
Pull changes: Set up a webhook so Weblate updates when your source code changes
Push changes: Configure Pushing changes from Weblate so translations are committed back to your repository
Enable automatic actions in component settings:
Push on commit: Automatically push translations to your repository
Commit interval: Set how often pending translations are committed (e.g., every 24 hours)
Shihni edhe
Përkthim në vazhdimësi for complete workflow automation
Configure quality checks and workflows¶
Customize translation quality controls:
Enable checks: Review Kontrolle cilësie and enable any opt-in quality checks you need.
Set up review workflow: Enable Aktivizoni shqyrtime if you want an approval process.
Add enforced checks: Configure which quality checks should block translations.
Optional: Enable add-ons¶
Weblate offers Shtesa to automate common tasks:
Përditësoni kartela PO, që të përputhen me POT (msgmerge): Automatically update PO files from POT templates
Spastro kartela përkthimi: Remove unused translation strings
Kryej «squash» për depozitime Git: Squash commits before pushing to your repository
Pikasje përbërësish: Automatically discover new translation files
Shihni edhe
Shtesa for all available add-ons
Test and verify¶
Before announcing the migration to your translators:
Test the workflow:
Make a test translation
Verify it appears in your Git repository
Test pulling changes from your repository into Weblate
Import any existing translation memory (optional):
Use Kujtesë Përkthimesh to import previous translations
This helps with consistency and speeds up translation
Configure notifications:
Set up Njoftime for translation events
Configure repository Hook-e njoftimesh for your Git hosting service
Shihni edhe
Kujtesë Përkthimesh for translation memory management
Invite and manage users¶
Invite translators¶
For Protected and Private projects:
Navigate to Operations → Users in your project
Use Add user to invite translators
Assign them to appropriate teams:
Translators: Can translate strings
Reviewers: Can review and approve translations
Managers: Can manage project settings
For Public projects, users can start contributing immediately after signing up.
Ndihmëz
Send your translators a welcome message with:
Link to your project on Weblate
Overview of any project-specific terminology or style guides
Information about your review process
Shihni edhe
Administrim kontrolli hyrjesh sipas projektesh for team management
Kontroll hyrjesh for advanced permission configuration
Next steps¶
After completing the migration:
Announce to translators: Let your translation team know about the migration with clear instructions
Monitor initial usage: Watch for any issues during the first few days
Gather feedback: Ask translators about their experience compared to the previous platform
Optimize workflow: Adjust settings based on your team’s needs
Remove previous platform: Once the migration is completed, remember to revoke access granted to the previous platform.
Ndihmëz
During migration, you can run both platforms in parallel for a transition period to ensure everything works as expected before fully switching over.
Additional resources¶
Integrim me Weblate-in - Detailed integration patterns
Rrjedha pune përkthimi - Different workflow configurations
Përkthim në vazhdimësi - Automated continuous localization
API REST e Weblate-it - API for automation and integrations
Njoftim ecurie përkthimi - Setting up translation progress reports
Pyetje të Bëra Rëndom - Frequently asked questions
Ndihmëz
Join the Weblate community if you need help during your migration. The community is active and helpful!