Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Transliterate

Transliterate Laravel Package

elforastero/transliterate

elforastero/transliterate is a Laravel package for converting Cyrillic text into Latin characters. It provides a simple helper and facade, configurable transliteration maps, and seamless integration for generating readable slugs, filenames, and search-friendly strings.

View on GitHub
Deep Wiki
Context7

Транслитерация для Laravel

Frequently asked questions about Transliterate
How do I install elforastero/transliterate in a Laravel application?
Install it with Composer using composer require elforastero/transliterate, then confirm that Laravel package discovery registers the service provider and facade. Because the package has low adoption and a low overall score, review the composer.json constraints and run a short spike on your target Laravel and PHP versions before relying on it. Publish the config file if you need to customize the transliteration map, and commit your lockfile to pin the version.
Which Laravel and PHP versions does elforastero/transliterate support?
The package's compatibility matrix is not clearly documented, so treat supported Laravel and PHP versions as unverified until you check its composer.json constraints. Validate on both the oldest and newest Laravel and PHP combinations in your support window inside a feature branch. Run your application test suite plus a golden-dataset transliteration test to confirm behavior before adopting it.
How do I transliterate Cyrillic text to Latin with the helper or facade?
The package exposes a simple helper and a facade for converting Cyrillic strings to Latin characters, which makes it convenient for generating readable slugs, filenames, and search-friendly strings. Wrap the calls behind an internal interface such as a TransliterationService so controllers, models, and jobs do not depend directly on the package API. That adapter also gives you a clean seam to swap in native Laravel helpers or another library later.
Can I customize the transliteration map or add my own character mappings?
The package ships with configurable transliteration maps, and you can typically adjust them by publishing its config file and editing the mappings. Test any custom map against a representative dataset of Russian text, including mixed-script and edge-case input, because Russian-only documentation may not describe every option. Keep your customized config in version control and document the expected outputs internally.
Does elforastero/transliterate handle mixed Cyrillic and Latin text, punctuation, emoji, and whitespace predictably?
Handling of mixed scripts, punctuation, emoji, casing, whitespace, and configurable separators is not clearly documented, so you should not assume predictable output. Build a golden-dataset test that runs representative inputs through the package and asserts the exact strings you expect. If results are inconsistent, normalize input first or choose a more established option such as voku/portable-ascii or cocur/slugify.
Is elforastero/transliterate a replacement for Laravel's Str::slug() and Str::ascii()?
Not necessarily. Start with a native-first spike and run Str::slug() and Str::ascii() against a representative Russian dataset before adding a dependency. Adopt elforastero/transliterate only if it materially improves correctness for your data or removes meaningful custom code. Many Laravel applications can handle basic Cyrillic slugging with the built-in helpers plus a small mapping.
Does elforastero/transliterate guarantee unique slugs or handle collisions?
No. Transliteration only converts characters; it does not guarantee uniqueness, and slug-collision handling remains the application's responsibility. Keep domain rules such as uniqueness, reserved words, and URL policy outside the package, typically in your model or a dedicated slug service. Monitor collisions after rollout and add suffixes or aliases where needed.
What are the alternatives to elforastero/transliterate for Cyrillic to Latin conversion?
The main alternatives are Laravel's native Str::slug() and Str::ascii(), the established voku/portable-ascii library, and cocur/slugify. Run a comparison spike that pushes the same Russian dataset, including edge cases and bulk inputs, through each option and compare correctness and maintenance overhead. Choose the smallest, best-maintained tool that satisfies your acceptance criteria, and still wrap it behind an internal adapter.
Is elforastero/transliterate safe to use for filenames, paths, or user-generated identifiers?
Transliteration is not sanitization, so do not use this package as a security control for filenames, paths, or user-generated identifiers. Treat its output as display or search-friendly text and still apply strict validation, path-traversal checks, and allowlists where the value touches the filesystem or routing. Review any use involving personal names, official documents, or public URLs with product and legal stakeholders.
Is elforastero/transliterate actively maintained, and is the Russian-only documentation a problem?
The last release is recent, but adoption is thin at roughly 56 stars and the documentation is primarily in Russian, so treat it as a monitored dependency rather than a strategic platform choice. Assign an internal owner to watch releases, PHP and Laravel compatibility, and abandonment signals, and expect limited external support. Keep your own runbooks and expected-output fixtures, and reassess the package at each Laravel upgrade.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core