Forem Creators and Builders

Ben Halpern
Ben Halpern

Posted on • Updated on

Forem: Open for Internationalization

Hey folks, we recently shipped some initial code to make it possible to translate Forem... And if anyone wants to contribute, they are welcome.

I made a post on DEV about this in more detail...

We are not yet ready to start accepting many different translations, but we are ready to insert more translatable elements into the code. Check out my post if you want to dig into the code and look for places which can be translated. 😄

Please expect this to happen gradually, but eventually many languages will be supported for the Forem display.

Discussion (14)

Collapse
varhal profile image
Varhal

This is awesome. Tell me, will there be support for international url articles and tags?

Collapse
ben profile image
Ben Halpern Author

I believe some or all of this flexibility has already been implemented.

#テストタグ

Collapse
ben profile image
Ben Halpern Author

(I created that test tag just to see for myself 🤪)

Collapse
varhal profile image
Varhal

I create test post, but url not supported russian language:
Alt Text

Thread Thread
varhal profile image
Varhal

@ben

Do you plan to fix this? ty

Thread Thread
djuber profile image
Daniel Uber

I think this is the same problem described here - any non ascii characters (including all Russian words) are omitted when generating url slugs for posts.

A few suggestions were using punycode (via the addressable library, replacing non-ascii text with an encoded representation) or using the unicode escapes to produce ascii urls, the way wikipedia does, with a url like ru.wikipedia.org/wiki/%D0%97%D0%B0... which displays fine in the browser but could seem a little ungainly when written in ascii.

Thread Thread
jamie profile image
Jamie Gaskins

@djuber The slug exists for SEO reasons. Going by this table, I'm not sure Punycode would help achieve that goal:

Punycode table from the linked Wikipedia page

@ben @varhal According to the URI spec, URIs can only contain 7-bit ASCII characters. The application strips all non-ASCII characters to avoid %-encoding them as bytes, which would make the URL 2-4x as long and impossible to read, while (from what I can tell) also not contributing to SEO.

As @varhal mentioned elsewhere in this thread, transliteration to Roman characters is a good idea. We might be able to achieve that through this library.

Thread Thread
varhal profile image
Varhal • Edited

I support this idea. I hope the developers will listen to it 👍. @ben what do you think about it?

Thread Thread
jamie profile image
Jamie Gaskins

@varhal Can you check out this PR?

Thread Thread
varhal profile image
Varhal • Edited

Yes, that's what I need.. thanks

Collapse
varhal profile image
Varhal

I think Russian url should transliterate to forem.dev/varhal/patterny-dizayna-...

Collapse
alvaromontoro profile image
Alvaro Montoro

This is great. I'd be happy to help with Spanish.

Collapse
citizen428 profile image
Michael Kohl

Thanks a lot for the offer! We're currently at a stage where we want to get English and French right before we start adding more languages but Spanish is definitely one of the languages we're interested in supporting sooner rather than later.

Collapse
maartengoddijn profile image
Maarten Goddijn

I know you're saying you're not at that point yet, but if you are ever looking for someone help to translate Dutch, please think of me. If I can spare the time i'll be happy to help!