First Class i18n Support - Multiple Language Support for a Single Form
So it would be great for single forms to be able to have multiple translation variations.
Probably the cleanest way would be using i18n strings.
Ideally we'd be able to specify the language tags ourselves, as it can be different per implementation e.g. en-US, en-UK, pt-PT, pt-BR etc. which is the ISO standard afaik. But some prefer to use e.g. just 'en' for US english, 'br' for Brazilian Portuguese.
You could potentially make use of this:
https://github.com/txty-io/texterify
It has transitioned from a BSL to Apache v2 license. I've used their managed solution for years and it's been great.
There is also inlang/opral:
https://github.com/opral/monorepo/tree/main/inlang
I only use paraglide from inlang/opral and it's quite nice for the front end, but not sure about their string management solution as I have not tried that.
We'd need to be able to send the language tag to the form, particularly for embedded ones, to ensure it's possible to make sure the correct language can be loaded matching the currently used language on the site it is embedded on.
Could perhaps have a json file that is downloadable for the primary language as well as uploading the translated versions. Could also potentially allow editing the strings inside the web panel and machine translations also.
E.g. opnform.com/forms/uuid/en-US could use the en-US.json file, opnform.com/forms/uuid/pt-BR could use the pt-BR.json file etc.
This would also allow using languages that aren't officially supported yet also, so we could provide our own translations for all form fields, success/error messages etc.
Alternatively, it could be limited to languages officially supported. In that case, the translations would only need to cover the user modified parts. Just ideally would still use a url structure like above so it follows standards and all user cases could be covered.
Log in to comment and vote
Comments3
Archie
Feb 27, 2025
Hi There,
Thank you fro sharing this feedback. We might be able to consider this in our future updates.
Best,
form_enthusiast
Feb 14, 2025
Something to take into account, is there are many variations of languages. Some notable examples that vary fairly significantly from the native language (fr-FR, pt-PT etc.) for example:
pt-BR
de-CH
nl-BE
fr-CA
es-MX
es-AR
it-CH
ar-EG
ar-LB
zh-CN
zh-TW
zh-HK
So it can be an issue using short tags like ‘en’ as it’s not standardised. Using the country code can sort of work, but then there are countries that have multiple official languages that are used by a significant amount of their population. So imo sticking with the ISO standard is ideal.
form_enthusiast
Feb 14, 2025
Minor correction: The en-UK example, it should be en-GB - often forget that haha.