Faut-il créer votre propre Loco ?
Gestion hébergée des traductions de chaînes d'application : un éditeur web pour les clés et les langues, avec export vers les dizaines de formats de fichiers réellement attendus par les plateformes.
Le cœur de Loco est un stockage de chaînes par clé, surmonté d'une matrice de langues, et cette partie se construit vraiment en une session : SQLite, une vue en tableau, un import et un export. Ce qui dévore le week-end, c'est la couche de formats, car gettext PO avec ses en-têtes de pluriel, les fichiers Apple .strings et .stringsdict, le XML plurals d'Android, les messages ICU et le JSON à plat divergent tous sur les pluriels et l'échappement, d'une manière qui ne se révèle qu'en production. Le remplissage par traduction automatique tient en un appel API si vous avez déjà une clé DeepL ou celle d'un autre fournisseur. Si vous êtes le seul traducteur, une réalisation locale convient très bien et peut même être plus rapide à utiliser. Si vous envoyez des liens à des traducteurs indépendants et dépendez de l'API hébergée en CI, vous reconstruisez un service, pas un outil.
EN → FRAnalyse traduite automatiquement de l’anglais. Prompt original conservé en anglais.
Build a local translation management app called Strings. No accounts, no cloud, no telemetry.
Stack, non negotiable:
- Node 20 with Express and TypeScript
- SQLite via better-sqlite3, file at ./data/strings.db
- Server rendered EJS templates plus a little vanilla JS, no React, no bundler
- Runs with `npm run dev` on localhost:4321
Data model:
- projects: id, name, source_locale
- locales: id, project_id, code (BCP 47)
- keys: id, project_id, name (dot notation allowed), context note, created_at
- translations: key_id, locale_id, plural_category (one of other, one, two, few, many, zero), value, updated_at
- history: translation_id, old_value, new_value, changed_at
UI:
- Project list, then a grid page per project: rows are keys, columns are locales, cells are inline editable textareas that save on blur via fetch
- Filters: untranslated only, search by key or value substring
- Per key detail drawer showing context note, plural forms, and history
- Progress bar per locale showing percent of keys with a non empty value
Import and export, implement exactly these three formats and be strict:
- Flat and nested JSON
- gettext PO, including Plural-Forms header parsing and msgid_plural
- Android strings.xml, including plurals blocks with quantity attributes
Use the CLDR plural categories for each locale code; hardcode a small lookup table for the twenty most common locales and fall back to other plus one.
Also ship a CLI: `npm run export -- --project=X --locale=fr --format=po --out=./out` so a build script can use it.
Optional machine translation: if DEEPL_API_KEY is set in .env, add a "fill empty cells" button per locale that batches untranslated source strings through DeepL and marks results as machine translated with a flag shown in the grid. If the key is missing, hide the button rather than erroring.
Out of scope: multi user auth, sharing links, webhooks, screenshots, glossary, TMX.
Include a README with setup, a `.env.example`, and seed data for one project with English, French and Polish so plural handling is exercised on day one.Le prompt s’ouvre prérempli dans votre agent. Relisez-le avant de l’exécuter. · ce prompt est généré à partir du plan de construction · améliorez-le via une PR
Comment créer votre propre version ?
Une application web locale qui stocke les clés de traduction par projet, affiche une grille modifiable des langues par clé, importe et exporte JSON, PO et XML Android, et traduit automatiquement les cellules vides en option.
Ce dont vous aurez besoin
- Node 20 et un dossier local pour l'exécution
- Clé API de traduction automatique facultative (DeepL ou similaire) dans .env
- Vos fichiers de langue existants à importer comme point de départ
Parce que la localisation est un amas de cas particuliers que quelqu'un d'autre a déjà digérés. Les catégories de pluriel varient selon la langue, chaque plateforme échappe les chaînes différemment, et un mauvais export livre aux utilisateurs du texte abîmé dans une langue que personne dans l'équipe ne lit. Payer vous donne aussi un lien à envoyer à un prestataire et une API à appeler lors de la compilation, ce qu'un dossier sur votre ordinateur portable ne peut pas faire. Les développeurs seuls avec deux ou trois langues tendent à avoir de moins en moins besoin de cela, plutôt que de plus en plus.
xLa diversité des formats : Loco lit et écrit une multitude de formats, y compris les formats délicats d'Apple et Qt, avec des règles de pluriel déjà correctes pour chaque langue
xUn éditeur partageable pour les traducteurs non techniques, avec rôles, commentaires et suivi de progression
xUne API publique et une CLI stables que les pipelines CI peuvent interroger lors de la compilation
xL'historique des traductions, qui a modifié quoi, et la possibilité de restaurer une version antérieure d'une chaîne
xLes suggestions de glossaire et de mémoire de traduction qui s'améliorent à mesure que le projet grandit
Rien qui mérite d’être cité. C’est pour cela que le prompt existe.
Combien coûte Loco ?
- Facturation mensuelle
- 5,95 $US/mois5,95 $US/mois
- Par an
- 71,40 $US/an71,40 $US/an
- Avec une carte brésilienne, IOF de 3,5% inclus
- 31,09 R$/mois373 R$/an
Enregistré dans Ma liste. Un avis s’affichera ici si le prix change.
Vous finalisez l’achat sur le site de Loco. Vibe Radar ne gère aucun paiement.
Construire ou s’abonner à Loco ?
Ajustez les chiffres : heures de développement, taux horaire, coûts d’exploitation et prix de l’abonnement.
Sur 24 mois, l’abonnement coûte moins cher.
Heures estimées d’après l’analyse (un week-end). Ne chiffre pas ce que vous perdez (support, intégrations, sécurité).
Puis-je recréer Loco ?
En partie. Le cœur de Loco se construit en un week-end avec le prompt de cette page, mais il reste de vraies lacunes : La diversité des formats : Loco lit et écrit une multitude de formats, y compris les formats délicats d'Apple et Qt, avec des règles de pluriel déjà correctes pour chaque langue, Un éditeur partageable pour les traducteurs non techniques, avec rôles, commentaires et suivi de progression. Lisez la liste ci-dessus avant de vous lancer.
Combien coûte Loco ?
Loco coûte environ 5,95 $US/mois (Pro, vérifié le 20/10/2026), soit 71,40 $US par an.
Que perd-on en remplaçant Loco ?
Honnêtement : La diversité des formats : Loco lit et écrit une multitude de formats, y compris les formats délicats d'Apple et Qt, avec des règles de pluriel déjà correctes pour chaque langue; Un éditeur partageable pour les traducteurs non techniques, avec rôles, commentaires et suivi de progression; Une API publique et une CLI stables que les pipelines CI peuvent interroger lors de la compilation; L'historique des traductions, qui a modifié quoi, et la possibilité de restaurer une version antérieure d'une chaîne; Les suggestions de glossaire et de mémoire de traduction qui s'améliorent à mesure que le projet grandit. Si l’un de ces points compte pour vous, continuez à payer.
Existe-t-il une alternative open source à Loco ?
Aucune alternative open source mature à recommander, et c’est précisément pour cela que le prompt de cette page existe.