docs(design): add UX writing guide for user-facing strings#14962
Conversation
Adds a new writing.rst page to developer_manual/design/ covering tone, message brevity, the "successfully" anti-pattern, button label conventions, and variable/placeholder gotchas for translators. Linked from design/index.rst toctree. Relates to #13884 Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
|
/backport to stable34 |
|
/backport to stable33 |
|
/backport to stable32 |
📖 Documentation Preview📄 3 changed documentation pagesLast updated: Thu, 21 May 2026 10:44:03 GMT |
Explains when and how to write TRANSLATORS comments in PHP, JS/TS, Vue templates, and Vue script blocks, with examples from the server codebase. Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
…ations ref Move code examples for TRANSLATORS comments to basics/translations.rst (the implementation reference) and keep only prose guidelines in design/writing.rst. Cross-link both directions so neither page duplicates the other. - writing.rst: strip code blocks from Translator comments and Placeholders sections; add cross-refs to translations.rst - translations.rst: improve PHP/JS/Vue TRANSLATORS examples (Vue template uses <!-- --> above element, add multi-line PHP pattern); add ref label improving-translations for cross-linking Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
|
A bit of duplicates infos, adjusting ⏳ EDIT: done 👍 |
jancborchardt
left a comment
There was a problem hiding this comment.
Sounds good!
I would only add that we should prevent excessive notification sending for successful actions which are obviously communicated in the interface (e.g. "Added as favorite") – but that's not a blocker, and might be better placed in the design guidelines.
Also @nimishavijay for review as she is updating the design guidelines at the moment.
|
Will wait for Nimisha's input |
that looks less like a writing issue, but more like a UX problem that needs another section somewhere :) |
nimishavijay
left a comment
There was a problem hiding this comment.
Really really nice, covers a lot of bases! I will then remove the writing section from my design guidelines! Suggested some things to add so that we are not losing anything from the existing guidelines :)
- Add Nextcloud naming rule (capital N, lowercase c, no NextCloud/Nc) - Add "never all uppercase" to sentence case rule with SHARE example - Add names, pronouns, and gender section (full names, avoid my/your, gender-neutral language with link to international guide) - Move destructive actions note above the button labels table Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
|
Done @nimishavijay !! |
jancborchardt
left a comment
There was a problem hiding this comment.
I will then remove the writing section from my design guidelines!
@nimishavijay probably best to cross-link though, so it's clear where it went. Also we need to keep it for the DESIGN.md
@rakekniven avoid doing rebases if there are no conflicts please, we already have a pretty high CI usage 🙏 |
Sorry, I didn't mean to do that. I clicked too quickly in the web interface. |
|
All good eheh 🤗 |

☑️ Resolves
Summary
Adds
developer_manual/design/writing.rst— a practical guide for developers on how to write user-facing strings (notifications, errors, button labels, etc.).Covers:
Nextcloud— capital N, lowercase c; neverNextCloudorNctranslations.rstfor implementation detailsAdded to
design/index.rsttoctree afterintroduction.🖼️ Screenshots
✅ Checklist
codespellor similar and addressed any spelling issues