Routex v1.3.0 Changelog: Development Experience Improvements
Now with Igniter installer for super simple setup!
Routex 1.3 focuses once again heavily on improving the developer experience (DX), making installation smoother, configuration clearer, and debugging easier, particularly for projects using internationalization (i18n).
This release makes Routex an even more seamless and robust solution for handling advanced routing features, especially localization, within the Phoenix ecosystem.
Quick Setup with routex.install
- Simplified Installation
The newmix routex.installtask, powered by the optionalIgniterdependency, significantly automates the initial setup process.- This eliminates the need for manual file editing, speeding up the integration of Routex into new or existing Phoenix projects. The usage guide has been updated accordingly.
- The task performs configuration steps like setting up aliases and including common Routex extensions.
Special thanks to @ken-kost for the initial routex.install commit; not to forget @zachdaniel for Igniter itself. Community support is highly appreciated.
Clearer Error Messaging
-
Actionable Error Reports: Routex 1.3 features improved error messaging. Errors related to route compilation or configuration are now more descriptive, guiding developers to the exact issue and making troubleshooting much faster.
-
Refined Fallbacks: A few fallbacks have been added in order to print helpful error messages when a configuration error is detected. This was mostly notable when developers were in the mid of following the usage guide or disabled extensions while forgetting to remove code modifications.
New Utilities
A new helper function to set the branch in the process dictionary. This can be used as dispatch target and once set will be used by verified Routes.
dispatch_targets: [{Routex.Utils, :process_put_branch, [[:attrs, :__branch__]]}]
This can be used to avoid property drilling of the @url assignment for Verified Routes in components. However it is still advised not to use it and keep things immutable. Simply pass down the @url assignment to components using Verified Routes.
New Callback
The create_shared_helpers/3 callback is called in the last stage. It differs from create_helpers/3 as it is called only once per extension with routes combined of all backends using the extension.
Improved i18n/l10n Detection
- Smarter Gettext Detection: The process for detecting localization backens has been improved. As a result Routex got rid of a macro.
Other
- Support for using Verified Routes based on @url assignment
Upcoming: A new Example App
A new example app is (slowly) build to demonstrate Routexโ features better. The current one does not show much.























