Is your feature request related to a problem? Please describe.
Managing email aliases (identities) in Nextcloud Mail can be improved with two lightweight UX enhancements:
- Alphabetical & Domain-grouped Sorting: Currently, email aliases are shown in the composer dropdown in the order they were created. For users with multiple aliases (often across different domains/hosts), this list becomes unorganized. I propose sorting the aliases first by domain (host) and then alphabetically by the local part (username). This naturally groups aliases belonging to the same domain together and keeps them structured.
- Quick-Add from Message Header: When using catch-all/wildcard domains, users frequently receive emails on new addresses that they want to reply from. To do this currently, they must navigate to
Account Settings -> Aliases -> Add alias and manually copy-paste the address.
Describe the solution you'd like
I propose adding two lightweight enhancements:
- Structured Sorting: Automatically sort the alias list: first by domain/host (grouping them together), and then alphabetically by the username part. This can be handled entirely in the frontend dropdown or during the API fetch.
- "Register as Alias" Shortcut: Add a quick action button next to the recipient/sender address in the message detail view. Clicking it will trigger the existing "Add Alias" API with the selected email pre-filled, registering it as a new identity for the active account.
Describe alternatives you've considered
-
Managing aliases via a configuration file (e.g. config.php or a text file):
While this would avoid UI modifications, it requires server-side filesystem access. This is impossible for non-admin users (especially on managed hosting) and breaks Nextcloud's multi-user architecture, where each user must manage their own identities.
-
Manual Drag-and-Drop Reordering:
I considered implementing a full drag-and-drop interface to allow custom sorting. However, this would require persisting a custom order index, necessitating a database schema migration (e.g., adding a sorting column to the mail_aliases table). To keep the implementation footprint lightweight, sorting by domain and username is a much cleaner, zero-migration solution.
-
Manual Copy-Paste (Status Quo):
Leaving it as is requires the user to open settings, find the alias section, copy-paste the address, and save. This disrupts the communication workflow.
Additional context
I would like to implement this and submit a Pull Request. Since these changes are purely frontend/controller-based and require no database migrations, the implementation footprint will be very light.
Would the maintainers be open to accepting a PR with this scope?
Is your feature request related to a problem? Please describe.
Managing email aliases (identities) in Nextcloud Mail can be improved with two lightweight UX enhancements:
Account Settings -> Aliases -> Add aliasand manually copy-paste the address.Describe the solution you'd like
I propose adding two lightweight enhancements:
Describe alternatives you've considered
Managing aliases via a configuration file (e.g. config.php or a text file):
While this would avoid UI modifications, it requires server-side filesystem access. This is impossible for non-admin users (especially on managed hosting) and breaks Nextcloud's multi-user architecture, where each user must manage their own identities.
Manual Drag-and-Drop Reordering:
I considered implementing a full drag-and-drop interface to allow custom sorting. However, this would require persisting a custom order index, necessitating a database schema migration (e.g., adding a sorting column to the
mail_aliasestable). To keep the implementation footprint lightweight, sorting by domain and username is a much cleaner, zero-migration solution.Manual Copy-Paste (Status Quo):
Leaving it as is requires the user to open settings, find the alias section, copy-paste the address, and save. This disrupts the communication workflow.
Additional context
I would like to implement this and submit a Pull Request. Since these changes are purely frontend/controller-based and require no database migrations, the implementation footprint will be very light.
Would the maintainers be open to accepting a PR with this scope?