Multilingual site

Hi!

I have looked for this topic and could not find it.
I would like to create a multilingual site, and many ideas come to my mind (i.e. separated instances, using tags, using folders…).
Has anybody tried this before? Any suggestions? My idea is to translate my pages automatically using a AI, for example. This can be automated or by hand… :slight_smile:

Any advice is welcome.

I was recently thinking about this in the context of a regular web page, and came to the conclusion that root folders are the most appropriate for translated content. I mean:

https://www.example.com/en/Main page
https://www.example.com/pl/Strona główna

If you have one primary language that is clearly dominant, you could omit the language prefix for it (i.e. https://www.example.com/Main page).

Regarding the different URLs for the same page, I would rather them be cross-linked than have things like /pl/main-page but that’s a matter of taste. Also conveniently for this approach, SilverBullet does not show the full path of linked pages, so [[pl/Przykład]] would still show up as Przykład in text.

Against tags: I would use them for many-to-many relation, and a given piece of prose (not #meta pages) is only one spoken language.

Against separate instances: This feels appropriate if the different languages correspond to different content, since I’d say that they feel “farther” than folders.

https://en.example.com/Main page
https://pl.example.com/Strona główna

Possibly the biggest example is Wikipedia, which is not simply translated to different languages, but consists of “342 active Wikipedias”, that each have their own communities, rules etc. I would use subdomains for example if I had a store that had different stock for Europe and US.

On the other hand, my browser doesn’t highlight the subdomain, so maybe it’s only my perception that thinks it’s important:
image

There is also the option of having different TLDs:

https://www.example.com/Main page
https://www.example.pl/Strona główna

Apart from practical problems of maintaining multiple domain names, I think there is nothing to communicate that the two domains are the same entity, so I’d rather see my first solution and redirections like example.pl/ => example.com/pl/.


One specific feature of SilverBullet that may be relevant here is the possibility to reference other pages in Frontmatter. While they aren’t clickable (yet?), it could help you organize, especially if you plan to use automated tooling. They will also show in Linked Mentions this way, without putting them into the page text itself.

---
translations:
  pl: "[[Strona główna]]"
  pt: "[[Página inicial]]"
---
2 Likes

Thanks for your insights, @Maarrk

I think I’ll proceed this way to.
If I manage to automate this using something like an LLM, perhaps I could create a plug (once I learn it) so the translation happens in the background.