PHPackages                             bushbaby/bsb-doctrine-translator - 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. [Database &amp; ORM](/categories/database)
4. /
5. bushbaby/bsb-doctrine-translator

Abandoned → [bushbaby/bsb-doctrine-translator](/?search=bushbaby%2Fbsb-doctrine-translator)ArchivedLibrary[Database &amp; ORM](/categories/database)

bushbaby/bsb-doctrine-translator
================================

BsbDoctrineTranslator is a ZF2 module that provides tools to manage translations stored with doctrine.

1.0.0-alpha2(11y ago)0532MITPHPPHP &gt;=5.3.3

Since Jan 7Pushed 11y ago1 watchersCompare

[ Source](https://github.com/bushbaby/BsbDoctrineTranslator)[ Packagist](https://packagist.org/packages/bushbaby/bsb-doctrine-translator)[ Docs](https://github.com/bushbaby/BsbDoctrineTranslator)[ RSS](/packages/bushbaby-bsb-doctrine-translator/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependencies (7)Versions (3)Used By (0)

BsbDoctrineTranslator
=====================

[](#bsbdoctrinetranslator)

WARNING! very much work in progress - do not use in production!

Set of tools to manage translation from a doctrine database.

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

[](#installation)

### as zf2 project

[](#as-zf2-project)

BsbDoctrineTranslator works with Composer. To install it into your project, just add the following line into your composer.json file:

```
"require": {
    "bushbaby/bsb-doctrine-translator": "~1.0.0@dev"
}

```

Then update your project by runnning composer.phar update.

Finally enable the module by adding BsbDoctrineTranslator in your application.config.php file.

### as standalone

[](#as-standalone)

For development purposes you might want to install BsbDoctrineTranslator standalone. Clone the project somewhere on your computer

```
git clone git@github.com:bushbaby/BsbDoctrineTranslator.git BsbDoctrineTranslator
cd BsbDoctrineTranslator
curl -sS https://getcomposer.org/installer | php
git checkout develop
./composer.phar install
phpunit

```

Configuration
-------------

[](#configuration)

To configure the module just copy the bsb\_doctrine\_translator.local.php.dist (you can find this file in the config folder of BsbDoctrineTranslator) into your config/autoload folder, and override what you want.

### Commandline Tool

[](#commandline-tool)

#### Commands

[](#commands)

The source scanner provides the ability to detect any translate(message, domain, locale) translatePlural(message, plural, number, domain, locale) invokations in PHP source.

scan-source accepts these arguments

```
--locale
--domain
--file=path/to/file
--kind=all|singular|plural defaults to all

```

To list detected messages

```
scan-source list

```

Export detected messages

```
scan-source export > exported.txt

```

The comparison component provides the ability to compare message defined in source to the actual translation in the database

```
Provides the ability to compare the message found in source to messages stored in database

compare untranslated

```

Features (some planned)

- Warn against missing printf tokens in plural messages
- Warn against conflicting singular and plural message (since these should never be the same)
- Find messages without a translation
- Remove messages defined in database but not detected in source
- Add messages defined in source but not present in database
- Exporting to various formats
- Change a translation
- Detect a translation invokation that has moved due to refactoring
- Detect a change of message refactoring
- Display the source context of a message

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~451 days

Total

2

Last Release

4106d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e42bb1eb4035d280d16210974fa60d0dbddeba8a061abec926e5e081d097231d?d=identicon)[bushbaby](/maintainers/bushbaby)

---

Top Contributors

[![basz](https://avatars.githubusercontent.com/u/143068?v=4)](https://github.com/basz "basz (31 commits)")

---

Tags

i18ntranslationdoctrinemodulezf2

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/bushbaby-bsb-doctrine-translator/health.svg)

```
[![Health](https://phpackages.com/badges/bushbaby-bsb-doctrine-translator/health.svg)](https://phpackages.com/packages/bushbaby-bsb-doctrine-translator)
```

###  Alternatives

[ahmed-bhs/doctrine-doctor

Runtime analysis tool for Doctrine ORM integrated into Symfony Web Profiler. Unlike static linters, it analyzes actual query execution at runtime to detect performance bottlenecks, security vulnerabilities, and best practice violations during development with real execution context and data.

939.0k](/packages/ahmed-bhs-doctrine-doctor)[hounddog/doctrine-data-fixture-module

Zend Framework 2 Module that provides Doctrine Data-Fixture functionality

37335.9k9](/packages/hounddog-doctrine-data-fixture-module)[ao/translation-bundle

Doctrine as symfony translation provider + a nice gui for editing translations.

243.8k](/packages/ao-translation-bundle)

PHPackages © 2026

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