On this page
- What It Does
- Installation & Setup
- Step 1 — Install the module
- Step 2 — Start browsing
- Configuration Options
- Frequently Asked Questions & Troubleshooting
- Why are some modules still displayed in English?
- Is my site sending private data to external servers?
- What happens if the Translation Hub is temporarily unavailable?
- What happens if I uninstall the module?
Project Browser Localizer
This documentation needs review. See "Help improve this page" in the sidebar.
Project Browser Localizer makes the Drupal Project Browser speak your language. Official module metadata on drupal.org (titles, summaries, descriptions, category names) is English-only. This module seamlessly fetches reviewed translations from a Translation Hub and overlays them directly into your Project Browser, with English as an automatic fallback for untranslated content.
Compatibility: Requires Drupal 10.3+ or 11.x and Project Browser 2.0.x / 2.1.x.
What It Does
Project Browser Localizer fully translates the discovery experience inside Drupal:
- Project Metadata: Module titles, summaries, and full descriptions appear in your site's active language.
- Categories: Filter category names (such as "Access Control", "Commerce", or "Media") are translated automatically.
- UI Labels & Buttons: Interface strings and counters (e.g., "Active installs", "categories selected") are localized to match your interface language.
- Visual Language Badges: Translated project cards feature a small flag badge so you immediately know which descriptions are localized.
- Code Syntax Highlighting: Code blocks inside translated descriptions are clean and highlighted for better readability.
- Automatic Fallback: If a module description hasn't been translated yet, it cleanly displays the original English text without breaking page layout or throwing errors.
- Self-Hosted & Privacy-Compliant: All assets (flag icons, script bundles) are hosted locally on your site — no third-party CDN tracking, making it fully GDPR-compliant.
- Installation Progress Dialog: When installing a module directly through the Project Browser, the standard loading throbber is replaced with a detailed step-by-step progress dialog showing the background activities (composer require, applying changes, cleaning up temporary files, etc.).
Installation & Setup
Step 1 — Install the module
No Composer patches or custom configurations are required. Simply run the following commands in your terminal:
composer require 'drupal/pb_localizer:^3.0'
drush pm:enable --yes pb_localizer
Upon enabling, the module automatically overrides the Project Browser endpoint to prevent multilingual cache collisions and syncs category translations for all installed non-English languages.
Upgrade Note: If you are upgrading from an older version and have cweagans/composer-patches or extra patches configured for project_browser in your composer.json, these are no longer needed and can be safely removed.
Step 2 — Start browsing
The module does not create a new tab or require manual activation. Simply switch your site's administration language (e.g., German or French) and navigate to:
Extend → Browse Modules (/admin/modules/browse)
Tip: Translated modules will instantly display flag badges, localized text, and translated category filters.
Configuration Options
You can manage settings under Configuration → Web services → Project Browser Localizer Settings (/admin/config/services/pb-localizer):
- Show translation badge: Toggles the display of flag icon badges on translated project cards.
- Server Type:
- Default server (Recommended): Automatically connects to the official community Translation Hub. Works out-of-the-box with zero configuration required.
- Local server: Disables all network requests and relies solely on translation files stored on your local web server (ideal for intranets or offline environments).
- Custom remote server: Allows organizations to point to their own self-hosted Translation Hub instance.
- Developer Options: Allows site builders or translators to preview pending/unapproved translations or enter a debug API key.
- Category Translations: Includes a "Sync category translations now" button to immediately update category filter names.
Frequently Asked Questions & Troubleshooting
Why are some modules still displayed in English?
Translations are provided by the community and pass through a human review process before reaching end users. If a module has no translation yet or if a translation is pending review, it gracefully defaults to the original English text.
Is my site sending private data to external servers?
No. The module only receives translation content from the Translation Hub or drupal.org. No tracking, site metrics, or personal data are sent out.
What happens if the Translation Hub is temporarily unavailable?
The module includes an automatic circuit breaker. If the hub is offline, pages load instantly at standard speed using local files or English fallbacks. Network checks automatically resume once the hub is back online.
What happens if I uninstall the module?
Your Project Browser immediately reverts back to standard stock behavior (fetching raw English data directly from drupal.org). No permanent changes are made to your website or database.
Help improve this page
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion