211
submitted 3 months ago* (last edited 3 months ago) by Xylight@lemm.ee to c/lemmyapps@lemmy.world

This is applicable to almost any piece of software with text in it. When starting your new app, you should make sure you are using a separate language file for the strings in your app. This makes text reusable, and you can change it all in one place.

Once your app gains a community, if you did this, you can also get translators!

With Photon i made the massive mistake of hardcoding everything up until the app became massive, and my PR for un-hardcoding all the strings looks like this:

The amount of lines modified in the GitHub PR. 2,067 lines added, 1,082 removed.

It was worth it though! Because the community has translated it into 11 languages!

you are viewing a single comment's thread
view the rest of the comments
[-] morrowind@lemmy.ml 5 points 3 months ago* (last edited 3 months ago)

Is it really more effort to just extract relevant strings later, rather than worrying about it the whole time? Asking beyond lemmy apps too.

[-] calamitycastle@lemmy.world 7 points 3 months ago

Once you have this set up, you won't worry about it again. It will just become "the way it is done". And it's just the correct way to build software IMHO, even if you have no plans right now to offer multiple languages.

[-] Xylight@lemm.ee 4 points 3 months ago

Extrapolation takes quite a while, and there are other benefits to having a language file, like reusability.

[-] jimmy90@lemmy.world 2 points 3 months ago

for things like translation it is obviously required, but it will be ongoing as the app changes over the years

so it's just about realising that text in the UI is just another kind of content that has to be managed so there will need to be infrastructure and process to make that easier

this post was submitted on 11 Aug 2024
211 points (97.7% liked)

Lemmy Apps

4992 readers
5 users here now

A home for discussion of Lemmy apps and tools for all platforms.

RULES:


An extensive list of Lemmy apps is available here:

LemmyApps.com

or lemmyapps.netlify.app


Visit our partner Communities!

Lemmy Plugins and Userscripts is a great place to enhance the Lemmy browsing experience. !plugins@sh.itjust.works

Lemmy Integrations is a community about all integrations with the lemmy API. Bots, Scripts, New Apps, etc. !lemmy_integrations@lemmy.dbzer0.com

Lemmy Bots and Tools is a place to discuss and show off bots, tools, front ends, etc. you’re making that relate to lemmy. !lemmy_dev@programming.dev

Lemmy App Development is a place for Lemmy builders to chat about building apps, clients, tools and bots for the Lemmy platform. !lemmydev@lemm.ee

founded 1 year ago
MODERATORS