DEV Community

Cover image for Forem Hacktoberfest: Let’s Internationalize!

Forem Hacktoberfest: Let’s Internationalize!

Ben Halpern on October 01, 2021

We recently shipped the groundwork for internationalizing Forem. Initially, this means that admins can set the default locale for their Forem in ca...
Collapse
 
ben profile image
Ben Halpern

Here is a live PR example I just tossed up — different from what I walked through in the post. That is still up for grabs at the time of writing this.

Translate notification filters #14884

What type of PR is this? (check all applicable)

  • [ ] Refactor
  • [x] Feature
  • [ ] Bug Fix
  • [ ] Optimization
  • [ ] Documentation Update

Description

This follows existing patterns of internationalization to translate the filters on the notifications page.

The only added translation is "All".

The use of pluralization is following existing patterns. This may not be the most scalable as we broaden translations, but I think appropriate for now.

Related Tickets & Documents

dev.to/devteam/forem-hacktoberfest...

QA Instructions, Screenshots, Recordings

Screen Shot 2021-10-01 at 1 25 38 PM

Added/updated tests?

  • [ ] Yes
  • [x] No, and this is why: I think existing regression tests should suffice
  • [ ] I need help with writing tests
Collapse
 
metamoni profile image
Monica Mateiu

Great initiative! We recently wrapped up a massive internationalization project at my work, and I'd love to contribute to translating DEV ❤️ I was wondering: do you have any rules around structuring your yml files? We broke our tokens up into flows/areas of the app, and we had a strict rule around not having too many nested levels (no more than 3), to keep things clean and easy to read. Have you thought about any rules for that?

Collapse
 
ben profile image
Ben Halpern

We have not yet strictly defined these rules or properly had the discussion yet internally, but I anticipate us landing on these types of rules. For the time being, use your judgment and influence us towards a good decision with good clean PRs — which I see you are already doing.

Once we make some choices here, I think we should comment the rules and principles right in the locale files to complement the docs and keep people informed as anything changes. So keep checking in, and your contributions are very much welcome!

Collapse
 
hasobi profile image
Hasobi

Hey Ben! this is quite interesting, i'd love to contribute to translating DEV to Indonesian! do you think it's possible?

Collapse
 
ben profile image
Ben Halpern

Once we get more of the variables in place we’ll start accepting specific languages. So please start by finding some hard coded English and change it to an i18n variable.

Collapse
 
hasobi profile image
Hasobi

Thank you! i'll look up to the code!

Thread Thread
 
gizipp profile image
Gilang

Hi @hasobi let's get in touch. I also thinking to contribute on Indonesian support lang after some backbone of I18n.

Do you have Rails experience?

Collapse
 
glaucia86 profile image
Glaucia Lemos

Yay! Awesome Ben! I'll be helping to translating into Portuguese! Forking as soon as possible to help it out!

Collapse
 
ben profile image
Ben Halpern

Awesome! Portuguese translations will be very helpful!

At this very moment we're mostly looking for contributions which uncover un-translated templates and remove hardcoded copy with variables, but we will very soon graduate to wanting to expand language lists.

Collapse
 
glaucia86 profile image
Glaucia Lemos

My intentation it was to schedule a call meeting with you to see a good way how can I help you to translate dev.to website to Portuguese and make good engagements here in Brazil. If you want to, reach me out here or twitter: @glaucia86 (I work as Cloud Advocate at Microsoft)

Collapse
 
alex_divi90 profile image
Alex Divi

Hello ben,

I'm Ready to volunteer as translator.
I'm native arabic speaker and i can spare sometime during the day to translate forem.
Please share with me the link to your weblate or any other service and i can start from tomorrow.
Meanwhile can please also tell me if the RTL is supported through the current status?

Collapse
 
sherrydays profile image
Sherry Day

Can't wait!

Collapse
 
ajmas profile image
Andre-John Mas

What’s the current status of the i18n work and what’s still on the i18n roadmap?