PHPackages                             blendbyte/laravel-crowdin-sync - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. blendbyte/laravel-crowdin-sync

ActiveLibrary[Localization &amp; i18n](/categories/localization)

blendbyte/laravel-crowdin-sync
==============================

Syncs Translation Data from Laravel to a Crowdin project and back.

v2.1.0(3mo ago)12.4k1MITPHPPHP ^8.4CI passing

Since Jan 14Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/blendbyte/laravel-crowdin-sync)[ Packagist](https://packagist.org/packages/blendbyte/laravel-crowdin-sync)[ Docs](https://github.com/blendbyte/laravel-crowdin-sync)[ RSS](/packages/blendbyte-laravel-crowdin-sync/feed)WikiDiscussions main Synced today

READMEChangelog (10)Dependencies (30)Versions (19)Used By (0)

Syncs Translation Data from Laravel to Crowdin
==============================================

[](#syncs-translation-data-from-laravel-to-crowdin)

- Automatically syncs your translations files as source to Crowdin and also syncs back translations from Crowdin into your files
- Can sync custom translatable content (using spatie/laravel-translatable fields) to Crowdin and back into your database
- Can run as part of a scheduled command to ensure always up2date translations in your database

Installation
------------

[](#installation)

You can install the package via composer:

```
composer require blendbyte/laravel-crowdin-sync
```

You can publish the config file with:

```
php artisan vendor:publish --tag="crowdin-sync-config"
```

These are the contents of the published default config file:

```
return [
    // Debug Output to STDOUT
    'debug' => env('CROWDIN_DEBUG', false),

    // Crowdin Access Token for the API
    'api_key' => env('CROWDIN_API_KEY'),

    // Project ID for Translation Files (must be "File-based project")
    'project_id_files' => env('CROWDIN_PROJECT_ID_FILES', -1),

    // File Update Option, choose one of clear_translations_and_approvals, keep_translations, keep_translations_and_approvals
    'file_update_options' => env('CROWDIN_FILE_UPDATE_OPTIONS', 'clear_translations_and_approvals'),

    // Only export approved translations for translation files
    'file_export_approved_only' => env('CROWDIN_FILE_EXPORT_APPROVED_ONLY', true),

    // Project ID for Content Translations (must be "String-based project")
    'project_id_content' => env('CROWDIN_PROJECT_ID_CONTENT', -1),

    // Content branch ID
    'content_branch_id' => env('CROWDIN_CONTENT_BRANCH_ID', -1),

    // Only apply approved translations to content translations
    'content_approved_only' => env('CROWDIN_CONTENT_APPROVED_ONLY', false),
];
```

Usage
-----

[](#usage)

```
LaravelCrowdinSync::make()->syncFiles(source_path: 'lang/', crowdin_path: 'laravel/');
LaravelCrowdinSync::make()->uploadFiles(source_path: 'lang/', crowdin_path: 'laravel/');
LaravelCrowdinSync::make()->downloadFiles(source_path: 'lang/', crowdin_path: 'laravel/');

# refactoring this:
# LaravelCrowdinSync::make()->syncContent(\App\Models\Page::class);
# LaravelCrowdinSync::make()->uploadContent(\App\Models\Page::class);
# LaravelCrowdinSync::make()->downloadContent(\App\Models\Page::class);
```

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Blendbyte Inc.](https://github.com/blendbyte)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

Maintained by Blendbyte
-----------------------

[](#maintained-by-blendbyte)

 [   ![Blendbyte](https://camo.githubusercontent.com/09962a5684a0b50fb9eb44edfd8f2560be418bc8ce3d23a31f96395f3f14d58e/68747470733a2f2f7777772e626c656e64627974652e636f6d2f6c6f676f5f686f72697a6f6e74616c2e706e67)  ](https://www.blendbyte.com)

 **[Blendbyte](https://www.blendbyte.com)** builds cloud infrastructure, web apps, and developer tools.
 We've been shipping software to production for 20+ years.

 This package runs in our own stack, which is why we keep it maintained.
 Issues and PRs get read. Good ones get merged.

 [blendbyte.com](https://www.blendbyte.com) ·

###  Health Score

48

—

FairBetter than 93% of packages

Maintenance83

Actively maintained with recent releases

Popularity22

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 75.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~30 days

Recently: every ~79 days

Total

15

Last Release

107d ago

Major Versions

v0.0.0 → v1.0.12025-01-14

v1.3.1 → v2.0.22025-05-01

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/69378377?v=4)[Blendbyte](/maintainers/blendbyte)[@blendbyte](https://github.com/blendbyte)

---

Top Contributors

[![bashgeek](https://avatars.githubusercontent.com/u/4669888?v=4)](https://github.com/bashgeek "bashgeek (55 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (12 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (6 commits)")

---

Tags

laravelBlendbyte Inc.laravel-crowdin-sync

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/blendbyte-laravel-crowdin-sync/health.svg)

```
[![Health](https://phpackages.com/badges/blendbyte-laravel-crowdin-sync/health.svg)](https://phpackages.com/packages/blendbyte-laravel-crowdin-sync)
```

###  Alternatives

[spatie/laravel-permission

Permission handling for Laravel 12 and up

12.9k102.4M1.4k](/packages/spatie-laravel-permission)[spatie/laravel-pdf

Create PDFs in Laravel apps

1.0k4.8M47](/packages/spatie-laravel-pdf)[dedoc/scramble

Automatic generation of API documentation for Laravel applications.

2.1k11.2M100](/packages/dedoc-scramble)[spatie/laravel-passkeys

Use passkeys in your Laravel app

471890.7k39](/packages/spatie-laravel-passkeys)[finity-labs/fin-mail

A powerful email template manager and composer for Filament with dynamic token replacement, template versioning, and inline email sending.

284.5k1](/packages/finity-labs-fin-mail)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
