[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"footer-homepage":3,"footer-settings":84,"main-navigation":220,"footer-integrations":903,"blog-post-nav-[USE LATEST FEATURED]":1814,"blog-post-nav-nav":1839,"features-cli":1851,"faq-embed:\u002Ffeatures\u002Fcli:::84|199|417|419|420|313|286|116|529|530|531|532":4856},{"status":4,"header_badges":5,"footer_badges":27,"footer_secured_badges":34,"slider_badges":48},"published",[6,15,21],{"id":7,"status":4,"sort":8,"link":9,"title":10,"badgeType":11,"badgeName":12,"metadata":8,"image":13},1,null,"https:\u002F\u002Fwww.g2.com\u002Fproducts\u002Flocalazy\u002Freviews","Best meets requirements","Other","G2-winter-24-best-meets-requirments",{"id":14},"8d5dd6fd-6995-4c92-8219-a6ed5ba6acdc",{"id":16,"status":4,"sort":8,"link":9,"title":17,"badgeType":11,"badgeName":18,"metadata":8,"image":19},2,"Best support","G2-winter-24-best-support",{"id":20},"e59dd465-84d9-45c7-987d-dd4048fd6992",{"id":22,"status":4,"sort":8,"link":9,"title":23,"badgeType":11,"badgeName":24,"metadata":8,"image":25},3,"Easiest admin","G2-winter-24-easiest-admin",{"id":26},"5f12c4c8-bec0-47cf-87b4-a4502e9f1bd2",[28],{"id":29,"status":4,"sort":8,"link":9,"title":30,"badgeType":11,"badgeName":31,"metadata":8,"image":32},12,"Users love us","Users love us 25",{"id":33},"232416a5-86ba-4be6-85a5-b88802003d53",[35,42],{"id":36,"status":4,"sort":8,"link":37,"title":38,"badgeType":11,"badgeName":39,"metadata":8,"image":40},11,"https:\u002F\u002Fsprinto.com\u002Fget-iso-27001\u002F","Sprinto ISO 27001","Sprinto ISO 27001 certificate",{"id":41},"c1c6c06c-6caf-4b78-8a7e-9606c395eb61",{"id":43,"status":4,"sort":8,"link":44,"title":45,"badgeType":11,"badgeName":45,"metadata":8,"image":46},13,"https:\u002F\u002Fwww.aicpa.org\u002Fsoc4so","SOC certificate",{"id":47},"4f4bc0a6-09a0-41df-8295-8f990d96d941",[49,56,61,66,71,76,82],{"id":50,"status":4,"sort":8,"link":9,"title":51,"badgeType":11,"badgeName":52,"metadata":53,"image":54},5,"Most likely to recommend","a","",{"id":55},"da055731-3f11-4fc7-96f2-c11c0b84c831",{"id":57,"status":4,"sort":8,"link":9,"title":58,"badgeType":11,"badgeName":8,"metadata":8,"image":59},6,"EMEA High Performer",{"id":60},"586fb488-81f2-41db-a4e8-ef309e50c0e6",{"id":62,"status":4,"sort":8,"link":9,"title":63,"badgeType":11,"badgeName":8,"metadata":8,"image":64},7,"Ease of Doing Business With",{"id":65},"bfa26865-430e-463d-9886-cb56a8a8ecf6",{"id":67,"status":4,"sort":8,"link":9,"title":68,"badgeType":11,"badgeName":8,"metadata":8,"image":69},8,"High Performer",{"id":70},"2cc1ba0f-c23a-4c97-ad4a-a655c97466fe",{"id":72,"status":4,"sort":8,"link":9,"title":73,"badgeType":11,"badgeName":8,"metadata":8,"image":74},9,"Fastest Implementation",{"id":75},"6f297758-1c95-45f4-a6e9-528319897132",{"id":77,"status":4,"sort":8,"link":78,"title":79,"badgeType":11,"badgeName":8,"metadata":8,"image":80},10,"https:\u002F\u002Fwww.intercert.com\u002Fservices\u002Fgovernance-risk-compliance\u002Fiso-iec-27001","Intercert ISO 27001",{"id":81},"0521a5f1-e1f2-4da6-a2bc-dc92773f2a7b",{"id":36,"status":4,"sort":8,"link":37,"title":38,"badgeType":11,"badgeName":39,"metadata":8,"image":83},{"id":41},{"id":7,"status":4,"security_section_title":85,"loved_section_title":86,"columns":87,"social_links":180,"policy_links":210},"Secured & trusted","Loved by users",[88,102,119,141,145],{"id":7,"status":4,"sort":8,"title":89,"column_key":90,"links":91},"Localazy","connect",[92,95,98],{"id":36,"status":4,"sort":7,"title":93,"url":94},"Book a demo","___LOCALAZY_MEETING_URL___",{"id":29,"status":4,"sort":16,"title":96,"url":97},"Contact","\u002Fcontact",{"id":99,"status":4,"sort":22,"title":100,"url":101},21,"About us","\u002Fabout-us",{"id":16,"status":4,"sort":8,"title":103,"column_key":104,"links":105},"Programs","programs",[106,110,113,116],{"id":7,"status":4,"sort":107,"title":108,"url":109},4,"Partner Program","\u002Fpartnership",{"id":16,"status":4,"sort":50,"title":111,"url":112},"Ambassador Program","\u002Fambassador",{"id":22,"status":4,"sort":57,"title":114,"url":115},"Startup Program","\u002Ffor\u002Fstartups",{"id":107,"status":4,"sort":62,"title":117,"url":118},"Nonprofits","\u002Ffor\u002Fnonprofit",{"id":22,"status":4,"sort":8,"title":120,"column_key":121,"links":122},"Use Cases","use_cases",[123,126,129,132,135,138],{"id":50,"status":4,"sort":67,"title":124,"url":125},"Software Localization","\u002Fterm\u002Fsoftware-localization",{"id":57,"status":4,"sort":72,"title":127,"url":128},"Machine Translation Services","\u002Ffeatures\u002Fmachine-translation",{"id":62,"status":4,"sort":77,"title":130,"url":131},"Translation API","\u002Ffeatures\u002Ftranslation-api",{"id":67,"status":4,"sort":36,"title":133,"url":134},"Crowdsourced Translations","\u002Ffeatures\u002Fshare-tm",{"id":72,"status":4,"sort":29,"title":136,"url":137},"Figma i18n & localization","\u002Ffeatures\u002Ffigma-localization-plugin",{"id":77,"status":4,"sort":43,"title":139,"url":140},"Translation as a Service","\u002Fterm\u002Ftranslation-service",{"id":107,"status":4,"sort":8,"title":142,"column_key":143,"links":144},"Integrations","integrations",[],{"id":50,"status":4,"sort":8,"title":146,"column_key":147,"links":148},"Resources","resources",[149,153,157,161,165,169,173,177],{"id":43,"status":4,"sort":150,"title":151,"url":152},14,"Documentation","\u002Fdocs",{"id":150,"status":4,"sort":154,"title":155,"url":156},15,"Dictionary","\u002Fdictionary",{"id":154,"status":4,"sort":158,"title":159,"url":160},16,"Case Studies","\u002Fcase-study",{"id":158,"status":4,"sort":162,"title":163,"url":164},17,"Discussion forum","___DISCUSS_URL___",{"id":162,"status":4,"sort":166,"title":167,"url":168},18,"Localization Blog","\u002Fblog",{"id":166,"status":4,"sort":170,"title":171,"url":172},19,"FAQ","\u002Ffaq",{"id":170,"status":4,"sort":174,"title":175,"url":176},20,"Pricing","\u002Fpricing",{"id":174,"status":4,"sort":99,"title":178,"url":179},"Brand assets","https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1tZqsZHBlGelz7A2FwTsiwrs4j3sd9HTk",[181,186,191,196,201,206],{"id":7,"status":4,"sort":8,"platform":182,"icon":183,"url":184,"label":185},"feed","rss","\u002Ffeed.xml","Localazy RSS Feed",{"id":16,"status":4,"sort":8,"platform":187,"icon":188,"url":189,"label":190},"facebook","fb-logo","https:\u002F\u002Fwww.facebook.com\u002Flocalazy\u002F","Localazy facebook",{"id":22,"status":4,"sort":8,"platform":192,"icon":193,"url":194,"label":195},"github","github-logo","https:\u002F\u002Fgithub.com\u002Flocalazy","Localazy GitHub",{"id":107,"status":4,"sort":8,"platform":197,"icon":198,"url":199,"label":200},"x","x-twitter","https:\u002F\u002Fx.com\u002Flocalazy","Localazy X",{"id":50,"status":4,"sort":8,"platform":202,"icon":203,"url":204,"label":205},"linkedin","linkedin-logo","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002F37836599\u002F","Localazy LinkedIn",{"id":57,"status":4,"sort":8,"platform":207,"icon":208,"url":164,"label":209},"discourse","discourse-logo","Localazy Discourse",[211,214,217],{"id":7,"status":4,"sort":8,"title":212,"url":213,"action":8},"Privacy policy","\u002Fprivacy-policy",{"id":16,"status":4,"sort":8,"title":215,"url":216,"action":8},"Terms & Conditions","\u002Fterms-and-conditions",{"id":22,"status":4,"sort":8,"title":218,"url":8,"action":219},"Cookies","cookie-consent",[221,414,647,775,898,900],{"id":16,"name":222,"url":8,"url_text":8,"status":4,"groups":223},"Solutions",[224,235,306,341],{"navigation_items_group_id":225},{"id":22,"sort":50,"status":4,"name":226,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":229,"show_all_url":8,"represent_as_tile":227,"items":230},"Featured Article",false,"top",true,[231],{"collection":232,"item":233},"blog_post_navigation_item_type",{"id":107,"status":4,"sort":8,"show_author_img":229,"blog_post_tag":234,"description":8},"nav",{"navigation_items_group_id":236},{"id":50,"sort":7,"status":4,"name":237,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":238,"represent_as_tile":229,"items":239},"Your Role","\u002Froles",[240,252,262,272,283,295],{"collection":241,"item":242},"relation_navigation_item_type",{"id":7,"status":4,"sort":8,"name":243,"item":244},"CMO",[245],{"collection":246,"item":247},"personas",{"id":7,"status":4,"sort":8,"slug":248,"icon":249},"chief-marketing-officers",{"id":250,"title":251},"526097d8-176f-48e5-83d3-2fc4d77061f9","La Mail Bulk",{"collection":241,"item":253},{"id":22,"status":4,"sort":8,"name":254,"item":255},"CTO",[256],{"collection":246,"item":257},{"id":107,"status":4,"sort":8,"slug":258,"icon":259},"chief-technical-officers",{"id":260,"title":261},"f808fdf0-c78b-4294-ba59-fe25f46fe825","La Mechanic",{"collection":241,"item":263},{"id":174,"status":4,"sort":8,"name":264,"item":265},"Product Manager",[266],{"collection":246,"item":267},{"id":166,"status":4,"sort":8,"slug":268,"icon":269},"product-managers",{"id":270,"title":271},"ea39586a-21fc-4b34-ba87-496028e5198f","La Worker",{"collection":241,"item":273},{"id":274,"status":4,"sort":8,"name":275,"item":276},37,"Translator",[277],{"collection":246,"item":278},{"id":174,"status":4,"sort":8,"slug":279,"icon":280},"professional-translators",{"id":281,"title":282},"07945171-d51d-4ca8-96c0-21cde9db258f","La Chat",{"collection":241,"item":284},{"id":285,"status":4,"sort":8,"name":286,"item":287},38,"Developer",[288],{"collection":246,"item":289},{"id":290,"status":4,"sort":8,"slug":291,"icon":292},30,"software-developers",{"id":293,"title":294},"1806e46d-c551-4845-bf42-4407344d229e","La Terminal",{"collection":241,"item":296},{"id":297,"status":4,"sort":8,"name":298,"item":299},27,"Localization Manager",[300],{"collection":246,"item":301},{"id":57,"status":4,"sort":8,"slug":302,"icon":303},"localization-managers",{"id":304,"title":305},"dac69bd1-bf5d-41d0-87d4-dd13e314698a","La Language",{"navigation_items_group_id":307},{"id":72,"sort":22,"status":4,"name":308,"render_show_all_url":227,"show_all_url_position":309,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":310},"Use cases","bottom",[311,317,322,327,331,336],{"collection":312,"item":313},"simple_link_navigation_item_type",{"id":314,"status":4,"sort":8,"url":315,"url_text":316,"show_favorite_icon":227},24,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fsoftware-localization","Software localization",{"collection":312,"item":318},{"id":319,"status":4,"sort":8,"url":320,"url_text":321,"show_favorite_icon":227},26,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fmobile-app-localization","Mobile app localization",{"collection":312,"item":323},{"id":324,"status":4,"sort":8,"url":325,"url_text":326,"show_favorite_icon":227},25,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fwebsite-localization","Website localization",{"collection":312,"item":328},{"id":297,"status":4,"sort":8,"url":329,"url_text":330,"show_favorite_icon":227},"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fdesign-localization","Design localization",{"collection":312,"item":332},{"id":333,"status":4,"sort":8,"url":334,"url_text":335,"show_favorite_icon":227},28,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fgame-localization","Game localization",{"collection":312,"item":337},{"id":338,"status":4,"sort":8,"url":339,"url_text":340,"show_favorite_icon":227},29,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fhelp-and-docs-localization","Help & docs localization",{"navigation_items_group_id":342},{"id":67,"sort":16,"status":4,"name":343,"render_show_all_url":227,"show_all_url_position":309,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":344},"Industry",[345,356,367,377,387,396,407],{"collection":241,"item":346},{"id":347,"status":4,"sort":8,"name":348,"item":349},23,"Digital Agencies",[350],{"collection":246,"item":351},{"id":62,"status":4,"sort":8,"slug":352,"icon":353},"digital-agencies",{"id":354,"title":355},"547f5619-b21d-4b29-86f1-8b2200313cde","La Digi Agency",{"collection":241,"item":357},{"id":358,"status":4,"sort":8,"name":359,"item":360},39,"Startups & SaaS",[361],{"collection":246,"item":362},{"id":16,"status":4,"sort":8,"slug":363,"icon":364},"startups",{"id":365,"title":366},"da1516e2-4afc-40a2-bcbf-a8161e2d610d","La Saa S",{"collection":241,"item":368},{"id":16,"status":4,"sort":8,"name":369,"item":370},"E-commerce",[371],{"collection":246,"item":372},{"id":50,"status":4,"sort":8,"slug":373,"icon":374},"e-commerce",{"id":375,"title":376},"a3d09cd2-054f-4bb5-a0a2-d3d207db65df","La Ecommerce",{"collection":241,"item":378},{"id":170,"status":4,"sort":8,"name":379,"item":380},"FinTech Platforms",[381],{"collection":246,"item":382},{"id":297,"status":4,"sort":8,"slug":383,"icon":384},"fintech",{"id":385,"title":386},"147339ba-07d1-4e5e-baad-23d27e60c919","La Money",{"collection":241,"item":388},{"id":314,"status":4,"sort":8,"name":389,"item":390},"Translation Agencies",[391],{"collection":246,"item":392},{"id":314,"status":4,"sort":8,"slug":393,"icon":394},"translation-agencies",{"id":395,"title":305},"15d6fe33-2af8-4d6e-933d-5caa64394511",{"collection":241,"item":397},{"id":398,"status":4,"sort":8,"name":399,"item":400},22,"Travel & Tourism",[401],{"collection":246,"item":402},{"id":22,"status":4,"sort":8,"slug":403,"icon":404},"tourism",{"id":405,"title":406},"23a785e8-0ae5-4c4b-8452-aab1b58182a6","La Travel",{"collection":241,"item":408},{"id":324,"status":4,"sort":8,"name":409,"item":410},"Nonprofit Causes",[411],{"collection":246,"item":412},{"id":333,"status":4,"sort":8,"slug":413,"icon":8},"nonprofit",{"id":50,"name":415,"url":8,"url_text":8,"status":4,"groups":416},"Features",[417,484,541,590],{"navigation_items_group_id":418},{"id":36,"sort":57,"status":4,"name":419,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":420},"Localization",[421,430,439,447,455,459,467,476],{"collection":241,"item":422},{"id":423,"status":4,"sort":8,"name":424,"item":425},44,"Localization services",[426],{"collection":427,"item":428},"products",{"id":72,"status":4,"slug":429},"continuous-localization-team",{"collection":241,"item":431},{"id":432,"status":4,"sort":8,"name":433,"item":434},45,"Translation management",[435],{"collection":436,"item":437},"term_landing_page",{"id":338,"status":4,"slug":438},"translation-management-system",{"collection":241,"item":440},{"id":441,"status":4,"sort":8,"name":442,"item":443},46,"Context Screenshots",[444],{"collection":427,"item":445},{"id":43,"status":4,"slug":446},"context-screenshots-ocr",{"collection":241,"item":448},{"id":449,"status":4,"sort":8,"name":450,"item":451},47,"Translation Glossary",[452],{"collection":427,"item":453},{"id":162,"status":4,"slug":454},"glossary",{"collection":312,"item":456},{"id":107,"status":4,"sort":8,"url":457,"url_text":458,"show_favorite_icon":227},"\u002Fdocs\u002Fgeneral\u002Freviewing-translations","Quality control",{"collection":241,"item":460},{"id":461,"status":4,"sort":8,"name":462,"item":463},34,"Connected Projects",[464],{"collection":427,"item":465},{"id":7,"status":4,"slug":466},"connected-projects",{"collection":241,"item":468},{"id":469,"status":4,"sort":8,"name":470,"item":471},64,"Plural handling",[472],{"collection":427,"item":473},{"id":474,"status":4,"slug":475},32,"plurals",{"collection":241,"item":477},{"id":478,"status":4,"sort":8,"name":479,"item":480},65,"Style guides",[481],{"collection":427,"item":482},{"id":285,"status":4,"slug":483},"style-guide",{"navigation_items_group_id":485},{"id":29,"sort":62,"status":4,"name":486,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":487},"Translation",[488,496,504,508,516,524,533],{"collection":241,"item":489},{"id":490,"status":4,"sort":8,"name":491,"item":492},36,"Professional translations",[493],{"collection":436,"item":494},{"id":290,"status":4,"slug":495},"professional-translation-services",{"collection":241,"item":497},{"id":498,"status":4,"sort":8,"name":499,"item":500},48,"Crowdsourced translations",[501],{"collection":427,"item":502},{"id":67,"status":4,"slug":503},"share-tm",{"collection":312,"item":505},{"id":50,"status":4,"sort":8,"url":506,"url_text":507,"show_favorite_icon":227},"\u002Fdocs\u002Fgeneral\u002Ftranslating-strings","Translation interface",{"collection":241,"item":509},{"id":510,"status":4,"sort":8,"name":511,"item":512},55,"Machine translations",[513],{"collection":427,"item":514},{"id":50,"status":4,"slug":515},"machine-translation",{"collection":241,"item":517},{"id":518,"status":4,"sort":8,"name":519,"item":520},60,"Localazy AI translation",[521],{"collection":427,"item":522},{"id":338,"status":4,"slug":523},"localazy-ai",{"collection":241,"item":525},{"id":526,"status":4,"sort":8,"name":527,"item":528},61,"Translation Memory",[529],{"collection":427,"item":530},{"id":531,"status":4,"slug":532},35,"translation-memory",{"collection":241,"item":534},{"id":535,"status":4,"sort":8,"name":536,"item":537},63,"Code & placeholders",[538],{"collection":427,"item":539},{"id":290,"status":4,"slug":540},"code-and-placeholders",{"navigation_items_group_id":542},{"id":43,"sort":67,"status":4,"name":543,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":544},"Management",[545,549,557,565,574,582,586],{"collection":312,"item":546},{"id":67,"status":4,"sort":8,"url":547,"url_text":548,"show_favorite_icon":227},"\u002Fdocs\u002Fgeneral\u002Fdefining-user-roles","User roles",{"collection":241,"item":550},{"id":551,"status":4,"sort":8,"name":552,"item":553},51,"Duplicity Linking",[554],{"collection":427,"item":555},{"id":170,"status":4,"slug":556},"duplicity-linking",{"collection":241,"item":558},{"id":559,"status":4,"sort":8,"name":560,"item":561},52,"Language Permissions",[562],{"collection":427,"item":563},{"id":99,"status":4,"slug":564},"language-permissions",{"collection":241,"item":566},{"id":567,"status":568,"sort":8,"name":569,"item":570},53,"draft","Automations",[571],{"collection":427,"item":572},{"id":174,"status":4,"slug":573},"automations",{"collection":241,"item":575},{"id":576,"status":4,"sort":8,"name":577,"item":578},58,"Branching",[579],{"collection":427,"item":580},{"id":297,"status":4,"slug":581},"branching",{"collection":312,"item":583},{"id":99,"status":568,"sort":8,"url":584,"url_text":585,"show_favorite_icon":227},"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fsso-configuration","SSO",{"collection":312,"item":587},{"id":398,"status":568,"sort":8,"url":588,"url_text":589,"show_favorite_icon":227},"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Flanguage-statistics","Reporting",{"navigation_items_group_id":591},{"id":150,"sort":72,"status":4,"name":592,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":593},"Development",[594,600,608,615,622,630,639],{"collection":241,"item":595},{"id":338,"status":4,"sort":8,"name":130,"item":596},[597],{"collection":427,"item":598},{"id":36,"status":4,"slug":599},"translation-api",{"collection":241,"item":601},{"id":602,"status":4,"sort":8,"name":603,"item":604},33,"Localazy CLI",[605],{"collection":427,"item":606},{"id":62,"status":4,"slug":607},"cli",{"collection":241,"item":609},{"id":474,"status":4,"sort":8,"name":610,"item":611},"Language CDN",[612],{"collection":427,"item":613},{"id":107,"status":4,"slug":614},"language-cdn",{"collection":241,"item":616},{"id":333,"status":4,"sort":8,"name":617,"item":618},"Releases",[619],{"collection":427,"item":620},{"id":57,"status":4,"slug":621},"releases",{"collection":241,"item":623},{"id":624,"status":568,"sort":8,"name":625,"item":626},57,"Format Conversions",[627],{"collection":427,"item":628},{"id":16,"status":4,"slug":629},"format-conversions",{"collection":241,"item":631},{"id":632,"status":4,"sort":8,"name":633,"item":634},59,"Webhooks",[635],{"collection":427,"item":636},{"id":637,"status":4,"slug":638},31,"webhooks",{"collection":241,"item":640},{"id":641,"status":4,"sort":8,"name":642,"item":643},62,"Export Aliases",[644],{"collection":427,"item":645},{"id":602,"status":4,"slug":646},"export-aliases",{"id":107,"name":142,"url":8,"url_text":8,"status":4,"groups":648},[649,765],{"navigation_items_group_id":650},{"id":62,"sort":77,"status":4,"name":651,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":652},"Most popular",[653],{"collection":241,"item":654},{"id":29,"status":4,"sort":8,"name":142,"item":655},[656,664,671,678,685,691,698,705,712,719,726,735,742,749,757],{"collection":657,"item":658},"platforms",{"id":57,"status":4,"sort":7,"slug":659,"name":660,"icon":661},"android","Android",{"id":662,"title":663},"ff965add-53b0-44ad-b27c-ea4ef641d384","Ic Outline Android",{"collection":657,"item":665},{"id":62,"status":4,"sort":16,"slug":666,"name":667,"icon":668},"ios","iOS",{"id":669,"title":670},"886285d7-816a-4430-b5a5-edfe307b238e","Ios",{"collection":657,"item":672},{"id":602,"status":4,"sort":22,"slug":673,"name":674,"icon":675},"react","React",{"id":676,"title":677},"26757a90-88a3-4a94-b587-9f38614ed3bd","Logos React",{"collection":657,"item":679},{"id":170,"status":4,"sort":107,"slug":680,"name":681,"icon":682},"vuejs","Vue.js",{"id":683,"title":684},"6180b41f-3249-47d3-adcd-50fe1cf11bf1","Vue",{"collection":657,"item":686},{"id":158,"status":4,"sort":50,"slug":687,"name":688,"icon":689},"angular","Angular",{"id":690,"title":688},"2a31a97a-48c5-4531-aa36-41c9dd0bdbef",{"collection":657,"item":692},{"id":7,"status":4,"sort":57,"slug":693,"name":694,"icon":695},"flutter","Flutter",{"id":696,"title":697},"b9f13a11-9328-4a03-86cf-b20de0685606","Logos Flutter",{"collection":657,"item":699},{"id":22,"status":4,"sort":36,"slug":700,"name":701,"icon":702},"typescript","TypeScript",{"id":703,"title":704},"8d1319b5-8a96-4199-8407-00add3418b1f","Logos Typescript Icon",{"collection":657,"item":706},{"id":637,"status":4,"sort":29,"slug":707,"name":708,"icon":709},"javascript","JavaScript",{"id":710,"title":711},"4218d0c9-7e6b-494d-9663-37ceaf93ee8c","Logos Javascript",{"collection":657,"item":713},{"id":29,"status":4,"sort":174,"slug":714,"name":715,"icon":716},"json","JSON",{"id":717,"title":718},"99ac3b7c-dba5-4693-a4f4-1f27a6d7782d","Logos Json",{"collection":657,"item":720},{"id":99,"status":4,"sort":99,"slug":721,"name":722,"icon":723},"xliff","XLIFF",{"id":724,"title":725},"ca424cc8-e8a7-4aef-8dca-ef4a4d1334fc","Format",{"collection":657,"item":727},{"id":728,"status":4,"sort":729,"slug":730,"name":731,"icon":732},72,54,"strapi","Strapi",{"id":733,"title":734},"cde7f1d0-f2e0-4243-929e-a3f8f9146e69","Strapi Logo Purple",{"collection":657,"item":736},{"id":518,"status":4,"sort":510,"slug":737,"name":738,"icon":739},"figma","Figma",{"id":740,"title":741},"813745a4-a77d-4735-93b7-e0dd731b2304","Figma Icon",{"collection":657,"item":743},{"id":551,"status":4,"sort":449,"slug":744,"name":745,"icon":746},"microsoft-excel","Microsoft Excel",{"id":747,"title":748},"7a175955-7b96-4561-939f-a0e1924faa40","Excel",{"collection":657,"item":750},{"id":751,"status":4,"sort":526,"slug":752,"name":753,"icon":754},66,"github-actions","GitHub Actions",{"id":755,"title":756},"da17554f-ac6d-443d-9bac-1f29645ec1c6","Github Icon",{"collection":657,"item":758},{"id":759,"status":4,"sort":760,"slug":761,"name":762,"icon":763},97,999,"webflow","Webflow",{"id":764,"title":762},"ff43a386-52f8-499f-b77c-ab9a30f4a77e",{"navigation_items_group_id":766},{"id":107,"sort":36,"status":4,"name":767,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":768},"Explore more",[769],{"collection":770,"item":771},"text_link_navigation_item_type",{"id":7,"status":4,"sort":8,"text":772,"url":773,"url_text":774},"Localazy is a technology-agnostic platform supporting 50+ frameworks, file formats & popular tools.","\u002Fintegrations","See all integrations",{"id":7,"name":146,"url":8,"url_text":8,"status":4,"groups":776},[777,801,807],{"navigation_items_group_id":778},{"id":7,"sort":29,"status":4,"name":779,"render_show_all_url":227,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":8,"represent_as_tile":227,"items":780},"Helpful Links",[781,784,786,790,792,795,797],{"collection":312,"item":782},{"id":43,"status":4,"sort":8,"url":168,"url_text":783,"show_favorite_icon":229},"Localazy Blog",{"collection":312,"item":785},{"id":150,"status":4,"sort":8,"url":152,"url_text":151,"show_favorite_icon":229},{"collection":312,"item":787},{"id":7,"status":4,"sort":8,"url":788,"url_text":789,"show_favorite_icon":227},"https:\u002F\u002Fdiscuss.localazy.com\u002F","Discussion Forum",{"collection":312,"item":791},{"id":29,"status":4,"sort":8,"url":160,"url_text":159,"show_favorite_icon":227},{"collection":312,"item":793},{"id":22,"status":4,"sort":8,"url":109,"url_text":794,"show_favorite_icon":227},"Become a Partner",{"collection":312,"item":796},{"id":154,"status":4,"sort":8,"url":172,"url_text":171,"show_favorite_icon":227},{"collection":312,"item":798},{"id":162,"status":4,"sort":8,"url":799,"url_text":800,"show_favorite_icon":227},"\u002Ftags\u002Frelease-update","Release Updates",{"navigation_items_group_id":802},{"id":16,"sort":150,"status":4,"name":783,"render_show_all_url":229,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":168,"represent_as_tile":227,"items":803},[804],{"collection":232,"item":805},{"id":22,"status":4,"sort":8,"show_author_img":227,"blog_post_tag":806,"description":8},"[USE LATEST FEATURED]",{"navigation_items_group_id":808},{"id":57,"sort":43,"status":4,"name":151,"render_show_all_url":229,"show_all_url_position":228,"show_favorite_icon":227,"show_all_url":152,"represent_as_tile":227,"items":809},[810,824,836,847,859,869,880,888],{"collection":241,"item":811},{"id":107,"status":4,"sort":8,"name":812,"item":813},"General",[814],{"collection":815,"item":816},"docs_section",{"id":16,"status":4,"sort":7,"slug":817,"name":812,"icon":818,"featured_icon":821},"general",{"id":819,"title":820},"423101f1-308c-42f1-8dfe-53272019e7cb","Global",{"id":822,"title":823},"0f7ca4cb-dc3b-4f62-b476-132ed5c4931f","General Doc",{"collection":241,"item":825},{"id":50,"status":4,"sort":8,"name":826,"item":827},"CLI",[828],{"collection":815,"item":829},{"id":22,"status":4,"sort":16,"slug":607,"name":826,"icon":830,"featured_icon":833},{"id":831,"title":832},"2f7a4573-8265-4d76-8d55-ce0cc79b8983","Cli",{"id":834,"title":835},"3f76ff7b-0e74-4046-bb03-4ca99c3b66d5","Doc Cat Cli",{"collection":241,"item":837},{"id":67,"status":4,"sort":8,"name":838,"item":839},"API",[840],{"collection":815,"item":841},{"id":174,"status":4,"sort":22,"slug":842,"name":838,"icon":843,"featured_icon":844},"api",{"id":831,"title":832},{"id":845,"title":846},"20866781-e69b-4e01-9456-05437487b75c","API Doc",{"collection":241,"item":848},{"id":849,"status":4,"sort":8,"name":850,"item":851},50,"CDN",[852],{"collection":815,"item":853},{"id":319,"status":4,"sort":107,"slug":854,"name":850,"icon":855,"featured_icon":856},"cdn",{"id":819,"title":820},{"id":857,"title":858},"a8ee9cb7-4e02-41f0-b595-eb518c3085b6","Doc Cat Cdn",{"collection":241,"item":860},{"id":57,"status":4,"sort":8,"name":660,"item":861},[862],{"collection":815,"item":863},{"id":7,"status":4,"sort":50,"slug":659,"name":660,"icon":864,"featured_icon":866},{"id":865,"title":660},"fb8329ae-0c0c-4fbc-bcdc-83f2eeda1039",{"id":867,"title":868},"f7c0dec8-5b42-4943-ab3a-e3665723ad6f","Doc Cat Android",{"collection":241,"item":870},{"id":62,"status":4,"sort":8,"name":667,"item":871},[872],{"collection":815,"item":873},{"id":107,"status":4,"sort":57,"slug":666,"name":667,"icon":874,"featured_icon":877},{"id":875,"title":876},"289e136c-55df-4d51-847b-1782a2308ee4","Ios Blue",{"id":878,"title":879},"2968d3f0-14b5-4427-82e7-f1ea2de17846","Doc Cat Ios",{"collection":241,"item":881},{"id":72,"status":4,"sort":8,"name":738,"item":882},[883],{"collection":815,"item":884},{"id":99,"status":4,"sort":62,"slug":737,"name":738,"icon":885,"featured_icon":886},{"id":831,"title":832},{"id":887,"title":738},"f5e66b5b-a439-47f6-af4a-6ad261de2e87",{"collection":241,"item":889},{"id":77,"status":4,"sort":8,"name":731,"item":890},[891],{"collection":815,"item":892},{"id":347,"status":4,"sort":67,"slug":730,"name":731,"icon":893,"featured_icon":895},{"id":894,"title":731},"3b4b03c7-e131-49e6-a014-c8c2c8a2751e",{"id":896,"title":897},"1dd05c76-e517-4aea-a3d8-49cfddb40056","Strapi Doc",{"id":22,"name":175,"url":176,"url_text":175,"status":4,"groups":899},[],{"id":57,"name":93,"url":901,"url_text":93,"status":4,"groups":902},"\u002Fbook-demo",[],[904,1044,1122,1228,1314,1393,1482,1573,1660,1759],{"id":602,"status":4,"created_on":905,"modified_on":906,"name":674,"slug":673,"description":907,"docs_link":908,"priority":8,"has_sdk":227,"sort":22,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":909,"show_in_spa":229,"is_file_format":227,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":910,"tile_subtitle":911,"tile_description":912,"is_enterprise":227,"is_popular":227,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":913,"upload_features":914,"icon":915,"meta_image":916,"primary_tag":918,"tags":934,"integration_methods":952,"recommended_methods":1028,"default_integration_method":1029,"faq_categories":1036,"translations":1042,"platforms_id":602},"2022-03-18T08:09:24.000Z","2025-02-26T13:36:08.000Z","Manage your React app translations with Localazy, a continuous localization tool. React i18n done right. ","\u002Fdocs\u002Fcli\u002Fjson-format","JSON format support","CLI support","react-i18next and more","Use Localazy to translate your React projects with your favorite i18n library.",{"json":714},[],{"id":676},{"id":917},"a97492ec-ee8d-429c-bf66-d0fe59b6e5c9",{"id":50,"status":4,"sort":16,"created_on":919,"label":920,"hidden":227,"icon":921,"translations":923},"2022-03-17T12:23:44.000Z","Web apps",{"id":922},"c9e70e4f-8136-432a-8d82-53c3501a9eb4",[924,926,929,932],{"id":50,"languages_code":925,"label":920},"xxa",{"id":432,"languages_code":927,"label":928},"es","Aplicaciones web",{"id":849,"languages_code":930,"label":931},"cs","Webové aplikace",{"id":632,"languages_code":933,"label":920},"en",[935,942],{"id":50,"status":4,"sort":16,"label":920,"hidden":227,"created_on":919,"icon":936,"translations":937},{"id":922},[938,939,940,941],{"id":50,"languages_code":925,"label":920},{"id":432,"languages_code":927,"label":928},{"id":849,"languages_code":930,"label":931},{"id":632,"languages_code":933,"label":920},{"id":67,"status":4,"sort":72,"label":943,"hidden":227,"created_on":944,"icon":8,"translations":945},"Framework","2022-03-17T12:23:45.000Z",[946,947,949,950],{"id":67,"languages_code":925,"label":943},{"id":567,"languages_code":927,"label":948},"Marco",{"id":518,"languages_code":930,"label":943},{"id":951,"languages_code":933,"label":943},67,[953,965,990,1011],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":956},"Translate strings directly or upload them into your Localazy project.","\u002Fdocs\u002Fapi\u002Fintroduction",[957,958,961,963],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},40,"Utilice la API para exportar traducciones e importar contenido de\u002Fa Localazy mediante programación.",{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},"Choose between translating strings directly or uploading them into Localazy.",{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},"Pomocí rozhraní API můžete programovaně exportovat překlady a importovat obsah z\u002Fdo Localazy.",{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":971},"Create source keys online","add-keys-manually","Add source keys via the web interface online and sync them into your project later.","\u002Fdocs\u002Fgeneral\u002Fimporting-localization-files#add-new-keys-in-ui","vpn-key-outline",[972,973,976,977,980,983,984,985],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},"Cree claves fuente en línea","Añada claves fuente a través de la interfaz web en línea y sincronícelas posteriormente en su proyecto.",{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},"Vytvářejte zdrojové klíče online","Přidejte zdrojové klíče přes webové rozhraní online a synchronizujte je do svého projektu později.",{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},"Cree claves de origen en línea","Añada claves de origen a través de la interfaz web en línea y sincronícelas posteriormente en su proyecto.",{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},88,"de","Erstellen Sie Quellschlüssel online","Fügen Sie Quellschlüssel über die Weboberfläche online hinzu und synchronisieren Sie sie später mit Ihrem Projekt.",{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":997},"Direct file upload","File upload","web-upload","Upload your texts and existing translations in any format directly to start quickly.","\u002Fdocs\u002Fgeneral\u002Fimporting-localization-files","file-upload",[998,999,1002,1003,1007],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},"Carga directa de archivos","Cargue sus textos y traducciones existentes en cualquier formato directamente para empezar rápidamente.",{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},56,"Přímé nahrávání souborů","Nahrajte přímo své texty a stávající překlady v libovolném formátu a začněte pracovat ihned.",{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},85,"Direkter Datei-Upload","Laden Sie Ihre Texte und vorhandenen Übersetzungen in einem beliebigen Format direkt hoch, um schnell loszulegen.",{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1015},"Command Line Interface","The best option for developers that want to make localization an automated part of their workflow.","\u002Fdocs\u002Fcli\u002Fthe-basics",[1016,1017,1020,1021,1024],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},"Interfaz de Línea de Comandos","La mejor opción para los desarrolladores que deseen hacer de la localización una parte automatizada de su flujo de trabajo.",{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},"Rozhraní Příkazového Řádku","Nejlepší volba pro vývojáře, kteří chtějí, aby se lokalizace stala automatizovanou součástí jejich pracovních postupů.",{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},87,"Befehlszeilenschnittstelle","Die beste Option für Entwickler, die die Lokalisierung zu einem automatisierten Teil ihres Arbeitsablaufs machen möchten.",[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1030},[1031,1032,1033,1034,1035],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[1037],{"id":1038,"status":4,"created_on":1039,"sort":8,"slug":1040,"label":1041,"on_faq_index":8},76,"2025-02-26T12:44:29.000Z","front-end-common","Front-end Common",[1043],{"languages_code":925,"name":674,"slug":673,"description":907,"support_type":909,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":911,"tile_description":912,"id":602,"platforms_id":602,"docs_link":908},{"id":170,"status":4,"created_on":905,"modified_on":1045,"name":681,"slug":680,"description":1046,"docs_link":908,"priority":8,"has_sdk":227,"sort":107,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":909,"show_in_spa":229,"is_file_format":227,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":910,"tile_subtitle":1047,"tile_description":1048,"is_enterprise":227,"is_popular":227,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":1049,"upload_features":1050,"icon":1051,"meta_image":1052,"primary_tag":1054,"tags":1061,"integration_methods":1075,"recommended_methods":1106,"default_integration_method":1107,"faq_categories":1114,"translations":1120,"platforms_id":170},"2025-02-26T13:35:41.000Z","Online Vue.js project localization tool for your translation management. Enjoy true continuous localization with Localazy & translate your JSON files automatically.","Vue.js & JSON","Enjoy true continuous localization with Localazy & translate your Vue projects automatically.",{"json":714},[],{"id":683},{"id":1053},"8171b836-d6b8-4354-8db3-34ccd384970d",{"id":50,"status":4,"sort":16,"created_on":919,"label":920,"hidden":227,"icon":1055,"translations":1056},{"id":922},[1057,1058,1059,1060],{"id":50,"languages_code":925,"label":920},{"id":432,"languages_code":927,"label":928},{"id":849,"languages_code":930,"label":931},{"id":632,"languages_code":933,"label":920},[1062,1069],{"id":50,"status":4,"sort":16,"label":920,"hidden":227,"created_on":919,"icon":1063,"translations":1064},{"id":922},[1065,1066,1067,1068],{"id":50,"languages_code":925,"label":920},{"id":432,"languages_code":927,"label":928},{"id":849,"languages_code":930,"label":931},{"id":632,"languages_code":933,"label":920},{"id":67,"status":4,"sort":72,"label":943,"hidden":227,"created_on":944,"icon":8,"translations":1070},[1071,1072,1073,1074],{"id":67,"languages_code":925,"label":943},{"id":567,"languages_code":927,"label":948},{"id":518,"languages_code":930,"label":943},{"id":951,"languages_code":933,"label":943},[1076,1082,1092,1099],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1077},[1078,1079,1080,1081],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1083},[1084,1085,1086,1087,1088,1089,1090,1091],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1093},[1094,1095,1096,1097,1098],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1100},[1101,1102,1103,1104,1105],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1108},[1109,1110,1111,1112,1113],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[1115,1119],{"id":1004,"status":4,"created_on":1116,"sort":8,"slug":1117,"label":1118,"on_faq_index":8},"2023-03-01T11:21:41.000Z","vue-localization","Vue.js Localization",{"id":1038,"status":4,"created_on":1039,"sort":8,"slug":1040,"label":1041,"on_faq_index":8},[1121],{"languages_code":925,"name":681,"slug":680,"description":1046,"support_type":909,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1047,"tile_description":1048,"id":170,"platforms_id":170,"docs_link":908},{"id":7,"status":4,"created_on":905,"modified_on":1123,"name":694,"slug":693,"description":1124,"docs_link":1125,"priority":8,"has_sdk":227,"sort":57,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1126,"show_in_spa":229,"is_file_format":227,"meta_title":8,"meta_description":8,"featured_on_web":227,"marketing_subtitle":910,"tile_subtitle":1126,"tile_description":1127,"is_enterprise":227,"is_popular":227,"primary_use_case":1128,"hierarchy_handling":1129,"best_for":1130,"file_extension":1131,"format_code_example":1132,"format_to_extension":1133,"upload_features":1135,"icon":1136,"meta_image":1137,"primary_tag":1139,"tags":1150,"integration_methods":1186,"recommended_methods":1217,"default_integration_method":1218,"faq_categories":1225,"translations":1226,"platforms_id":7},"2025-07-03T14:21:42.000Z","Learn how to use Localazy CLI for localization of Flutter app. Flutter’s ARB format is fully supported including arrays, plurals, and selected context information. No extra configuration is necessary, but you can enable certain features if you want to.","\u002Fdocs\u002Fcli\u002Fflutter-format","ARB format support","Use the Localazy CLI for localization of Flutter projects. Flutter’s ARB format is fully supported.","Supports metadata like placeholders","JSON-like key-value","Flutter apps",".arb","```\n{\n  \"localazy_message\": \"Go international, today. With Localazy.\"\n}\n```",{"arb":1134},"arb",[],{"id":696},{"id":1138},"c2674666-4371-4aa4-9a65-438c7363fafe",{"id":57,"status":4,"sort":67,"created_on":944,"label":1140,"hidden":227,"icon":1141,"translations":1143},"Mobile apps",{"id":1142},"c9c7e1f5-8b59-4016-ae0c-6fba9469cd55",[1144,1145,1147,1149],{"id":57,"languages_code":925,"label":1140},{"id":441,"languages_code":927,"label":1146},"Aplicaciones móviles",{"id":510,"languages_code":930,"label":1148},"Mobilní aplikace",{"id":478,"languages_code":933,"label":1140},[1151,1162,1169,1176],{"id":62,"status":4,"sort":170,"label":1152,"hidden":227,"created_on":944,"icon":1153,"translations":1155},"Desktop & Games",{"id":1154},"65b04533-5b4c-430c-b8a4-ecce84754200",[1156,1157,1159,1161],{"id":62,"languages_code":925,"label":1152},{"id":449,"languages_code":927,"label":1158},"Escritorio y Juegos",{"id":1004,"languages_code":930,"label":1160},"Stolní počítače & Hry",{"id":751,"languages_code":933,"label":1152},{"id":50,"status":4,"sort":16,"label":920,"hidden":227,"created_on":919,"icon":1163,"translations":1164},{"id":922},[1165,1166,1167,1168],{"id":50,"languages_code":925,"label":920},{"id":432,"languages_code":927,"label":928},{"id":849,"languages_code":930,"label":931},{"id":632,"languages_code":933,"label":920},{"id":57,"status":4,"sort":67,"label":1140,"hidden":227,"created_on":944,"icon":1170,"translations":1171},{"id":1142},[1172,1173,1174,1175],{"id":57,"languages_code":925,"label":1140},{"id":441,"languages_code":927,"label":1146},{"id":510,"languages_code":930,"label":1148},{"id":478,"languages_code":933,"label":1140},{"id":290,"status":4,"sort":474,"label":1177,"hidden":229,"created_on":944,"icon":8,"translations":1178},"ARB",[1179,1180,1182,1184],{"id":290,"languages_code":925,"label":1177},{"id":1181,"languages_code":927,"label":1177},120,{"id":1183,"languages_code":930,"label":1177},125,{"id":1185,"languages_code":933,"label":1177},130,[1187,1193,1203,1210],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1188},[1189,1190,1191,1192],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1194},[1195,1196,1197,1198,1199,1200,1201,1202],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1204},[1205,1206,1207,1208,1209],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1211},[1212,1213,1214,1215,1216],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1219},[1220,1221,1222,1223,1224],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],[1227],{"languages_code":925,"name":694,"slug":693,"description":1124,"support_type":1126,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1126,"tile_description":1127,"id":7,"platforms_id":7,"docs_link":1125},{"id":637,"status":4,"created_on":1229,"modified_on":1230,"name":708,"slug":707,"description":1231,"docs_link":1232,"priority":8,"has_sdk":227,"sort":29,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1233,"show_in_spa":229,"is_file_format":227,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":910,"tile_subtitle":1233,"tile_description":1234,"is_enterprise":227,"is_popular":227,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":1235,"upload_features":1237,"icon":1238,"meta_image":1239,"primary_tag":1241,"tags":1254,"integration_methods":1269,"recommended_methods":1300,"default_integration_method":1301,"faq_categories":1308,"translations":1312,"platforms_id":637},"2022-03-18T08:09:25.000Z","2024-07-17T07:43:22.000Z","Localize your app with JavaScript localizations and Localazy CLI.\nUpload JavaScript files with strings to Localazy and manage your translations easily. Download translated files back.","\u002Fdocs\u002Fcli\u002Fjavascript-format","JS file support","Translating JS files is easy as a pie with Localazy!",{"js":1236},"js",[],{"id":710},{"id":1240},"2c6699eb-1d80-4772-8268-5597dbcead8c",{"id":77,"status":4,"sort":77,"created_on":944,"label":1242,"hidden":227,"icon":1243,"translations":1245},"Programming Languages",{"id":1244},"8c5836bb-1fbe-49c5-9330-8f931838c457",[1246,1247,1249,1252],{"id":77,"languages_code":925,"label":1242},{"id":535,"languages_code":927,"label":1248},"Lenguajes de Programación",{"id":1250,"languages_code":930,"label":1251},68,"Programovací Jazyky",{"id":1253,"languages_code":933,"label":1242},70,[1255,1262],{"id":50,"status":4,"sort":16,"label":920,"hidden":227,"created_on":919,"icon":1256,"translations":1257},{"id":922},[1258,1259,1260,1261],{"id":50,"languages_code":925,"label":920},{"id":432,"languages_code":927,"label":928},{"id":849,"languages_code":930,"label":931},{"id":632,"languages_code":933,"label":920},{"id":77,"status":4,"sort":77,"label":1242,"hidden":227,"created_on":944,"icon":1263,"translations":1264},{"id":1244},[1265,1266,1267,1268],{"id":77,"languages_code":925,"label":1242},{"id":535,"languages_code":927,"label":1248},{"id":1250,"languages_code":930,"label":1251},{"id":1253,"languages_code":933,"label":1242},[1270,1276,1286,1293],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1271},[1272,1273,1274,1275],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1277},[1278,1279,1280,1281,1282,1283,1284,1285],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1287},[1288,1289,1290,1291,1292],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1294},[1295,1296,1297,1298,1299],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1302},[1303,1304,1305,1306,1307],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[1309],{"id":531,"status":4,"created_on":1310,"sort":8,"slug":1311,"label":708,"on_faq_index":227},"2022-06-10T09:49:33.000Z","javascript-i18n-localization",[1313],{"languages_code":925,"name":708,"slug":707,"description":1231,"support_type":1233,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1233,"tile_description":1234,"id":637,"platforms_id":637,"docs_link":1232},{"id":29,"status":4,"created_on":1229,"modified_on":1315,"name":715,"slug":714,"description":1316,"docs_link":908,"priority":8,"has_sdk":227,"sort":174,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1317,"show_in_spa":229,"is_file_format":229,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":910,"tile_subtitle":1318,"tile_description":1319,"is_enterprise":227,"is_popular":229,"primary_use_case":1320,"hierarchy_handling":1321,"best_for":1322,"file_extension":1323,"format_code_example":1324,"format_to_extension":1325,"upload_features":1326,"icon":1327,"meta_image":1328,"primary_tag":1330,"tags":1341,"integration_methods":1349,"recommended_methods":1380,"default_integration_method":1381,"faq_categories":1388,"translations":1391,"platforms_id":29},"2025-10-14T11:22:29.000Z","Online JSON translator you will love. Comfortable JSON language files editor with powerful CLI under your fingers for continuous localization.","Advanced format support","{Objectively the best}","Translate any JSON files with Localazy, with the best in class plural and array support.","Used for structured data storage and APIs","Uses key-value pairs","Web & mobile apps, APIs",".json","```\n{\n  \"parent\": {\n    \"child\": {\n      \"another_nested_level\": \"All is supported.\"\n    }\n  }\n}\n```",{"json":714},[],{"id":717},{"id":1329},"8d614c20-667e-4bee-a64d-7d7ce9c0ee0a",{"id":107,"status":4,"sort":50,"created_on":944,"label":1331,"hidden":227,"icon":1332,"translations":1334},"File formats",{"id":1333},"ab7c8f89-dcce-45ab-9e21-8605aef289c3",[1335,1336,1338,1340],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},"Formatos de archivo",{"id":551,"languages_code":930,"label":1339},"Formáty souborů",{"id":641,"languages_code":933,"label":1331},[1342],{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1343,"translations":1344},{"id":1333},[1345,1346,1347,1348],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},[1350,1356,1366,1373],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1351},[1352,1353,1354,1355],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1357},[1358,1359,1360,1361,1362,1363,1364,1365],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1367},[1368,1369,1370,1371,1372],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1374},[1375,1376,1377,1378,1379],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1382},[1383,1384,1385,1386,1387],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[1389],{"id":490,"status":4,"created_on":1390,"sort":8,"slug":714,"label":715,"on_faq_index":227},"2022-06-10T10:49:07.000Z",[1392],{"languages_code":925,"name":715,"slug":714,"description":1316,"support_type":1317,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1318,"tile_description":1319,"id":29,"platforms_id":29,"docs_link":908},{"id":99,"status":4,"created_on":1229,"modified_on":1394,"name":722,"slug":721,"description":1395,"docs_link":1396,"priority":8,"has_sdk":227,"sort":99,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1397,"show_in_spa":227,"is_file_format":229,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":910,"tile_subtitle":1398,"tile_description":1399,"is_enterprise":227,"is_popular":229,"primary_use_case":1400,"hierarchy_handling":1401,"best_for":1402,"file_extension":1403,"format_code_example":1404,"format_to_extension":1405,"upload_features":1407,"icon":1408,"meta_image":1409,"primary_tag":1411,"tags":1418,"integration_methods":1440,"recommended_methods":1471,"default_integration_method":1472,"faq_categories":1479,"translations":1480,"platforms_id":99},"2025-07-03T14:28:31.000Z","XLIFF is meant for localization. Enjoy Localazy - an online XLIFF editor for your translation management. Integrate your XLIFF files with Localazy to achieve true continuous localization and translate XLIFF files on autopilot.","\u002Fdocs\u002Fcli\u002Fxliff-12-format","File format support","Meant for localization","XLIFF stands for XML Localization Interchange File Format - and Localazy is the best way to manage XLIFF files.","Used in translation pipelines","XML-based exchange format","Translation & software",".xliff","```\n\u003Ctrans-unit id=\"localazy_message\">\n    \u003Csource>Go international, today. With Localazy.\u003C\u002Fsource>\n\u003C\u002Ftrans-unit>\n```",{"xliff":1406},"xlf",[],{"id":724},{"id":1410},"889970a6-cce8-4055-b96a-9c3f292aa67f",{"id":107,"status":4,"sort":50,"created_on":944,"label":1331,"hidden":227,"icon":1412,"translations":1413},{"id":1333},[1414,1415,1416,1417],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},[1419,1426,1433],{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1420,"translations":1421},{"id":1333},[1422,1423,1424,1425],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1427,"translations":1428},{"id":1333},[1429,1430,1431,1432],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1434,"translations":1435},{"id":1333},[1436,1437,1438,1439],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},[1441,1447,1457,1464],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1442},[1443,1444,1445,1446],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1448},[1449,1450,1451,1452,1453,1454,1455,1456],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1458},[1459,1460,1461,1462,1463],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1465},[1466,1467,1468,1469,1470],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1473},[1474,1475,1476,1477,1478],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],[1481],{"languages_code":925,"name":722,"slug":721,"description":1395,"support_type":1397,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1398,"tile_description":1399,"id":99,"platforms_id":99,"docs_link":1396},{"id":174,"status":4,"created_on":1483,"modified_on":1483,"name":1484,"slug":1485,"description":1486,"docs_link":1487,"priority":8,"has_sdk":227,"sort":314,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1397,"show_in_spa":229,"is_file_format":229,"meta_title":8,"meta_description":8,"featured_on_web":227,"marketing_subtitle":910,"tile_subtitle":1488,"tile_description":1489,"is_enterprise":227,"is_popular":229,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":1490,"upload_features":1491,"icon":1492,"meta_image":1494,"primary_tag":1496,"tags":1503,"integration_methods":1531,"recommended_methods":1562,"default_integration_method":1563,"faq_categories":1570,"translations":1571,"platforms_id":174},"2026-05-21T20:49:09.000Z","PO","po","Edit .po and .pot files with your team, automate translation with AI, and ship faster.","\u002Fdocs\u002Fcli\u002Fpo-format","Seamless integration","Upload, edit and translate PO files with Localazy.",{"po":1485},[],{"id":1493},"25f317fe-0c10-4f0b-92cd-f80d1f3c6a67",{"id":1495},"490022f9-d91a-4e1a-9e79-db374ec997c2",{"id":107,"status":4,"sort":50,"created_on":944,"label":1331,"hidden":227,"icon":1497,"translations":1498},{"id":1333},[1499,1500,1501,1502],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},[1504,1511,1521],{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1505,"translations":1506},{"id":1333},[1507,1508,1509,1510],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},{"id":461,"status":4,"sort":461,"label":1512,"hidden":229,"created_on":944,"icon":8,"translations":1513},"C++",[1514,1515,1517,1519],{"id":461,"languages_code":925,"label":1512},{"id":1516,"languages_code":927,"label":1512},135,{"id":1518,"languages_code":930,"label":1512},140,{"id":1520,"languages_code":933,"label":1512},144,{"id":99,"status":4,"sort":314,"label":1522,"hidden":229,"created_on":944,"icon":8,"translations":1523},"Gettext",[1524,1525,1527,1529],{"id":99,"languages_code":925,"label":1522},{"id":1526,"languages_code":927,"label":1522},101,{"id":1528,"languages_code":930,"label":1522},106,{"id":1530,"languages_code":933,"label":1522},111,[1532,1538,1548,1555],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1533},[1534,1535,1536,1537],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1539},[1540,1541,1542,1543,1544,1545,1546,1547],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1549},[1550,1551,1552,1553,1554],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1556},[1557,1558,1559,1560,1561],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1564},[1565,1566,1567,1568,1569],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],[1572],{"languages_code":925,"name":1484,"slug":1485,"description":1486,"support_type":1397,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1488,"tile_description":1489,"id":174,"platforms_id":174,"docs_link":1487},{"id":319,"status":4,"created_on":1229,"modified_on":1574,"name":1575,"slug":1576,"description":1577,"docs_link":1578,"priority":8,"has_sdk":227,"sort":297,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1397,"show_in_spa":229,"is_file_format":229,"meta_title":8,"meta_description":8,"featured_on_web":227,"marketing_subtitle":910,"tile_subtitle":1579,"tile_description":1580,"is_enterprise":227,"is_popular":227,"primary_use_case":1581,"hierarchy_handling":1582,"best_for":1583,"file_extension":1584,"format_code_example":1585,"format_to_extension":1586,"upload_features":1587,"icon":1588,"meta_image":1589,"primary_tag":1591,"tags":1598,"integration_methods":1616,"recommended_methods":1647,"default_integration_method":1648,"faq_categories":1655,"translations":1658,"platforms_id":319},"2025-10-02T08:32:44.000Z","RESX","resx","Quickly translate and manage your RESX files with Localazy or integrate Localazy with your .NET project and enjoy a fully automated localization process. ","\u002Fdocs\u002Fcli\u002Fresx-format",".NET localization","Translate .NET projects using RESX files and Localazy.","Standard format for Windows\u002F.NET localization","Flat key-value structure",".NET applications",".resx","```\n\u003C?xml version=\"1.0\" encoding=\"utf-8\"?>\n\u003Croot>\n  \u003Cdata name=\"localazy_message\" xml:space=\"preserve\">\n    \u003Cvalue>Go international, today. With Localazy.\u003C\u002Fvalue>\n  \u003C\u002Fdata>\n\u003C\u002Froot>\n```",{"resx":1576},[],{"id":1493},{"id":1590},"1f07bf83-9363-47d6-b21b-a5121c0efaf6",{"id":107,"status":4,"sort":50,"created_on":944,"label":1331,"hidden":227,"icon":1592,"translations":1593},{"id":1333},[1594,1595,1596,1597],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},[1599,1606],{"id":107,"status":4,"sort":50,"label":1331,"hidden":227,"created_on":944,"icon":1600,"translations":1601},{"id":1333},[1602,1603,1604,1605],{"id":107,"languages_code":925,"label":1331},{"id":423,"languages_code":927,"label":1337},{"id":551,"languages_code":930,"label":1339},{"id":641,"languages_code":933,"label":1331},{"id":314,"status":4,"sort":319,"label":1607,"hidden":229,"created_on":944,"icon":8,"translations":1608},"C#",[1609,1610,1612,1614],{"id":314,"languages_code":925,"label":1607},{"id":1611,"languages_code":927,"label":1607},103,{"id":1613,"languages_code":930,"label":1607},108,{"id":1615,"languages_code":933,"label":1607},113,[1617,1623,1633,1640],{"id":107,"status":4,"sort":57,"label":838,"alternative_label":8,"slug":842,"description":954,"documentation_link":955,"loc_icon":842,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1618},[1619,1620,1621,1622],{"id":107,"languages_code":925,"label":838,"description":954,"slug":842},{"id":959,"languages_code":927,"label":838,"description":960,"slug":842},{"id":849,"languages_code":933,"label":838,"description":962,"slug":842},{"id":632,"languages_code":930,"label":838,"description":964,"slug":842},{"id":22,"status":4,"sort":50,"label":966,"alternative_label":8,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1624},[1625,1626,1627,1628,1629,1630,1631,1632],{"id":22,"languages_code":925,"label":966,"description":968,"slug":967},{"id":358,"languages_code":927,"label":974,"description":975,"slug":8},{"id":551,"languages_code":933,"label":966,"description":968,"slug":967},{"id":518,"languages_code":930,"label":978,"description":979,"slug":8},{"id":469,"languages_code":927,"label":981,"description":982,"slug":967},{"id":478,"languages_code":933,"label":966,"description":968,"slug":967},{"id":751,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":8},{"id":16,"status":4,"sort":107,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1634},[1635,1636,1637,1638,1639],{"id":16,"languages_code":925,"label":991,"description":994,"slug":993},{"id":285,"languages_code":927,"label":1000,"description":1001,"slug":8},{"id":449,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":8},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":8},{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1641},[1642,1643,1644,1645,1646],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[],{"id":7,"status":4,"sort":22,"label":1012,"alternative_label":826,"slug":607,"description":1013,"documentation_link":1014,"loc_icon":607,"is_official_plugin":227,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1649},[1650,1651,1652,1653,1654],{"id":7,"languages_code":925,"label":1012,"description":1013,"slug":607},{"id":274,"languages_code":927,"label":1018,"description":1019,"slug":607},{"id":441,"languages_code":933,"label":1012,"description":1013,"slug":607},{"id":510,"languages_code":930,"label":1022,"description":1023,"slug":607},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":8},[1656],{"id":423,"status":4,"created_on":1657,"sort":8,"slug":1576,"label":1575,"on_faq_index":8},"2022-08-01T16:44:06.000Z",[1659],{"languages_code":925,"name":1575,"slug":1576,"description":1577,"support_type":1397,"meta_title":8,"meta_description":8,"marketing_subtitle":910,"tile_subtitle":1579,"tile_description":1580,"id":319,"platforms_id":319,"docs_link":1578},{"id":728,"status":4,"created_on":1661,"modified_on":1662,"name":731,"slug":730,"description":1663,"docs_link":1664,"priority":8,"has_sdk":8,"sort":729,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1665,"show_in_spa":229,"is_file_format":8,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":1665,"tile_subtitle":1665,"tile_description":1666,"is_enterprise":227,"is_popular":229,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":8,"upload_features":8,"icon":1667,"meta_image":1668,"primary_tag":1670,"tags":1682,"integration_methods":1726,"recommended_methods":1746,"default_integration_method":1747,"faq_categories":1754,"translations":1757,"platforms_id":728},"2022-06-16T09:08:11.000Z","2026-04-27T18:16:54.000Z","Enjoy seamless integration of Strapi & Localazy and translate your website efficiently. Download the official Localazy plugin in the Strapi Marketplace to get started!","\u002Fdocs\u002Fstrapi\u002Fstrapi-plugin-introduction","Localization Plugin","Localize your Strapi website with our official localization plugin. Easy setup and installation.",{"id":733},{"id":1669},"5995b721-a2ea-487e-ad4b-298a489bbd24",{"id":29,"status":4,"sort":36,"created_on":944,"label":1671,"hidden":227,"icon":1672,"translations":1674},"CMS",{"id":1673},"1172a655-928c-4594-9263-d8afdfd9cd79",[1675,1676,1678,1680],{"id":29,"languages_code":925,"label":1671},{"id":1677,"languages_code":927,"label":1671},73,{"id":1679,"languages_code":930,"label":1671},81,{"id":1681,"languages_code":933,"label":1671},84,[1683,1695,1707,1714],{"id":166,"status":4,"sort":162,"label":1684,"hidden":227,"created_on":944,"icon":8,"translations":1685},"Multilingual SEO",[1686,1687,1690,1693],{"id":166,"languages_code":925,"label":1684},{"id":1688,"languages_code":927,"label":1689},89,"SEO multilingüe",{"id":1691,"languages_code":930,"label":1692},94,"Vícejazyčné SEO",{"id":1694,"languages_code":933,"label":1684},99,{"id":602,"status":4,"sort":602,"label":369,"hidden":227,"created_on":944,"icon":1696,"translations":1698},{"id":1697},"e782ed3f-d954-45ca-8b17-5bf5fe95f30a",[1699,1700,1703,1705],{"id":602,"languages_code":925,"label":369},{"id":1701,"languages_code":927,"label":1702},132,"Comercio electrónico",{"id":1704,"languages_code":930,"label":369},137,{"id":1706,"languages_code":933,"label":369},142,{"id":29,"status":4,"sort":36,"label":1671,"hidden":227,"created_on":944,"icon":1708,"translations":1709},{"id":1673},[1710,1711,1712,1713],{"id":29,"languages_code":925,"label":1671},{"id":1677,"languages_code":927,"label":1671},{"id":1679,"languages_code":930,"label":1671},{"id":1681,"languages_code":933,"label":1671},{"id":16,"status":4,"sort":57,"label":1715,"hidden":227,"created_on":944,"icon":1716,"translations":1718},"Marketing tools",{"id":1717},"098fe6a4-dd2e-42d8-937e-2d8121e6e266",[1719,1720,1723,1725],{"id":16,"languages_code":925,"label":1715},{"id":1721,"languages_code":927,"label":1722},43,"Herramientas de marketing",{"id":498,"languages_code":930,"label":1724},"Marketingové nástroje",{"id":576,"languages_code":933,"label":1715},[1727],{"id":67,"status":4,"sort":8,"label":1728,"alternative_label":1729,"slug":1730,"description":1731,"documentation_link":1732,"loc_icon":1733,"is_official_plugin":229,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1734},"Official Strapi Plugin","Official Plugin","official-strapi-plugin","Our developers maintain an official Strapi localization plugin. Start in a few clicks!","\u002Fdocs\u002Fstrapi","localazy-box",[1735,1736,1739,1740,1743],{"id":67,"languages_code":925,"label":1728,"description":1731,"slug":1730},{"id":1721,"languages_code":927,"label":1737,"description":1738,"slug":8},"Complemento Oficial de Strapi","Nuestros desarrolladores mantienen un complemento oficial de localización de Strapi. ¡Empiece en unos pocos clics!",{"id":567,"languages_code":933,"label":1728,"description":1731,"slug":1730},{"id":641,"languages_code":930,"label":1741,"description":1742,"slug":8},"Oficiál Plugin Strapi","Naši vývojáři udržují a neustále vylepšují oficiální lokalizační plugin Strapi. Začněte několika kliknutími!",{"id":1688,"languages_code":987,"label":1744,"description":1745,"slug":8},"Offizielles Strapi-Plugin","Unsere Entwickler pflegen ein offizielles Strapi-Lokalisierungs-Plugin. Starten Sie mit ein paar Klicks!",[],{"id":67,"status":4,"sort":8,"label":1728,"alternative_label":1729,"slug":1730,"description":1731,"documentation_link":1732,"loc_icon":1733,"is_official_plugin":229,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1748},[1749,1750,1751,1752,1753],{"id":67,"languages_code":925,"label":1728,"description":1731,"slug":1730},{"id":1721,"languages_code":927,"label":1737,"description":1738,"slug":8},{"id":567,"languages_code":933,"label":1728,"description":1731,"slug":1730},{"id":641,"languages_code":930,"label":1741,"description":1742,"slug":8},{"id":1688,"languages_code":987,"label":1744,"description":1745,"slug":8},[1755],{"id":274,"status":4,"created_on":1756,"sort":8,"slug":730,"label":731,"on_faq_index":8},"2022-06-16T09:24:13.000Z",[1758],{"languages_code":925,"name":731,"slug":730,"description":1663,"support_type":1665,"meta_title":8,"meta_description":8,"marketing_subtitle":1665,"tile_subtitle":1665,"tile_description":1666,"id":728,"platforms_id":728,"docs_link":1664},{"id":518,"status":4,"created_on":1229,"modified_on":1760,"name":738,"slug":737,"description":8,"docs_link":1761,"priority":8,"has_sdk":227,"sort":510,"highlighted":227,"in_menu":229,"changefreq":8,"support_type":1762,"show_in_spa":229,"is_file_format":227,"meta_title":8,"meta_description":8,"featured_on_web":229,"marketing_subtitle":1763,"tile_subtitle":1764,"tile_description":1765,"is_enterprise":227,"is_popular":229,"primary_use_case":8,"hierarchy_handling":8,"best_for":8,"file_extension":8,"format_code_example":8,"format_to_extension":8,"upload_features":1766,"icon":1767,"meta_image":1768,"primary_tag":1770,"tags":1783,"integration_methods":1791,"recommended_methods":1804,"default_integration_method":1805,"faq_categories":1811,"translations":1812,"platforms_id":518},"2024-12-20T15:00:22.000Z","\u002Fdocs\u002Fintegrations\u002Fquick-start-figma","plugin","Figma plugin","Localization plugin","Quickly translate your Figma designs and seamlessly reuse the translations during the development of your project.",[],{"id":740},{"id":1769},"7573fed6-8817-4cb4-84d2-be327e6c4891",{"id":22,"status":4,"sort":62,"created_on":944,"label":1771,"hidden":227,"icon":1772,"translations":1774},"Design tools",{"id":1773},"1053d863-b690-4fbd-aadf-dbf2ba282768",[1775,1776,1779,1782],{"id":22,"languages_code":925,"label":1771},{"id":1777,"languages_code":927,"label":1778},42,"Herramientas de diseño",{"id":1780,"languages_code":930,"label":1781},49,"Nástroje pro návrh",{"id":624,"languages_code":933,"label":1771},[1784],{"id":22,"status":4,"sort":62,"label":1771,"hidden":227,"created_on":944,"icon":1785,"translations":1786},{"id":1773},[1787,1788,1789,1790],{"id":22,"languages_code":925,"label":1771},{"id":1777,"languages_code":927,"label":1778},{"id":1780,"languages_code":930,"label":1781},{"id":624,"languages_code":933,"label":1771},[1792],{"id":62,"status":4,"sort":8,"label":1729,"alternative_label":1729,"slug":1793,"description":1794,"documentation_link":152,"loc_icon":1733,"is_official_plugin":229,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1795},"official-plugin","Our developers maintain an official plugin for this integration. Start in a few clicks!",[1796,1797,1800,1801],{"id":62,"languages_code":925,"label":1729,"description":1794,"slug":1793},{"id":347,"languages_code":927,"label":1798,"description":1799,"slug":8},"Plugin Oficial","Nuestros desarrolladores mantienen un plugin oficial para esta integración. ¡Empiece con unos pocos clics!",{"id":338,"languages_code":933,"label":1729,"description":1794,"slug":1793},{"id":531,"languages_code":930,"label":1802,"description":1803,"slug":8},"Oficiální Plugin","Naši vývojáři udržují a neustále vylepšují oficiální plugin pro tuto integraci. Začněte několika kliknutími!",[],{"id":62,"status":4,"sort":8,"label":1729,"alternative_label":1729,"slug":1793,"description":1794,"documentation_link":152,"loc_icon":1733,"is_official_plugin":229,"is_universal_plugin":227,"universal_plugin_vendor":8,"translations":1806},[1807,1808,1809,1810],{"id":62,"languages_code":925,"label":1729,"description":1794,"slug":1793},{"id":347,"languages_code":927,"label":1798,"description":1799,"slug":8},{"id":338,"languages_code":933,"label":1729,"description":1794,"slug":1793},{"id":531,"languages_code":930,"label":1802,"description":1803,"slug":8},[],[1813],{"languages_code":925,"name":738,"slug":737,"description":8,"support_type":1762,"meta_title":8,"meta_description":8,"marketing_subtitle":1763,"tile_subtitle":1764,"tile_description":1765,"id":518,"platforms_id":518,"docs_link":1761},{"id":1815,"owner":1816,"created_by":8,"sort":8,"title":1821,"slug":1822,"modified_on":53,"created_on":1823,"pinned":227,"badge":8,"priority":1824,"main_image":1825,"status":4,"tags":1826,"dictionary":1837,"reading_time":1838,"excerpt":-1,"og_title":53,"og_description":53,"og_image":53},"69ea1abb7ab1270001ede902",{"id":1817,"first_name":1818,"last_name":53,"slug":1819,"avatar":1820},"606c233dcf7b6a0001d1da93","Petr Hodný","petr-hodny","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fpetr.png","You can just build things. But should you? The build vs. buy debate in localization","build-vs-buy-in-localization-you-can-build-things-but-should-you","2026-05-25T08:43:00.000+02:00","0.7","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F05\u002Flocalazy-Vibe-coding.png",[1827,1831,1835],{"id":469,"created_on":1828,"status":4,"label":1829,"slug":1830,"on_index_page":229},"2026-06-01 01:28:26","AI","ai",{"id":1832,"created_on":1828,"status":4,"label":1833,"slug":1834,"on_index_page":227},646,"Business Development","business-development",{"id":518,"created_on":1828,"status":4,"label":419,"slug":1836,"on_index_page":229},"localization",[],0,{"id":1840,"owner":1841,"created_by":8,"sort":8,"title":1842,"slug":1843,"modified_on":53,"created_on":1844,"pinned":227,"badge":8,"priority":1824,"main_image":1845,"status":4,"tags":1846,"dictionary":1850,"reading_time":1838,"excerpt":-1,"og_title":53,"og_description":53,"og_image":53},"69d78a237ab1270001eddabf",{"id":1817,"first_name":1818,"last_name":53,"slug":1819,"avatar":1820},"Translation API: Translate your content on the fly with Localazy AI!","translation-api-translate-your-content-on-the-fly-with-localazy-ai","2026-04-24T09:27:26.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F04\u002FLocalazy-AI-translation-api.png",[1847,1848,1849],{"id":518,"created_on":1828,"status":4,"label":838,"slug":842,"on_index_page":227},{"id":469,"created_on":1828,"status":4,"label":1829,"slug":1830,"on_index_page":229},{"id":518,"created_on":1828,"status":4,"label":419,"slug":1836,"on_index_page":229},[],{"product":1852,"relatedPosts":2036,"caseStudies":2334,"productSections":3932,"pricingPlanFeatures":4081},{"id":62,"status":4,"owner":1853,"created_on":1854,"modified_on":1855,"slug":607,"header":1856,"subheader":1857,"documentation_link_btn_label":1858,"video_fullscreen_source":1859,"meta_title":1860,"meta_description":1861,"category":1862,"emoji":1863,"experimental_feature":8,"card_bg_color":8,"card_add_file_padding":8,"background_image":1864,"meta_image":1866,"card_image":8,"product_tag":1868,"faqs":1870,"features":1970,"docs":1977,"product_sections":2035},"2bac48a8-b362-482f-b574-3bc71dca4c5b","2026-02-23T12:15:47.000Z","2026-02-23T12:15:48.000Z","i18n & l10n CLI","The most advanced command-line interface for i18n and seamless translation management for developers. Automate the flow of data between your project and Localazy with two simple commands.","How does it work?","https:\u002F\u002Fvideo.localazy.com\u002FCLI_video.mp4","Localazy CLI: Automated Localization for Developers","Localazy CLI automates software translation workflows and streamlines i18n for your development team. Handle complex localization scenarios, manage translations across different environments, and integrate automated localization into your CI\u002FCD pipeline.","dev_tools","⌨️",{"id":1865},"1531d960-6276-4181-be18-f34f84ed486e",{"id":1867},"fa036d5c-97a8-4ad1-880b-da651c1f901f",{"id":347,"status":4,"created_on":1869,"label":826,"slug":607,"on_index_page":227},"2022-03-17T12:22:58.000Z",[1871,1879,1890,1898,1906,1913,1921,1929,1937,1946,1954,1962],{"id":1681,"status":4,"title":1872,"content":1873,"slug":1874,"created_on":1875,"modified_on":1876,"owner":1853,"meta_title":8,"category":1877},"What is localization automation?","Localization automation is, at its core, the process of making the localization process faster and more agile by automating specific tasks (i.e., [string management and translation](\u002Fdocs\u002Fgeneral\u002Fvirtual-translator), [format conversions](\u002Fdocs\u002Fcli\u002Fformat-conversions), [delivery of localized files](\u002Fdocs\u002Fgeneral\u002Flocalazy-cdn) etc.) that otherwise would consume a lot of time to complete.\n\nLocalazy is here to help product teams and single developers automate the [localization](\u002Fdictionary\u002Flocalization) of their projects. \n\nYou might be interested in:\n- [How to prepare your application for i18n & l10n](\u002Fguide-preparing-application-for-i18n-l10n-localazy)\n- [Localization automation - language as a product or service?](\u002Fblog\u002Flocalization-automation-language-product-service)\n","what-is-localization-automation","2022-03-17T12:23:00.000Z","2025-02-26T12:50:45.000Z",{"id":43,"status":4,"created_on":1878,"sort":8,"slug":1836,"label":419,"on_faq_index":229},"2022-03-17T12:22:57.000Z",{"id":1880,"status":4,"title":1881,"content":1882,"slug":1883,"created_on":1884,"modified_on":1884,"owner":1885,"meta_title":8,"category":1886},199,"How can Localazy simplify the localization process for my product team?","Localazy will streamline your localization process, serve as a source of truth for your translations, and facilitate collaboration with your team and translators.  \n\n**The main benefits of Localazy for product managers include:**\n- Less back and forth between team member tasks\n- Simply defined process, clear visibility of the progress, and the definition of done\n- Automated distribution and change management\n- Less time spent on managing translators\n\nLocalazy offers over [50 integration options](\u002Fintegrations), including native plugins for [Figma](\u002Ffeatures\u002Ffigma-localization-plugin), [Strapi](\u002Ffeatures\u002Fstrapi-localization-plugin) & [Zapier](\u002Ffeatures\u002Fzapier-integration). You can also integrate your product with Localazy via [API](\u002Ffeatures\u002Ftranslation-api), [CLI](\u002Ffeatures\u002Fcli), and mobile SDKs for [Android](\u002Fdocs\u002Fandroid\u002Flocalazy-gradle-plugin) and [iOS](\u002Fdocs\u002Fios\u002Finstallation-and-setup). \n\nYou can use Localazy to offload the translation work from your team completely. Thanks to the built-in [Continuous Localization services](\u002Ffeatures\u002Fcontinuous-localization-team), you can get your project translated by professionals and don't have to worry about any task handling. \n\n[Learn how proactive professional translation services by Localazy work.](\u002Fdocs\u002Fgeneral\u002Fcontinuous-localization-team)","how-can-localazy-simplify-the-localization-process-for-product-teams","2022-09-15T11:15:41.000Z","4d38dee1-a9d9-4a00-a57d-3ced2b7cb39c",{"id":959,"status":4,"created_on":1887,"sort":8,"slug":1888,"label":1889,"on_faq_index":227},"2022-07-20T11:47:11.000Z","project-localization","Project Localization",{"id":1891,"status":4,"title":1892,"content":1893,"slug":1894,"created_on":1895,"modified_on":1896,"owner":1885,"meta_title":8,"category":1897},417,"What exactly is Localazy CLI and what are its core capabilities?","Localazy CLI is a robust command-line interface tool designed for handling software localization workflows. It serves as a bridge between your development environment and Localazy's translation platform.\n\nThe CLI handles both uploading source files for translation and downloading completed translations back into your project structure. It supports complex localization scenarios like plurals, string arrays, and nested key structures. \n\nBeyond basic file operations, it provides features for versioning (through Release Tags), project branching, and format conversions. The CLI integrates with CI\u002FCD pipelines and can be automated as part of your build process, making it particularly valuable for teams practicing continuous deployment.","what-exactly-is-localazy-cli-and-what-are-its-core-capabilities","2025-02-04T19:40:25.000Z","2025-02-04T19:40:32.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1899,"status":4,"title":1900,"content":1901,"slug":1902,"created_on":1903,"modified_on":1904,"owner":1885,"meta_title":8,"category":1905},419,"How do I set up my Localazy CLI configuration?","The configuration process centers around the `localazy.json` file in your project root.\n\nAn example configuration includes:\n\n```\n{\n    \"writeKey\": \"your-write-key\",\n    \"readKey\": \"your-read-key\",\n    \"upload\": {\n        \"type\": \"json\",\n        \"files\": {\n            \"pattern\": \"src\u002F**\u002Flocales\u002F*.json\",\n            \"path\": \"${path}\",\n            \"file\": \"${file}\"\n        }\n    },\n    \"download\": {\n        \"files\": \"src\u002Flocales\u002F${lang}\u002F${file}\"\n    }\n}\n```\n\nThe configuration supports variables, conditions, transformations, and format-specific features. You can also include group definitions for organizing different sets of files and rules for handling special cases.","how-do-i-set-up-my-localazy-cli-configuration","2025-02-04T19:48:23.000Z","2025-02-26T12:44:57.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1907,"status":4,"title":1908,"content":1909,"slug":1910,"created_on":1903,"modified_on":1911,"owner":1885,"meta_title":8,"category":1912},420,"What's the best way to handle existing translations with Localazy CLI?","Localazy CLI provides several methods for importing existing translations:\n\n- Use autodetectLang variable to automatically detect language from file paths\u002Fnames\n- Explicitly specify languages in your configuration\n- Use groups to separate source language uploads from existing translations\n\n**Basic configuration can look like this:**\n```\n{\n    \"upload\": {\n        \"files\": [\n            {\n                \"pattern\": \"src\u002Flocales\u002Fen\u002F*.json\",\n                \"lang\": \"inherited\"\n            },\n            {\n                \"group\": \"existing\",\n                \"pattern\": \"src\u002Flocales\u002F*\u002F*.json\",\n                \"excludes\": [\"src\u002Flocales\u002Fen\u002F*.json\"],\n                \"lang\": \"${autodetectLang}\"\n            }\n        ]\n    }\n}\n```\n\nThis setup lets you run `localazy upload` for regular source updates and `localazy upload existing` for one-time import of existing translations.","whats-the-best-way-to-handle-existing-translations-with-localazy-cli","2025-02-04T19:56:28.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1914,"status":4,"title":1915,"content":1916,"slug":1917,"created_on":1918,"modified_on":1919,"owner":1885,"meta_title":8,"category":1920},313,"Is it possible to manage multiple folders in one Localazy project?","Yes, absolutely. You can have multiple files in different folders uploaded to the same project. \n\nYou can include files by their exact path or by using standard path wildcards `?` (single character), `*` (anything except path separator), `**` (anything including path separators).\n\nYou can control files you want to upload with exclusion rules and [conditions](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fconditions).\n\nExample:\n\n``` \n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": \"modules\u002F**\u002Fen.json\"\n  }\n \n}\n```\nThe above configuration will scan for files named en.json in all subfolders of the modules folder.\n ","is-it-possible-to-manage-multiple-folders-in-one-localazy-project","2023-12-11T09:41:08.000Z","2025-10-30T12:34:28.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1922,"status":4,"title":1923,"content":1924,"slug":1925,"created_on":1926,"modified_on":1927,"owner":1885,"meta_title":8,"category":1928},286,"Where can I find my access keys?","As a developer, connecting to your Localazy project via [Localazy CLI](\u002Fdocs\u002Fcli\u002Fthe-basics) requires you to provide your unique `readKey` and `writeKey`to authorize upload and download operations.\n\nYou need to have the [Owner role](\u002Fdocs\u002Fgeneral\u002Fdefining-user-roles) in the project to access your unique access keys. Then, navigate to the project and open the left menu to find  **Settings ->Access Keys**\n\n> Learn more in the [Localazy CLI: Authorization](\u002Fdocs\u002Fcli\u002Fauthorization)\n","where-can-i-find-my-access-keys","2023-07-14T09:24:55.000Z","2023-07-14T09:24:57.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1930,"status":4,"title":1931,"content":1932,"slug":1933,"created_on":1934,"modified_on":1935,"owner":1853,"meta_title":8,"category":1936},116,"I have trouble with my CLI configuration. Can you help me?","The Localazy CLI is a powerful tool designed to automate the process of uploading and downloading translation files in almost any project. If you encounter any issues or questions that are not addressed in the [documentation](\u002Fdocs\u002Fcli), there's no need to worry as we're happy to help you to overcome these challenges.\n\nSimply reach out to us through our chat, and we'll make every effort to assist you promptly. Alternatively, you can send an email to team@localazy.com, providing your configuration details and a clear description of your goal. We will respond as quickly as possible to ensure your seamless experience with Localazy.","i-have-trouble-with-my-cli-configuration-can-you-help-me","2022-03-17T12:23:02.000Z","2025-02-04T19:27:42.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1938,"status":4,"title":1939,"content":1940,"slug":1941,"created_on":1942,"modified_on":1943,"owner":1944,"meta_title":8,"category":1945},529,"How can Localazy CLI integrate into my CI\u002FCD workflow?","Localazy CLI fits directly into your existing build pipeline without requiring you to change your project structure or source code. You configure it through a `localazy.json` file in your project root, then call `localazy upload` and `localazy download` as steps in your pipeline.\n\nThe typical pattern is straightforward: upload runs when new source strings are merged into your development branch, giving translators time to work while you continue building. Download runs when you're ready to cut a release, pulling in all approved translations automatically.\n\nFor [GitHub Actions](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-github-actions-localazy), [GitLab CI](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-gitlab-cicd-localazy), and [Bitbucket Pipelines](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-bitbucket-pipelines-localazy), the setup follows the same principle. Store your `LOCALAZY_WRITE_KEY` and `LOCALAZY_READ_KEY` as repository secrets, reference them in your pipeline configuration, and define the trigger conditions. For example, uploading only when the source locale file changes, and downloading only on tagged releases.\n\n```\n# GitLab CI example — upload on merge to staging\nlocalazy-upload:\n  image:\n    name: localazy\u002Fcli:latest\n  rules:\n    - changes:\n        - src\u002F**\u002Flocale\u002Fen.json\n      if: '$CI_COMMIT_BRANCH == \"staging\"'\n  script:\n    - localazy upload -w $LOCALAZY_WRITE_KEY -r $LOCALAZY_READ_KEY\n```\n\nThe CLI is available as a native binary for all major operating systems, as a Java JAR, and as a Docker image, so it works in any CI environment. Once set up, the pipeline handles translation synchronization automatically — developers commit code, translators work in the Localazy dashboard, and localized builds are produced without anyone managing files manually.","how-can-localazy-cli-integrate-into-my-ci-cd-workflow","2026-02-23T07:51:49.000Z","2026-02-23T09:44:24.000Z","bdae5800-3b2a-4ba7-b519-a014cbca68a0",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1947,"status":4,"title":1948,"content":1949,"slug":1950,"created_on":1951,"modified_on":1952,"owner":1944,"meta_title":8,"category":1953},530,"Should I use Localazy CLI or Android\u002FiOS SDK for mobile app localization?","The CLI and the SDKs solve different problems, and in many projects, you'll use both.\n\nThe CLI handles the pipeline side: uploading source strings to Localazy and downloading completed translations back into your build. It works at the file level — it reads your Android `.xml` or iOS `.strings`\u002F`.xcstrings` files, syncs them with Localazy, and writes the translated versions back to disk as part of your build process. There's no library added to your app, and no runtime dependency. For teams that want clean separation between localization tooling and the app itself, the CLI-only approach is a solid choice.\n\nThe [Android Gradle](https:\u002F\u002Flocalazy.com\u002Fintegrations\u002Fandroid) plugin and [iOS Swift](https:\u002F\u002Flocalazy.com\u002Fintegrations\u002Fios) SDK go a step further by enabling [over-the-air (OTA) translation updates](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fota-updates). Once the SDK is integrated into your app, new or corrected translations can be delivered directly to users through Localazy's CDN without requiring an app store update or a new release. The SDK handles caching, locale detection, and only downloads what's changed. For mobile teams that need to fix translation errors quickly or launch new languages between releases, this is a significant practical advantage.\n\nThe tradeoff is integration depth. The SDK adds a lightweight runtime dependency to your app and requires initialization in your application class (Android) or app delegate (iOS). The CLI requires no app-level changes at all.\n\nA common setup: use the CLI in your [CI\u002FCD pipeline](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automate-your-localization-in-ci-cd-pipelines) to keep source strings and translations in sync during development, and integrate the SDK for production OTA delivery. If you build for both Android and iOS, the CLI can manage both platforms from a single workflow, handling format conversion automatically between the two.","should-i-use-localazy-cli-or-android-i-os-sdk-for-mobile-app-localization","2026-02-23T11:57:42.000Z","2026-02-23T11:57:49.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1955,"status":4,"title":1956,"content":1957,"slug":1958,"created_on":1959,"modified_on":1960,"owner":1944,"meta_title":8,"category":1961},531,"How do I use Localazy CLI with Branching?","[Branching](https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fbranching) in Localazy lets you maintain separate translation states for different versions of your software — for example, a feature under active development, a stable release, or a white-labeled variant. Each branch is a copy of the main project, including its [glossary](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fhow-to-define-your-glossary), [screenshots](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fscreenshots), and [contributor permissions.](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fdefining-user-roles)\nFrom the CLI, you create and switch between branches using the `--branch` flag, which can be added to `upload`, `download`, `cdn`, and `tag` commands. This means your pipeline for a feature branch uploads strings to that branch's translation state without affecting main.\n\n```\n# Create a new branch from main\nlocalazy branch create main feature\u002Fpayments\n\n# Upload source strings to the feature branch\nlocalazy upload --branch feature\u002Fpayments\n\n# Download translations for the feature branch\nlocalazy download --branch feature\u002Fpayments\n```\n\nWhen the feature is ready to ship, you merge it back. If there are conflicts, such as the same key being edited in both branches, the CLI surfaces them through `localazy branch conflicts`, and you can handle them manually or apply an automatic resolution strategy.\n\nOne thing to highlight about pricing: each branch counts against your source key limit, but Localazy only counts the \"affected\" keys inside the branch, not a full copy of every key.\n\nThis workflow maps well to how most teams already use Git. Your Localazy branching structure can mirror your code branches, keeping translation states in sync with development without translators ever needing to know which branch they're working on — you control that at the CI level.","how-to-use-localazy-cli-with-branching","2026-02-23T12:09:08.000Z","2026-02-23T12:09:15.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},{"id":1963,"status":4,"title":1964,"content":1965,"slug":1966,"created_on":1967,"modified_on":1968,"owner":1944,"meta_title":8,"category":1969},532,"How do I use Localazy CLI with Releases?","[Release](https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Freleases) Tags let you control exactly which version of translations gets served to users in each environment, independent of what translators are actively working on.\n\nBy default, every change published in Localazy becomes part of the `latest` tag automatically, updated within 15-minute intervals. This is useful during development, but in production you typically don't want live translator edits to reach users immediately. Release Tags solve this by creating a named snapshot of your project's current translation state.\n\n```\n# Publish current translations as a staging release\nlocalazy tag publish staging\n\n# When ready, promote staging to production\nlocalazy tag promote staging production\n\n# Or tag a specific version\nlocalazy tag promote staging v2.1\n```\n\nOnce a tag is published, its content stays fixed unless you explicitly update it. Translators can continue working, and new strings can be added without affecting what `production` serves. When you're confident in the new state, promote `staging` to `production` with a single command.\n\nIn a [CI\u002FCD pipeline](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automate-your-localization-in-ci-cd-pipelines), the pattern works like this: your upload step pushes new source strings to Localazy on merge; translators translate in the dashboard; your release pipeline downloads using the `-t` flag to pull a specific tag, then promotes it if tests pass.\n\n```\n# Download translations pinned to the production tag\nlocalazy download -t production\n```\n\nThis gives you a clean separation between \"translations being worked on\" and \"translations shipped to users,\" with no manual file management involved.","how-to-use-localazy-cli-with-releases","2026-02-23T12:15:16.000Z","2026-02-23T12:15:24.000Z",{"id":107,"status":4,"created_on":1878,"sort":50,"slug":607,"label":826,"on_faq_index":229},[1971],{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},"2022-03-17T12:23:43.000Z","The most advanced command-line interface for i18n and seamless translation management for developers. ","Included","Powerful multiplatfom CLI","\u002Ffeatures\u002Fcli",[1978,1988,1997,2007,2016,2025],{"id":333,"status":4,"slug":1979,"title":1980,"excerpt":1981,"content":1982,"created_on":1983,"modified_on":1984,"meta_title":1980,"meta_description":1981,"pinned":229,"sort":1985,"section":1986},"the-basics","The Basics","Start localizing your app with Localazy CLI. It's simple to start yet flexible enough for any project. ","Localazy CLI is our command-line interface, and you can use it to upload files to the Localazy platform and download translations back to your app. You can easily integrate it into your build chain or CI\u002FCD. \n\nWe are developers, and we make Localazy for developers. Therefore, the CLI is the first-class citizen, flexible and full-featured. \nIt's not only a limited extension. \n\nLocalazy CLI is a versatile tool. It's simple to start with it but it works also for complex projects with modules, libraries, different product flavors and existing translations.\n\n\u003Ciframe width=\"100%\" height=\"540px\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FBD3XNe11yu8\" title=\"Localazy Quickstart for Developers: Get Started with the CLI\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C\u002Fiframe>\n\n## Getting started\n\n**1)** [Download or install the Localazy CLI](\u002Fdocs\u002Fcli\u002Finstallation). It's available for all major operating systems, as Java's JAR and Docker image. \n\n**2)** Create configuration script `localazy.json` that tells the CLI tool what files to upload and how to process downloaded translations. \n::: info\nTIP: \u003Ca href=\"https:\u002F\u002Fraw.githubusercontent.com\u002Flocalazy\u002Fcli-schema\u002Fmaster\u002Flocalazy.json\">JSON Schema\u003C\u002Fa> is available for smart completion.\n:::\n\n**3)** Run `localazy upload` for uploading your strings to the Localazy platform. Do it whenever you change your source language.\n\n**4)** Run `localazy download` for downloading translation back to your app. It's a great idea to make it a part of your build chain.  \n \n*Note: In this documentation, we always use `localazy` as the command that should be invoked. However, the command can be different based on your setup (eg. `localazy.exe` on Windows).* \n\n## The first configuration script\n\nThe script below is very simple. It uploads your source file `file_en.json` to Localazy and place downloaded translated files to `file_XX.json` where `XX` is the language of the translated file.  \n\n```json\n{\n\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\",\n\n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": \"path\u002Ffile_en.json\"\n  },\n\n  \"download\": {\n    \"files\": \"path\u002Ffile_${lang}.json\"\n  },\n\n  \"conversion\": {},\n\n  \"transformations\": []\n  \n}\n```  \n\n* The **writeKey** and **readKey** authorize your request. See [Authorization](\u002Fdocs\u002Fcli\u002Fauthorization) for more information.\n* The **upload** section tells Localazy CLI how to collect files that should be uploaded and optionally can provide metadata for uploaded files. See [Upload Reference](\u002Fdocs\u002Fcli\u002Fupload-reference) for more information.\n* The **download** section describes how to process translated files and where to write them. See [Download Reference](\u002Fdocs\u002Fcli\u002Fdownload-reference) for more information.\n* The **conversion** section describes how to convert translated files between different formats. See [Format Conversions](\u002Fdocs\u002Fcli\u002Fformat-conversions) for more information.\n* The **Transformations** section allows defining rule for string transformations. Using transformations, you can eg. obtain file metadata from its path or build the specific path where to write translated files. See [Transformations](\u002Fdocs\u002Fcli\u002Ftransformations) for more information.\n* The placeholder `${lang}` is a [variable](\u002Fdocs\u002Fcli\u002Fvariables).  \n\nEvery Localazy CLI configuration file uses the same structure as described above. \n\n## The more complex example\n\nLet's say that there are more source files in different folders and that you want to preserve the path, and the file name.  \n\n```json\n{\n\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\",\n\n  \"transformations\": [\n    {\n      \"name\": \"cleaned_file\", \n      \"source\": \"${file}\",\n      \"operations\": [\n        \"remove: _en\"\n      ]   \n    },\n    {\n      \"name\": \"file_without_ext\",\n      \"source\": \"${file}\",\n      \"operations\": [\n        \"substringBeforeLast: .\"\n      ]     \n    }\n  ],\n\n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": {\n      \"pattern\": \"path\u002F**\u002F*_en.json\",\n      \"file\": \"${cleaned_file}\",\n      \"path\": \"${path}\"\n    }\n  },\n\n  \"download\": {\n    \"files\": \"${path}\u002F${file_without_ext}_${lang}.json\"\n  }\n  \n}\n```  \n\nIn the [**upload**](\u002Fdocs\u002Fcli\u002Fupload-reference) section, files are collected using wildcards and with transformations, we remove `_en` suffix from the file name. This way, the phrases are uploaded with the nice and cleaned file name. \n\nIn the [**download**](\u002Fdocs\u002Fcli\u002Fdownload-reference) section, the output path is build dynamically for each of files. We simply use the stored path with `${path}`, remove extension from the file name and add the language code and restore the extension.  \n\nOf course, we could remove the whole `_en.json` from the file name in the **upload** section but this way, we preserve the correct file names.\n\nThe [**transformations**](\u002Fdocs\u002Fcli\u002Ftransformations) section defines how to transform input string (which could be almost anything) to the output one. In this example, we have two rules: `cleaned_file` removes the `_en` substring and `file_without_ext` removes the file extension.     \n\n## Android with build type and product flavors\n\nAs the last example, let's examine even more complex configuration that allows uploading and downloading strings for complex Android app maintaining correct build types and product flavors. It can upload the source language as well as all existing translations. \n\n```\n{\n\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\",\n    \n  \"transformations\": [\n    {\n      \"name\": \"product_flavors\",\n      \"source\": \"${path}\",\n      \"operations\": [\n        \"androidProductFlavors: gp am, free full auto\"\n      ]\n    },\n    {\n      \"name\": \"build_type\",\n      \"source\": \"${path}\",\n      \"operations\": [\n        \"androidBuildType: debug, release\"\n      ]\n    }\n  ],\n\n  \"upload\": {\n  \n    \"type\": \"android\",\n\n    \"folder\": \"\u002Fhome\u002Fwork\u002Fmyapp\",\n    \n    \"files\": [\n    \n      {\n        \"pattern\": \"src\u002F*\u002Fres\u002Fvalues\u002Fstrings*.xml\",\n        \"excludes\": [\n          \"**\u002Fstrings_private.xml\"\n        ],\n        \"productFlavors\": \"${product_flavors}\",\n        \"buildType\": \"${build_type}\"\n      },\n      \n      {\n        \"group\": \"all\",\n        \"pattern\": \"src\u002F*\u002Fres\u002Fvalues-*\u002Fstrings*.xml\",\n        \"lang\": \"${autodetectLang}\",\n        \"excludes\": [\n          \"**\u002Fvalues\u002F**\",\n          \"**\u002Fstrings_private.xml\",\n        ],\n        \"productFlavors\": \"${product_flavors}\",\n        \"buildType\": \"${build_type}\"\n      }\n      \n    ]\n  },\n\n  \"download\": {\n    \"folder\": \"\u002Fhome\u002Fwork\u002Fmyapp\",\n    \"files\": \"src\u002F${androidFlavoredFolder}\u002Fres\u002Fvalues-${langAndroidRes}\u002F${file}\"\n  }\n\n}\n```\n\nThe [**transformations**](\u002Fdocs\u002Fcli\u002Ftransformations) section uses built-in functions to get the build type and product flavors from the file path. The language is obtained using [auto-detection through variable ${autodetectLang}](\u002Fdocs\u002Fcli\u002Fexisting-translations).\n\nIn the [**upload**](\u002Fdocs\u002Fcli\u002Fupload-reference) section, two rules are defined. One for uploading the source language and the second for [all other existing translations](\u002Fdocs\u002Fcli\u002Fexisting-translations). The second rule is [placed into group **all**](\u002Fdocs\u002Fcli\u002Fcommand-line-options#groups) and thus it's not run automatically.\n\nFor files collected during **upload**, metadata **lang**, **buildType** and **productFlavors** are provided allowing the Localazy platform to correctly handle them. \n\nIt's possible to upload the source language by simply invoking `localazy upload`. It's also possible to upload all existing translations by invoking `localazy upload all` which runs both rules. \n\nBecause our uploaded data are perfectly prepared, all we need to do in the [**download**](\u002Fdocs\u002Fcli\u002Fdownload-reference) section is to write them to the right place. Using built-in precalculated [**variables**](\u002Fdocs\u002Fcli\u002Fvariables) `${androidFlavoredFolder}` and `${langAndroidRes}`, it's simple to build the correct path.   \n\nInvoking `localazy download` before build or as a part of the build chain will ensure that our app always contains the most recent translations. \n\n\n## The final note\n\nAs you can see, Localazy CLI can be used to upload simple projects, but it's flexible enough to handle large and complex situation. \n\nNot sure how to use it for your particular project? [Contact us for help!](https:\u002F\u002Flocalazy.com\u002Fcontact)\n\n","2022-03-18T07:51:24.000Z","2025-02-18T08:47:53.000Z","30000",{"id":22,"slug":607,"name":826,"featured_icon":1987},{"id":834},{"id":297,"status":4,"slug":1989,"title":1990,"excerpt":1991,"content":1992,"created_on":1983,"modified_on":1993,"meta_title":1990,"meta_description":1991,"pinned":229,"sort":1994,"section":1995},"installation","Installation","Learn how to install Localazy CLI for Linux, Windows and macOS or as a Java app or Docker image.","Localazy CLI is available as a native app for all major platforms (Windows, Linux and macOS), Java' JAR, npm package and Docker image.\n\nFor more information about using Localazy CLI please refer to [basics](\u002Fdocs\u002Fcli\u002Fthe-basics) and [command-line options](\u002Fdocs\u002Fcli\u002Fcommand-line-options).\n \n## NPM\n\nThe Localazy CLI is available on NPM repository as [**@localazy\u002Fcli**](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@localazy\u002Fcli).\n\n**Install:**\n\n```\nnpm install -g @localazy\u002Fcli\n```\n\n**Run CLI:**\n\n`localazy [command] [options] [groups]`\n\n::: info\nNode.js v18.20.7+ and NPM v6+ are required to run Localazy CLI.\n:::\n\n::: info\nNPM version of Localazy CLI doesn't support proxies (`--proxy`).\n:::\n\n## Linux\n\nLocalazy CLI for Linux is a native app, and it only has single dependency on `libcurl` (for HTTPS communication).\n\n### Debian\u002FUbuntu \n\n**Add repository and install:**\n\nRecommended way after `apt-key` gets deprecated:\n\n```shell script\ncurl -sS https:\u002F\u002Fdist.localazy.com\u002Fdebian\u002Fpubkey.gpg | sudo gpg --dearmor -o \u002Fetc\u002Fapt\u002Ftrusted.gpg.d\u002Flocalazy.gpg\necho \"deb [arch=amd64 signed-by=\u002Fetc\u002Fapt\u002Ftrusted.gpg.d\u002Flocalazy.gpg] https:\u002F\u002Fmaven.localazy.com\u002Frepository\u002Fapt\u002F stable main\" | sudo tee \u002Fetc\u002Fapt\u002Fsources.list.d\u002Flocalazy.list\n\nsudo apt-get update && sudo apt-get install localazy\n```\n\nOld way with `apt-key`:\n\n```shell script\ncurl -sS https:\u002F\u002Fdist.localazy.com\u002Fdebian\u002Fpubkey.gpg | sudo apt-key add - \necho \"deb [arch=amd64] https:\u002F\u002Fmaven.localazy.com\u002Frepository\u002Fapt\u002F stable main\" | sudo tee \u002Fetc\u002Fapt\u002Fsources.list.d\u002Flocalazy.list\n\nsudo apt-get update && sudo apt-get install localazy\n```\n\n**Run CLI:**\n\n`localazy [command] [options] [groups]`\n\n### RHEL\u002FCentOS\n\n**Download and install:**\n\n```shell script\ncurl -sS https:\u002F\u002Fdist.localazy.com\u002Frhel\u002Flocalazy.repo | tee \u002Fetc\u002Fyum.repos.d\u002Flocalazy.repo\n\nyum install localazy \n```\n\n**Run CLI:**\n\n`localazy [command] [options] [groups]`\n### Manual installation\n\nIf the `libcurl` is not installed on your system, install it:  \n\n* Debian\u002FUbuntu: `apt install libcurl4`\n* or use the standard package manager for your distribution  \n\n**Download DEB:**\n\n* [localazy-___CLI_VERSION___.deb](https:\u002F\u002Fdist.localazy.com\u002Fdeb\u002Flocalazy-___CLI_VERSION___.deb)\n\n**Download RPM:**\n\n* [localazy-___CLI_VERSION___.rpm](https:\u002F\u002Fdist.localazy.com\u002Frpm\u002Flocalazy-___CLI_VERSION___.rpm)\n\n**Download binary:**\n\n* [linux-___CLI_VERSION___.zip](https:\u002F\u002Fdist.localazy.com\u002Flinux\u002Flinux-___CLI_VERSION___.zip)\n* [linux-___CLI_VERSION___.tar](https:\u002F\u002Fdist.localazy.com\u002Flinux\u002Flinux-___CLI_VERSION___.tar)\n* [linux-___CLI_VERSION___.tar.gz](https:\u002F\u002Fdist.localazy.com\u002Flinux\u002Flinux-___CLI_VERSION___.tar.gz)\n\n**Run CLI:**\n\n`localazy [command] [options] [groups]`\n\n### Autocomplete for bash \u002F zsh\n\nYou can generate and install the autocomplete script for your shell by invoking command: \n\n```shell script\n# for bash\nsudo mkdir -p \u002Fusr\u002Fshare\u002Fbash-completion\u002Fcompletions && sudo bash -c '_LOCALAZY_COMPLETE=bash localazy > \u002Fusr\u002Fshare\u002Fbash-completion\u002Fcompletions\u002Flocalazy'\n\n# for zsh\n_LOCALAZY_COMPLETE=zsh localazy > ~\u002F.localazy-autocomplete.sh && echo source ~\u002F.localazy-autocomplete.sh >> ~\u002F.zshrc\n```\n\nThe bash autocomplete script is installed automatically when installed from repository, DEB or RPM. \n\n### Alpine Linux\n\nTo run Localazy CLI on Alpine Linux, you need to install necessary libraries:\n\n`apk add curl libstdc++ libc6-compat`\n\n**Download binary:**\n\n* [alpine-___CLI_VERSION___.zip](https:\u002F\u002Fdist.localazy.com\u002Falpine\u002Falpine-___CLI_VERSION___.zip)\n* [alpine-___CLI_VERSION___.tar](https:\u002F\u002Fdist.localazy.com\u002Falpine\u002Falpine-___CLI_VERSION___.tar)\n* [alpine-___CLI_VERSION___.tar.gz](https:\u002F\u002Fdist.localazy.com\u002Falpine\u002Falpine-___CLI_VERSION___.tar.gz)\n\n\n## macOS \n\nLocalazy CLI supports both **Arm64** and **Intel X64** Macs. \n\nLocalazy CLI is available through **brew**; just use the command-line to install it:\n```shell script\n> brew tap localazy\u002Ftools\n> brew install localazy\n```\n\nIn the future, you can update to the latest version of Localazy CLI with: \n```shell script\n> brew upgrade localazy\n```\n\n**Run CLI:**\n\n`localazy [command] [options] [groups]`\n\nYou can also download the binary directly. However, it depends on `libcurl` (can be installed with `brew install curl`). \n\n**Download direct binary:**\n\n* [macos-___CLI_VERSION___.zip](https:\u002F\u002Fdist.localazy.com\u002Fmacos\u002Fmacos-___CLI_VERSION___.zip)\n* [macos-___CLI_VERSION___.tar](https:\u002F\u002Fdist.localazy.com\u002Fmacos\u002Fmacos-___CLI_VERSION___.tar)\n* [macos-___CLI_VERSION___.tar.gz](https:\u002F\u002Fdist.localazy.com\u002Fmacos\u002Fmacos-___CLI_VERSION___.tar.gz)\n\n## Docker\n\n::: info\nThis Docker container is not supported on ARM-based Macs.\n:::\n\nThe Localazy CLI is available on Docker repository as [**localazy\u002Fcli**](https:\u002F\u002Fhub.docker.com\u002Fr\u002Flocalazy\u002Fcli). It has no **entrypoint** and no **cmd** and the `localazy` command is supposed to be run manually as per your needs. \n\nThe container is based on `ubuntu:22.04` so you can easily reuse it for more purposes. There is also Alpine Linux variant available. \n\nThe **workdir** inside the container is `\u002Flocalazy` and you should mount your working directory to it using `-v` parameter. \n\n#### Typical usage\n\n`docker run --rm -v $(pwd):\u002Flocalazy localazy\u002Fcli:latest localazy [command] [options] [groups]`\n\n**Details:**\n\n* `--rm` - the container is removed automatically when the operation finishes\n* `-v $(pwd):\u002Flocalazy` - mount the current directory as working directory\n* `localazy\u002Fcli:latest` - use the latest available Localazy CLI version\n* `localazy [command] [options] [groups]` - the actual invocation of Localazy CLI\n\n## Windows\n\nLocalazy CLI for Windows is a native app and has no dependencies.\n\n**Download:**\n\n* [windows-___CLI_VERSION___.zip](https:\u002F\u002Fdist.localazy.com\u002Fwindows\u002Fwindows-___CLI_VERSION___.zip)\n* [windows-___CLI_VERSION___.tar](https:\u002F\u002Fdist.localazy.com\u002Fwindows\u002Fwindows-___CLI_VERSION___.tar)\n* [windows-___CLI_VERSION___.tar.gz](https:\u002F\u002Fdist.localazy.com\u002Fwindows\u002Fwindows-___CLI_VERSION___.tar.gz)\n\n**Run CLI:**\n\n`.\\localazy.exe [command] [options] [groups]`\n\n*Note: Whenever working with file paths in the Localazy configuration file, we strongly advise you to use POSIX `\u002F` path separator instead of the backslash. It simplifies parsing and writing transformation rules.*\n\n## Java\u002FJVM\n\nFor using the Java version of Localazy CLI, you need JRE\u002FJDK 8 and above available on your machine.\n\n**Download:**\n\n* [java-___CLI_VERSION___.zip](https:\u002F\u002Fdist.localazy.com\u002Fjava\u002Fjava-___CLI_VERSION___.zip)\n* [java-___CLI_VERSION___.tar](https:\u002F\u002Fdist.localazy.com\u002Fjava\u002Fjava-___CLI_VERSION___.tar)\n* [java-___CLI_VERSION___.tar.gz](https:\u002F\u002Fdist.localazy.com\u002Fjava\u002Fjava-___CLI_VERSION___.tar.gz)\n\n**Run CLI:**\n\n`java -jar localazy.jar [command] [options] [groups]`\n\n## Notes\n\nThe native version of Localazy CLI available for Windows, Linux and macOS requires 64-bit system.\n\nIf you are still running 32-bit system, please use Java version with appropriate 32-bit JRE\u002FJDK. \n\n___CLI_LINKS___","2025-02-28T09:27:21.000Z","30010",{"id":22,"slug":607,"name":826,"featured_icon":1996},{"id":834},{"id":324,"status":4,"slug":1998,"title":1999,"excerpt":2000,"content":2001,"created_on":1983,"modified_on":2002,"meta_title":1999,"meta_description":2003,"pinned":227,"sort":2004,"section":2005},"authorization","Authorization","Learn how to authorize your request from Localazy CLI including other ways when providing keys in the configuration file is impractical for security reasons.","To authorize the upload and download operation, you have to provide **writeKey** and **readKey** for the particular project. Select the project from your [Dashboard](\u002Fmy\u002Fdashboard) and navigate to the **Settings** of your project. To obtain the keys, click on the **Access keys** tab. \n\nThere are several ways how you can provide the keys for the CLI tool.\n\n## Keys in the configuration file\n\nThe simplest and most common way is to provide **writeKey** and **readKey** in the configuration file **localazy.json**:\n\n```json\n{\n\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\",\n\n  \"upload\": {},\n  \"download\": {},\n  \"transformations\": []\n  \n}\n```  \n\nHowever, it may be impractical to provide the keys in the configuration file for security reasons. For example, if you share your source code on Github or other places. In such a situation, you should consider other ways of authorization described below.\n\n## Separate key file\n\nYou can store keys in a separate file called `localazy.keys.json`. If such a file exists, the keys are loaded from it. You can define a different key file using the command line: `localazy [command] -k keys.json`\n\nThe format of the file with keys is:\n\n```json\n{\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\"\n}\n``` \n\n## Keys provided on command line\n\nYou can also define both **writeKey** and **readKey** directly on the command line:\n\n`localazy [command] -r your-read-key -w your-write-key`\n  \n## Priority\n\nIf the keys are provided using more methods, the ones to be used are resolved this way:\n\n**1.** The keys from the configuration file, if provided, are used only if not provided by other way. \n\n**2.** The keys from the key file have higher priority than keys from the configuration file. \n\n**3.** The keys provided on the command line have the highest priority. Note that by using only **writeKey** or **readKey** on the command line, you can overwrite only the particular one.\n\n## Branching support\n\nIn the configuration file (`localazy.json`), you can specify the branch to perform the operation on using the `branch` parameter like this: \n\n```json\n{\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\",\n  \"branch\": \"[target branch]\"\n}\n``` \n\nYou can access any branch with `writeKey`\u002F`readKey` corresponding to a different one as long as you have permission to access both of them. \n\nSee [Branching](\u002Fdocs\u002Fcli\u002Fbranching) for detailed information. \n\n___CLI_LINKS___\n","2024-08-12T06:32:34.000Z","Learn how to authorize your request from Localazy CLI including other ways when providing keys in the configuration file is impractical fo security reasons.","30020",{"id":22,"slug":607,"name":826,"featured_icon":2006},{"id":834},{"id":319,"status":4,"slug":2008,"title":2009,"excerpt":2010,"content":2011,"created_on":1983,"modified_on":2012,"meta_title":2009,"meta_description":2010,"pinned":227,"sort":2013,"section":2014},"command-line-options","Command-Line Options","Learn advanced command-line parameters that you can use for using Localazy CLI in specific situations such as automated builds and testing.","For most situations, invoking `localazy upload` and `localazy download` in the correct folder is enough. However, there are numerous parameters that you can use in specific situations.\n\nThe general usage pattern for Localazy CLI is:\n\n`localazy [proxy] [command] [common options] [groups\u002Fsubcommands] [subcommand options]`\n\n## Proxy\n\nYou can define proxy servers for the communication using the `--proxy server:port` command parameter. Please remember that HTTPS-compliant proxy server is required. \n\nIf your proxy requires basic authentication, you can pass the credentials as `--proxy user:pass@server:port`.\n\n## Commands\n\n* **upload** - Run upload rules to collect files and upload them to Localazy servers for processing. \n* **download** - Download files from Localazy servers and run download and conversion rules on them.\n* **list** - List files all translated files available on the server.\n* **languages** - List languages available on Localazy including their current state.\n* **file** - Manage (rename and delete) files on the server.\n* **tag** - Manage release tags - list, publish and delete tags.\n* **cdn** - List all files on the Localazy CDN.\n* **conversion** - Access information about file format conversions.\n* **branch** - Create, list, merge and delete branches.\n\nFor help, invoke `localazy [command] -h`.\n\n## Common Options\n\nAll of the commands above require the `localazy.json` file and accept these command-line options:\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;c&nbsp;config.json\u003C\u002Fnobr>\u003C\u002Ftt> | Override the configuration file name. Default: `localazy.json` |\n| \u003Ctt>\u003Cnobr>&#8211;k keys.json\u003C\u002Fnobr>\u003C\u002Ftt> | Override the keys file name. See [Authorization](\u002Fdocs\u002Fcli\u002Fauthorization). Default: `localazy.keys.json` |\n| \u003Ctt>\u003Cnobr>&#8211;r read-key\u003C\u002Fnobr>\u003C\u002Ftt> | Provide the **readkey** on the command line. See [Authorization](\u002Fdocs\u002Fcli\u002Fauthorization). | \n| \u003Ctt>\u003Cnobr>&#8211;w write-key\u003C\u002Fnobr>\u003C\u002Ftt> | Provide the **writeKey** on the command line. See [Authorization](\u002Fdocs\u002Fcli\u002Fauthorization). | \n| \u003Ctt>\u003Cnobr>&#8211;d working-directory\u003C\u002Fnobr>\u003C\u002Ftt> | Set the working directory that all paths are relative to. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;no-colors\u003C\u002Fnobr>\u003C\u002Ftt> | Disable using colored output. |\n\n## Upload Options\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;s\u003C\u002Fnobr>\u003C\u002Ftt> | Do not perform the actual operation, only simulate the process. No files are uploaded nor written. |\n| \u003Ctt>\u003Cnobr>&#8211;q\u003C\u002Fnobr>\u003C\u002Ftt> | Quiet mode. Print only important information. |\n| \u003Ctt>\u003Cnobr>&#8211;f\u003C\u002Fnobr>\u003C\u002Ftt> | Force the upload operation if the validation step fails. |\n| \u003Ctt>\u003Cnobr>&#8211;v\u003C\u002Fnobr>\u003C\u002Ftt> | The app version used for automatic versioning of deprecated phrases. See [Upload Reference](\u002Fdocs\u002Fcli\u002Fupload-reference). |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;project&nbsp;{project}\u003C\u002Fnobr>\u003C\u002Ftt> | Specify the project slug or ID to ensure that the upload is only performed if matching write and read keys are used. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;failOnMissingGroups\u003C\u002Fnobr>\u003C\u002Ftt> | Fail if unknown group is provided on the command line. |\n| \u003Ctt>\u003Cnobr>&#8211;p&nbsp;key:value\u003C\u002Fnobr>\u003C\u002Ftt> | Provide additional parameters for [highly dynamic configurations](\u002Fdocs\u002Fcli\u002Fhighly-dynamic-configurations). |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;async\u003C\u002Fnobr>\u003C\u002Ftt> | Do not wait for the server to process the uploaded data and report errors. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n## Download Options\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;t tag\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation for the given release tag. |\n| \u003Ctt>\u003Cnobr>&#8211;s\u003C\u002Fnobr>\u003C\u002Ftt> | Do not perform the actual operation, only simulate the process. No files are uploaded nor written. |\n| \u003Ctt>\u003Cnobr>&#8211;q\u003C\u002Fnobr>\u003C\u002Ftt> | Quiet mode. Print only important information. |\n| \u003Ctt>\u003Cnobr>&#8211;f\u003C\u002Fnobr>\u003C\u002Ftt> | Force the upload operation if the validation step fails. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;failOnMissingGroups\u003C\u002Fnobr>\u003C\u002Ftt> | Fail if unknown group is provided on the command line. |\n| \u003Ctt>\u003Cnobr>&#8211;p&nbsp;key:value\u003C\u002Fnobr>\u003C\u002Ftt> | Provide additional parameters for [highly dynamic configurations](\u002Fdocs\u002Fcli\u002Fhighly-dynamic-configurations). |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n## List Options\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;t tag\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation for the given release tag. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n## Languages Options\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;csv\u003C\u002Fnobr>\u003C\u002Ftt> | Return the list in the CSV format for machine processing. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n## File Options\n\nThis command allows management of high-level files on the server and shows corresponding CDN addresses.\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n**List files:**\n\n`localazy file [common-options] list`\n\n**Delete file:**\n\n`localazy file [common-options] delete {fileId}`\n\n**Rename file:**\n\n`localazy file [common-options] rename {fileId} [-p new-path] [-f new-name]`\n\n## Tag Options\n\nThis command allows managing release tags.\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\nList all available tags including their publishing date and CDN addresses:\n\n`localazy tag [common-options] list`\n\nCreate\u002Fpublish the current translations under the tag:\n\n`localazy tag [common-options] publish {tag-name}`\n\nRemove the tag including corresponding data:\n\n`localazy tag [common-options] delete {tag-name}`\n\nRename existing tag:\n\n`localazy tag [common-options] rename {tag-name} {new-name}`\n\nPromote tag to another one (existing or new):\n\n`localazy tag [common-options] promote {tag-name} {target-tag}`\n\nMerge tags, manipulate string keys and languages:\n\n`localazy tag [common-options] merge [merge-parameters] {source-tag} {destionation-tag} {output-tag}`\n\nSee [Release Tags](\u002Fdocs\u002Fcli\u002Frelease-tags) for detailed information on all available commands and merge parameters. \n\n## CDN Options\n\nThis command lists all files available on CDN for the latest version or given release tag. Learn more about [Localazy CDN](\u002Fdocs\u002Fgeneral\u002Flocalazy-cdn).\n\n| Option | Description |\n| --- | --- |\n| \u003Ctt>\u003Cnobr>&#8211;t tag\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation for the given release tag. |\n| \u003Ctt>\u003Cnobr>&#8211;&#8211;branch\u003C\u002Fnobr>\u003C\u002Ftt> | Perform the operation against a specific branch. If not provided, the operation is performed against the project specified by `readKey` and `writeKey`. |\n\n## Conversion Options\n\nThis command allows for listing supported conversion:\n\n`localazy conversion [common-options] list`\n\nAnd for obtaining detailed information about selected conversion:\n\n`localazy conversion [common-options] format {conversion}`\n\n## Branching\n\nThis command allows for creating, listing, merging, and deleting branches. \n\nSee [Branching](\u002Fdocs\u002Fcli\u002Fbranching) for detailed information on all available commands and parameters. \n\n## Groups\n\nGroups allow for running only selected rules for **upload** and **download**.\n\nFor **upload**, the group the collected files belongs to is sent to the server as additional information and you can later use it in your **download** rules to decided what to do with the files.  \n\nLet's consider this sample configuration file:\n\n```json\n{\n  \"upload\": {\n    \"files\": [\n\n      {\n        \"pattern\": \"app\u002Ffiles\u002Fen.json\"\n      },\n    \n      {\n        \"group\": \"library\",\n        \"pattern\": \"library\u002Ffiles\u002Fen.json\"\n      },\n\n      {\n        \"group\": \"web\",\n        \"pattern\": \"web\u002Ffiles\u002Fen.json\"\n      }\n\n    ]\n  }\n}\n```\n\nFor the first upload rule with the pattern `app\u002Ffiles\u002Fen.json`, no group is provided. **Missing or empty group is considered default and is always applied.**\n\nBy invoking Localazy CLI with groups provided, you can easily decide what files to upload: \n\n* Invoking `localazy upload` uploads only `app\u002Ffiles\u002Fen.json` as the default group is always applied.\n* Invoking `localazy upload library` uploads `app\u002Ffiles\u002Fen.json` and `library\u002Ffiles\u002Fen.json` as both the default group and the library group are applied.\n* Invoking `localazy upload library web` uploads all three files. \n\nGroups are very effective for selecting resources you want to upload \u002F download. They are also great for having the default rule for the source language and a kind of `all` rule for the initial upload of all your existing translations. \n\n**Note:** You can access the group the collected files belonged to when they were uploaded but groups provided on the command line for **download** only filter the download rules.\n\n___CLI_LINKS___\n","2024-07-16T15:14:37.000Z","31000",{"id":22,"slug":607,"name":826,"featured_icon":2015},{"id":834},{"id":474,"status":4,"slug":2017,"title":2018,"excerpt":2019,"content":2020,"created_on":1983,"modified_on":2021,"meta_title":2018,"meta_description":2019,"pinned":227,"sort":2022,"section":2023},"upload-reference","Upload Reference","Learn about how to configure what files to upload to the Localazy platform.","The upload section defines how to collect files that you want to upload to the Localazy platform for localization and what metadata to include. It also defines how to process uploaded data.\n\nIf you need to upload existing translations along with your source language, be sure to [learn more about it](\u002Fdocs\u002Fcli\u002Fexisting-translations) to prevent future issues.\n\n## Upload configuration\n\nYou can configure many parameters such as product flavors, build types, modules and libraries. It allows you to fit Localazy for your project. You don't need to change your project to fit the localization solution.\n\nHowever, as CLI comes with sensible defaults, the most common case is to use upload in its simplest form.\n\n```json\n{\n  \u002F\u002F ... other parts omitted for brevity ...\n\n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": \"path\u002F*\u002Ffile.json\"\n  }\n\n}\n```\n\nThe full configuration of the upload section is:\n\n\n```json\n{\n\n  \"upload\": {\n    \"skipFailedAutodetection\": true,\n    \"deprecate\": \"file\",\n    \"importAsNew\": false,\n    \"forceCurrent\": false,\n    \"forceSource\": false,\n    \"filterSource\": true,\n    \"noSourceChanged\": false,\n    \"appVersion\": 0,\n    \"keySeparator\": \".\",\n    \"includeKeys\": [\"REGEX:key_.*\"],\n    \"excludeKeys\": [\"REGEX:private_.*\"],   \n    \"type\": \"json\",\n    \"features\": [\"multilingual\", \"...\"],\n    \"folder\": \"\",\n    \"files\": [\n      \u002F\u002F ...see Files configuration below ...\n    ]   \n  } \n\n}\n```\n\n| Field | Default | Description |\n| --- | --- | --- |\n| `skipFailedAutodetection` | _true_ | When set to **true** files that use [auto-detection](\u002Fdocs\u002Fcli\u002Fexisting-translations) are skipped if the auto-detection is not possible. When set to **false** an exception is raised. |\n| `deprecate` | _none_ | Tells the server to deprecate any key missing in this upload batch. Deprecated keys are still available but are not visible to translators. With value `file`, only keys missing in touched files are deprecated. With value `project`, all keys missing in this upload batch across whole project are deprecated. With default value `none`, nothing is deprecated. _Available from v1.6.0_ |\n| `deprecateMissing` | _false_ | Tells the server to deprecate any key missing in this upload batch. Deprecated keys are still available but are not visible to translators. _Deprecated - please use `deprecate=project` instead_ |\n| `importAsNew` | _false_ | Tells the server to import new phrases as unverified. Unverified phrases need to go through the review process. This option allows you to check translations using our unique review process if you are not sure of their quality. This option doesn't apply to the source language. |\n| `forceCurrent` | _false_ | Tells the server to promote changes in translated files as approved and current translations for phrases that are already translated. If set to **false**, such changes go to the review process. |\n| `forceSource` | _false_ | Tells the server to promote changes in the source language files even if there is a different version on Localazy. |\n| `filterSource` | _true_ | When set to **true**, strings that are the same as in the source language are not imported. This is important for platforms like iOS where localizable files contain the source phrase where the translation is not available. This option doesn't apply to the source language.\n| `noSourceChanged` | _false_ | When the source language changes for a phrase that is already translated, Localazy by default flags the existing translations as having a changed source so translators can review them. Use this option to suppress that flag and keep the existing translations untouched on the server. Set to **true** (or `\"all\"`) to apply to every language, **false** to keep the default behavior, or to a list of language codes (e.g. `[\"en\", \"es\"]`) — or a comma-separated string (e.g. `\"en,es\"`) — to limit the effect to specific languages only. |\n| `appVersion` | _0_ | Tells the server the version of the app in which the phrases where deprecated. It only makes sense with **deprecateMissing** switched to **true**. It allows for automatic versioning of deprecated phrases. This option can be provided on [the command-line with **-v** option](\u002Fdocs\u002Fcli\u002Fcommand-line-options).\n| `keySeparator` | _._ | The separator used for building structured keys for `includeKeys` and `excludeKeys`. See [excluding string keys](\u002Fdocs\u002Fcli\u002Fexcluding-string-keys) for more details. |\n| `includeKeys` | _[]_ | A list of rules for determining keys to include. See [excluding string keys](\u002Fdocs\u002Fcli\u002Fexcluding-string-keys) for more details. |\n| `excludeKeys` | _[]_ | A list of rules for determining keys to exclude. See [excluding string keys](\u002Fdocs\u002Fcli\u002Fexcluding-string-keys) for more details. |\n| `type` | _---_ | The type of files you are about to upload. The list of supported file formats is below. You can also defined the type separately for each of files. See Files configuration below. \n| `features` | _[]_ | The list of features (eg. how to parse plurals) to enable for the given **type**. See the list of supported file formats below for more information.\n| `folder` | _._ | The base folder all operations are relative to. It can be relative or absolute path. \n| `files` |  | Defines how to collect files for uploading and what parameters to upload along with them. See Files configuration below.  \n\n\n\n## Files configuration\n\nThe `files` contains a list of rules for collecting files for upload.\n\nYou can include files by their exact path or by using standard path wildcards `?` (single character), `*` (anything except path separator), `**` (anything including path separators).\n\nYou can control files that you want to upload with exclusion rules and [conditions](\u002Fdocs\u002Fcli\u002Fconditions).\n\n### Single file rule\n\nThis variant is useful mainly for uploading the source language only.\n\n```json\n{\n  \"upload\": {\n    \u002F\u002F ...other configuration...\n    \"files\": \"\u002Fpath\u002Fto\u002Ffile_en.json\" \n  }\n}\n```\n\nWhen the `files` is specified as string instead of array, CLI uses the string for `pattern` and inherit default values for all other fields.\n\n### Full rule configuration\n\nThe full configuration of `files` rule:\n\n```json\n{\n  \"upload\": {\n    \u002F\u002F ... other configuration ...\n\n    \"files\": {\n      \"group\": \"all-langs\", \n      \"pattern\": \"\u002Fpath\u002Fto\u002F*_en.json\",\n      \"excludes\": [ \n        \"**\u002Fprivate_*\"\n      ],\n      \"type\": \"json\",\n      \"features\": [\"multilingual\"],\n      \"conditions\": [ ... ],\n      \"lang\": \"${lang}\",\n      \"buildType\": \"debug\",\n      \"productFlavors\": \"0:gp 1:free\",\n      \"module\": \"...\",\n      \"library\": \"...\",\n      \"path\": \"...\",\n      \"file\": \"...\",\n      \"remap\": { ... }\n    }\n  \n  }\n}\n```\n\n| Field | Default | Description |\n| --- | --- | --- | \n| group | _---_ | Allows to filter rules using groups. See [groups](\u002Fdocs\u002Fcli\u002Fcommand-line-options#groups) for more information. |\n| pattern | _---_ | The pattern to use for collecting files. Standard path wildcards `?` (single character), `*` (anything except path separator), `**` (anything including path separators) are supported. |\n| excludes | _[]_ | The list of patterns used for excluding files. Standard path wildcards `?` (single character), `*` (anything except path separator), `**` (anything including path separators) are supported. |\n| type | _---_ | The type of files you are about to upload. The list of supported file formats is below. Setting this field overrides value set for the whole **upload** section. |\n| features | _[]_ | The list of features (eg. how to parse plurals) to enable for the given **type**. See the list of supported file formats below for more information. Setting this field overrides value set for the whole **upload** section. |\n| conditions | _---_ | Allows for more complex inclusion\u002Fexclusion of files. See [Conditions]() for more details. |\n| file | `${autodetectFileWithFallback}` | The file name to be used for upload. It's a good practise to clean file names. See **The important rule** below. |\n| path | `` | The path to be used for upload. It's a good practise to clean paths. See **The important rule** below. |\n| lang | _inherited_ | The language of the file being uploaded (format: ll-Scrp-RR). Special default value _inherited_ means the project's base language. |\n| buildType | _---_ | The custom build type for the file. See [Modules, libraries, flavors](\u002Fdocs\u002Fcli\u002Fmodules-libraries-and-product-flavors) for more details. | \n| productFlavors | _---_ | The custom product flavors for the file. See [Modules, libraries, flavors](\u002Fdocs\u002Fcli\u002Fmodules-libraries-and-product-flavors) for more details. |\n| module | _---_ | The module the file belongs to. See [Modules, libraries, flavors](\u002Fdocs\u002Fcli\u002Fmodules-libraries-and-product-flavors) for more details. |\n| library | _---_ | The library the file belongs to. See [Modules, libraries, flavors](\u002Fdocs\u002Fcli\u002Fmodules-libraries-and-product-flavors) for more details. |\n| remap | _---_ | Convert to different file format on upload. Refer to [Type Remapping](\u002Fdocs\u002Fcli\u002Ftype-remapping) for more details. |\n\n### Multiple rules\n\nYou can use array for `files` and combine single file rules with the full configuration rules:\n\n```json\n{\n  \"upload\": {\n    \u002F\u002F ...other configuration...\n\n    \"files\": [\n      \"\u002Fpath1\u002Fto\u002Ffile_en.json\",\n      \"\u002Fpath2\u002Fto\u002Ffile_en.json\",\n      {\n        \"type\": \"android\",\n        \"pattern\": \"\u002Fsrc\u002Fmain\u002Fvalues\u002Fstring.xml\"\n      }\n    ]\n\n  }\n}\n``` \n\n## How the upload works\n\n- The target directory is scanned for all files that match **pattern**.\n- Files that match any of the rules in **excludes** are skipped.\n- Files with [**conditions**](\u002Fdocs\u002Fcli\u002Fconditions) evaluated to **false** are skipped.\n- For each of files, all parameters are resolved - [**variables**](\u002Fdocs\u002Fcli\u002Fvariables) and [**transformations**](\u002Fdocs\u002Fcli\u002Ftransformations) are extremely important here to provide the correct data.\n- The verification process is initiated asking the server for verifying types, features, etc.\n- If the verification passes, the files are uploaded to the server in a single batch.\n- Files are processed by our server asynchronously and you are informed using the notifications on the Localazy platform.\n\n## Supported file formats\n\nWe believe that you shouldn't change your project to fit the localization solution.\n\nFor this reason, we have advanced support for formats like JSON that can handle different plural types, arrays, structured JSONs, multilingual JSONs, Mozilla i18n, etc. You can easily configure the features you need.\n\n___CLI_TYPE_TABLES___\n\n## The important rule\n\nYou shouldn't just upload files as they are. **Don't do it!** It's important to upload files correctly (eg. remove language from file's name and path) as it helps you to keep things nicely sorted and prevent future problems.\n\n**This rule is extremely important if you want to upload existing translations along with the source language. [Learn more about how to do it](\u002Fdocs\u002Fcli\u002Fexisting-translations).**\n\n## Test before uploading\n\nRun the Localazy CLI with parameter `-s` to output the list of files along with their parameters before you upload data to the Localazy platform.\n\nThis way, you are sure that everything is uploaded correctly.\n\nThe parameter `-s` switches CLI to the simulation mode - everything is processed as usual but the actual upload is not performed.\n\n___CLI_LINKS___","2026-05-08T22:28:23.000Z","31010",{"id":22,"slug":607,"name":826,"featured_icon":2024},{"id":834},{"id":602,"status":4,"slug":2026,"title":2027,"excerpt":2028,"content":2029,"created_on":1983,"modified_on":2030,"meta_title":2027,"meta_description":2031,"pinned":227,"sort":2032,"section":2033},"download-reference","Download Reference","Learn how to configure where to store your translated files.","The download section defines where to store translated files.\n\n[**There are a lot of variables**](\u002Fdocs\u002Fcli\u002Fvariables) for the download section that you can use for building the output path and file.  \n\n\n## Single output rule \n\nFor each of the translated files, the output path is generated using the pattern `\u002Fpath\u002F${lang}\u002F${file}`. \n\n```json\n{\n  \u002F\u002F ... other parts omitted for brevity ...\n\n  \"download\": {\n    \"files\": \"\u002Fpath\u002F${lang}\u002F${file}\"\n  }\n\n}\n```\n\n## Full output configuration \n\n```json\n{\n  \u002F\u002F ... other parts omitted for brevity ...\n\n  \"download\": {\n    \"folder\": \"output\u002Fpath\",\n    \"metadataFileJson\": \"meta.json\",\n    \"metadataFileJs\": \"meta.js\",\n    \"metadataFileTs\": \"meta.ts\",\n    \"includeSourceLang\": false,\n    \"excludedLangs\": [\"cs\", \"de\"],\n    \"langAliases\": {\n      \"zh-Hant-TW\": \"zh-TW\"\n    },\n    \"langExpansions\": {\n      \"de\": [\"de-DE\", \"de-CH\"]\n    },\n    \"files\": {\n      \"group\": \"all\",\n      \"conditions\": [ ... ],\n      \"stop\": true,\n      \"changeExtension\": \"json\",\n      \"output\": \"path\u002F${lang}\u002F${file}\"\n    }   \n  }\n\n}\n```\n\n| Field | Default | Description |\n| --- | --- | --- |\n| `folder` | _._ | The base folder all operations are relative to. It can be a relative or absolute path. |\n| `metadataFileJson` | _---_ | The path\u002Ffile to generate [metadata in JSON format](\u002Fdocs\u002Fcli\u002Fmetadata-file) with the list of available languages |\n| `metadataFileJs` | _---_ | The path\u002Ffile to generate [metadata in Javascript format](\u002Fdocs\u002Fcli\u002Fmetadata-file) with the list of available languages and plural rules |\n| `metadataFileTs` | _---_ | The path\u002Ffile to generate [metadata in Typescript format](\u002Fdocs\u002Fcli\u002Fmetadata-file) with the list of available languages and plural rules |\n| `includeSourceLang` | _false_ | By default, the source language is not processed, only translated files are. |\n| `excludedLangs` | _[]_ | The list of languages to exclude from processing. |\n| `langAliases` | _---_ | Maps languages to different ones. |\n| `langExpansions` | _---_ | Adds additional languages to output; the same file will be saved several times. |\n| `files` | _[]_ | The rules to apply to all translated files. |\n| `files.group` | _---_ |  Allows to filter rules using groups. See [groups](\u002Fdocs\u002Fcli\u002Fcommand-line-options#groups) for more information. |\n| `files.conditions` | _[]_ | Allows for more complex filtering of rules. See [conditions](\u002Fdocs\u002Fcli\u002Fconditions) for more details. |\n| `files.stop` | _true_ | If **true**, no more rules are processed for the given file. Only makes sense if more output rules are defined. By default, the first matching rule stops processing for the file. |\n| `files.changeExtension` | _---_ | If defined, change the extension of the output file. Applied to the final output after resolving all variables. |\n| `files.output` | _---_ | The pattern for generating output path and file. Use [variables](\u002Fdocs\u002Fcli\u002Fvariables) to build the pattern. |\n\n## Multiple output rules \n\nYou can use an array for `files` and combine single output rules with full output configurations:\n\n```json\n{\n  \u002F\u002F ... other parts omitted for brevity ...\n\n  \"download\": {\n    \u002F\u002F ..\n    \"files\": [\n      \"path1\u002F${lang}\u002F${file}\",\n      {\n        \"conditions\": [ ... ],\n        \"stop\": true,\n        \"output\": \"path2\u002F${lang}\u002F${file}\"\n      }\n    ]   \n  }\n\n}\n``` \n    \nWhen more rules are defined, each of the translated files goes through all of them. \n\nYou can store all or some of the files in multiple locations. When using more rules, [**conditions**](\u002Fdocs\u002Fcli\u002Fconditions) and **stop** are useful concepts.\n\n## How download works\n\n- Your files are downloaded from our servers.\n- Each of the files goes through all the rules in the order defined in the `files` section. \n- Rules with [**conditions**](\u002Fdocs\u002Fcli\u002Fconditions) evaluated to **false** are skipped.\n- When the rule is valid ([**conditions**](\u002Fdocs\u002Fcli\u002Fconditions) are evaluated to **true**) and **stop** is **true**, no more rules are processed. \n \n## Example with more output locations\n\n```json\n{\n  \u002F\u002F ... other parts omitted for brevity ...\n\n  \"download\": {\n    \u002F\u002F ..\n    \"files\": [\n\n      {\n        \"stop\": false,\n        \"output\": \"backup\u002F${lang}\u002F${file}\"\n      },\n      \n      {\n        \"conditions\": \"!empty: ${scriptCode}\",\n        \"stop\": true\n      },\n\n      {\n        \"conditions\": \"!empty: ${regionCode}\",\n        \"stop\": true,\n        \"output\": \"withRegion\u002F${langLsrUnderscore}\u002F${file}\"\n      },\n\n      \"withLang\u002F${lang}\u002F${file}\"\n\n    ]   \n  }\n\n}\n``` \n\n- All files are stored using `backup\u002F${lang}\u002F${file}` pattern, and the processing is not stopped and continue.\n- If the locale of the given file contains script code, the processing is stopped.\n- If the locale of the given file contains region code, it's saved using `withRegion\u002F${langLsrUnderscore}\u002F${file}` pattern, and the processing is stopped.\n- All other files are stored using `withLang\u002F${lang}\u002F${file}`\n\n## Missing translations\n\nWhen you generate an output file using Localazy, it will use the source language as a fallback if a translation is missing in the target language. This helps prevent missing keys that could cause crashes in some frameworks.\n\nIf you want to disable this fallback feature, you can add `filter_untranslated` to the **features** section in the [upload](\u002Fdocs\u002Fcli\u002Fupload-reference) and reupload your source language file. Note that this feature may not be available for all file formats, so check their documentation for details.\n\nNote that in order to download a file with fallback translations, the target language must have **at least one** translation present. If there are no translations, the language won't appear in the output.\n\n## Test before download \n\nDownloaded files **overwrite** any existing files. Be careful before you proceed!\n\nRun the Localazy CLI with parameter `-s` to output the list of files that are about to be written before you download and store translated files.\n\nThis way, you are sure everything is stored correctly, and you are not about to mess your project.   \n\nThe parameter `-s` switches CLI to the simulation mode - everything is processed as usual, but the actual storing is not performed.\n\n```\nlocalazy download -s\n```\n\n## Listing files on server\n\nTo list all files for the given project, you can run `localazy list` with the minimal configuration:\n\n```json\n{\n  \"writeKey\": \"your-apps-write-key\", \n  \"readKey\": \"your-apps-read-key\"\n}\n```\n\n","2025-10-06T17:33:28.000Z","Learn about how to configure where to store your translated files.","31020",{"id":22,"slug":607,"name":826,"featured_icon":2034},{"id":834},[],[2037,2183,2290],{"id":2038,"owner":2039,"created_by":8,"sort":8,"title":2044,"slug":2045,"modified_on":2046,"created_on":2046,"pinned":229,"badge":8,"priority":1824,"main_image":2047,"status":4,"tags":2048,"dictionary":2054,"reading_time":62,"excerpt":2115,"og_title":53,"og_description":53,"og_image":53,"content":2116,"meta_title":53,"meta_description":2117,"canonical":53,"cta":2118,"fullGhostPost":2126},"67d17c2063350c0001d57b17",{"id":2040,"first_name":2041,"last_name":53,"slug":2042,"avatar":2043},"65647a510470910001942875","Chidi Eze","chidi-eze","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F04\u002Fchidi.png","Tips for localizing multiplatform apps using Localazy CLI","tips-for-localizing-multiplatform-apps-localazy-cli","2025-04-22T15:47:32.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F04\u002FMultiplatform-CLI.png",[2049,2050,2053],{"id":518,"created_on":1828,"status":4,"label":826,"slug":607,"on_index_page":227},{"id":518,"created_on":1828,"status":4,"label":2051,"slug":2052,"on_index_page":227},"JSON5","json5",{"id":518,"created_on":1828,"status":4,"label":419,"slug":1836,"on_index_page":229},[2055,2063,2077,2094],{"id":174,"status":4,"owner":1853,"created_on":2056,"title":660,"excerpt":2057,"content":2058,"slug":659,"meta_title":8,"meta_description":8,"canonical":8,"related_terms":2059},"2022-03-17T12:22:55.000Z","A mobile operating system (OS) primarily designed for touchscreen devices such as smartphones and tablets.","Based on a modified version of the Linux operating system kernel with proprietary elements (such as Google Play), the Android operating system is currently one of the most popular solutions for mobile devices and smart TVs.\n\n## Distributions of OS based on Android:\n\n+ LineageOS and Replicant\n+ \u002Fe\u002F\n\n![StatCounter](https:\u002F\u002Fdirectus9.localazy.com\u002Fassets\u002F2af45fe7-e7e2-463d-940f-75b0c49a79ba\n)\n\n## Some alternatives to Android:\n\n+ iOS\n+ TizenOS\n+ PureOS\u002FLibrem\n+ LuneOS\n+ SailfishOS\n\n## Useful information about Android:\n\n+ [Android Studio](\u002Fdictionary\u002Fandroid-studio\u002F) for development\n+ [Android Gradle Plugin](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fandroid\u002Flocalazy-gradle-plugin) - Build automation tool",[2060,2061],{"id":174,"slug":659},{"id":324,"slug":2062},"android-studio",{"id":1613,"status":4,"owner":1853,"created_on":2064,"title":715,"excerpt":2065,"content":2066,"slug":714,"meta_title":8,"meta_description":8,"canonical":8,"related_terms":2067},"2022-03-17T12:22:56.000Z","JSON stands for JavaScript Object Notation and it's a widely used file format.","JSON is a lightweight format for storing and transporting data originally specified by Douglas Crockford in the early 2000s. It is often used when data is sent from a server to a web page.  It is \"self-describing\" and highly understandable, as it is easy for humans to read and write and for machines to parse and generate.\n\nThis programming language is independent but it is derived from the JavaScript\u002FECMAScript programming language and uses the conventions familiar to programmers of the C series of languages ​​(including C, C++, C#, Java, JavaScript, Perl, and Python).\n\nJSON is one of the best localizable file formats you can use to store your project's externalized strings. Localazy fully supports and lets you manage and translate your JSON files. \n\n## Further reading:\n- [Quick Start - JSON](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fquick-start-json)\n- [File Format - JSON](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fjson-format)\n- [JavaScript app localization with i18next and Localazy](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fjavascript-app-localization-i18next-localazy)",[2068,2070,2072,2074],{"id":319,"slug":2069},"java",{"id":518,"slug":2071},"externalized-string",{"id":2073,"slug":707},75,{"id":2075,"slug":2076},83,"python",{"id":2078,"status":4,"owner":2079,"created_on":2080,"title":826,"excerpt":2081,"content":2082,"slug":607,"meta_title":53,"meta_description":53,"canonical":53,"related_terms":2083},284,"a5e46ee7-1f50-4f81-ae2d-68a664c76aa2","2026-05-12T07:09:25.000Z","A text-based interface used to interact with software and operating systems through commands.","A command-line interface (CLI) allows users to execute commands by typing them into a terminal or command prompt. Unlike graphical user interfaces (GUIs), CLIs rely on text input, which can help in making operations faster and more efficient for experienced users. Users can navigate file systems, run scripts, and manage software without needing to use a mouse or graphical elements.\n\nMany developers prefer CLIs for tasks such as automation and scripting, as they can easily chain commands together to perform complex operations quickly. Moreover, CLIs often consume fewer system resources compared to GUIs, making them suitable for low-power devices or remote access situations.\n\nCLI environments can vary significantly between different operating systems, such as Unix, Linux, and Windows, each offering unique commands and functionalities. Familiarity with the command line boosts the user's overall productivity and understanding of the underlying system.\n\n### 🖥️ Key points about CLIs:\n\n* Enable automation and scripting for repetitive tasks.\n* Consume fewer resources compared to graphical interfaces.\n* Offer a powerful tool for developers and system administrators.\n* Provide a way to interact with systems through text commands.\n* Vary across operating systems, requiring users to learn specific commands.\n\n### 💙 Localazy CLI\n\nAt Localazy, we have [our own CLI](https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\u002F \"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\u002F\") that helps developers translate apps and manage localization workflows much faster using simple, plain commands. \n\nWith the Localazy CLI, you can:\n\n* Upload source strings to our platform.\n* Download your localized files back to your app.\n* Automate the data exchange within your CI\u002FCD pipeline.\n* Create, merge, and delete branches.\n* Convert between file formats for easier multiplatform localization.\n* And more!\n\n> *Interested in diving deeper? [Get started here with the basics.](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics)* ",[2084,2086,2088,2091],{"id":2085,"slug":842},109,{"id":1694,"slug":2087},"gtk",{"id":2089,"slug":2090},237,"ui",{"id":2092,"slug":2093},285,"usability",{"id":2095,"status":4,"owner":2079,"created_on":2096,"title":2097,"excerpt":2098,"content":2099,"slug":2100,"meta_title":53,"meta_description":53,"canonical":53,"related_terms":2101},239,"2026-05-12T07:09:24.000Z","Source key","A source key is a unique identifier used in localization to reference a specific text string in the source language.","A source key is a segment of text stored in Localazy that represents content in your source language. It’s a single string of text, such as a button label, a short paragraph in a dialog window, or even a blog article written in Markdown. You can think of a source key as a single row in a spreadsheet you might have used for translations.\n\nSource keys act as unique codes that link the original text to its translations. They help translators and localization tools produce accurate translations as the product versions, number of languages, and amount of text to translate increases. Even if a source key is translated into multiple languages, it still counts as one source key.\n\nSource keys make localization faster and easier by allowing translators to quickly find the text that needs translation. These keys are often used with translation management systems like Localazy to ensure the correct translations match the right text. They can come in different formats, like simple numbers or descriptive strings that provide context for the text.  \n\n### **🤔 Types of source keys:**\n\nSource keys can be categorized into different types based on their state. Here are some examples: \n\n* **Active keys.** Used in your code and available for translation. These are fully functional and visible to translators.\n* **Hidden keys.** Not visible to translators but still processed and exported. When the source text is empty, they're often applied automatically.\n* **Duplicate keys.** Linked to a master key using Duplicity Linking. These act like hidden keys and inherit translations from the original.\n* **Deprecated keys.** Considered outdated. They are ignored during export and hidden from translators. If re-uploaded, they’re restored as Active with all previous data.\n* **Deleted keys.** Fully removed from the project, including all translations. These no longer count toward your key limit.\n\n### 🔎 **Examples of source keys:**\n\n1. A button labeled \"Submit\".\n2. A sentence like \"Your order has been placed successfully.\"\n3. A short blog post written in Markdown, such as:\n\n   ```\n   ## 5 Tips to Stay Productive\n   \n   Staying productive can be tough, but here are five quick tips:\n   \n   1. Start your day with a to-do list.\n   2. Take short breaks to recharge.\n   3. Minimize distractions by turning off notifications.\n   4. Focus on one task at a time.\n   5. Celebrate small wins to stay motivated.\n   \n   Try these tips and see how they boost your productivity!\n   ```\n\nEven if these examples are translated into 10 different languages, each one still counts as a single source key. See examples in action [here](https:\u002F\u002Flocalazy.com\u002Ffaq\u002Flocalazy-accounts\u002Fwhat-are-source-keys\u002F \"https:\u002F\u002Flocalazy.com\u002Ffaq\u002Flocalazy-accounts\u002Fwhat-are-source-keys\u002F\").\n\n### 📝 **Benefits of source keys:**\n\n* Ensure consistent translations across multiple languages.\n* Make updating and maintenance of localized content easier.\n* Improve how translators and developers work together.\n* Make it easier to track changes in the source text and handle version control.\n\n> *Source keys make the translation of your product easier. Learn more about the [costs of source strings](https:\u002F\u002Flocalazy.com\u002Fcompare-plans \"https:\u002F\u002Flocalazy.com\u002Fcompare-plans\") on our pricing page.*","source-key",[2102,2103,2104,2106,2108,2109,2112],{"id":16,"slug":1836},{"id":62,"slug":532},{"id":36,"slug":2105},"cat-tool",{"id":358,"slug":2107},"translation-management-system-tms",{"id":469,"slug":454},{"id":2110,"slug":2111},79,"internationalization",{"id":2113,"slug":2114},171,"strings","Multiplatform apps are highly convenient, but the same can't be said for translating them. This is how Localazy CLI can help you simplify and automate translations in a few steps.","\u003Cp>Keeping translations in sync across iOS, Android, and web projects is rarely straightforward. Different file formats, scattered translation files, and the constant back-and-forth between tools can slow you down. Adding localization to your workflow \u003Cstrong>shouldn't feel like an extra chore, but too often, it does\u003C\u002Fstrong>. 😥\u003C\u002Fp>\u003Cp>Instead of handling files manually, what if you could focus on keeping translations accurate and up to date? With \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\" rel=\"noopener noreferrer nofollow\">Localazy CLI\u003C\u002Fa>, you can upload and download translations, convert between formats, and manage localization efficiently across platforms — no more manual file handling or format mismatches.\u003C\u002Fp>\u003Cp>In this guide, I'll explain how to use the Localazy CLI to simplify your localization workflow. This will save you time and reduce errors while keeping translations consistent across all your apps. \u003C\u002Fp>\u003Ch2 id=\"setting-up-localazy-cli\">🛠️ Setting up Localazy CLI \u003Ca class=\"markdownit-header-anchor\" href=\"#setting-up-localazy-cli\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Before diving into the commands, let's set up the CLI in a few steps:\u003C\u002Fp>\u003Ch3 id=\"1-install-localazy-cli\">1. Install Localazy CLI \u003Ca class=\"markdownit-header-anchor\" href=\"#1-install-localazy-cli\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Run: \u003Ccode>npm install -g @localazy\u002Fcli\u003C\u002Fcode>\u003C\u002Fp>\u003Ch3 id=\"2-create-a-new-project\">2. Create a new project \u003Ca class=\"markdownit-header-anchor\" href=\"#2-create-a-new-project\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>If you haven't already, \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fregister\" rel=\"noopener noreferrer nofollow\">sign up at Localazy\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Flogin\" rel=\"noopener noreferrer nofollow\">log in\u003C\u002Fa> to your account and create a new project. Set the source language and add any target languages you need.\u003C\u002Fp>\u003Ch3 id=\"3-generate-access-keys\">3. Generate access keys \u003Ca class=\"markdownit-header-anchor\" href=\"#3-generate-access-keys\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Navigate to your project settings and generate the write and read keys. You'll need these to configure the CLI.\u003C\u002Fp>\u003Ch3 id=\"4-configure-localazy-cli\">4. Configure Localazy CLI \u003Ca class=\"markdownit-header-anchor\" href=\"#4-configure-localazy-cli\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Create a \u003Ccode>localazy.json\u003C\u002Fcode> file in your project root with the following content:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-JSON\">{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": \"PATH\u002FTO_YOUR\u002FFILE\"\n  },\n  \"download\": {\n    \"files\": \"PATH\u002FTO_SAVE\u002FYOUR_FILE\"\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cblockquote>New around these parts? Check out our quickstart CLI video tutorial for developers 👇\u003C\u002Fblockquote>\u003Cfigure class=\"kg-card kg-embed-card\">\u003Ciframe width=\"200\" height=\"113\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FBD3XNe11yu8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen title=\"Localazy Quickstart for Developers: Get Started with the CLI\">\u003C\u002Fiframe>\u003C\u002Ffigure>\u003Ch2 id=\"running-key-commands\">⬇️ Running key commands \u003Ca class=\"markdownit-header-anchor\" href=\"#running-key-commands\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Now that the CLI is set up, let's discuss a few basic commands to manage your translations.\u003C\u002Fp>\u003Ch3 id=\"upload-command\">Upload command \u003Ca class=\"markdownit-header-anchor\" href=\"#upload-command\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To upload the source language file (\u003Ccode>en.json\u003C\u002Fcode> in our case) to Localazy, use the following command:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy upload\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>The upload command runs the upload object in the Localazy configuration file, which can include several upload rules.\u003C\u002Fp>\u003Ch3 id=\"download-command\">Download command  \u003Ca class=\"markdownit-header-anchor\" href=\"#download-command\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To download the translations for all target languages, run the Localazy download command:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy download\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>This command executes the rules specified within the download object of your configuration file. It also updates your local files with the latest translations according to the defined settings, making it easy to keep them current and accurate.\u003C\u002Fp>\u003Ch3 id=\"conversion-rules\">Conversion rules \u003Ca class=\"markdownit-header-anchor\" href=\"#conversion-rules\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>The next important command involves converting source files to different formats. Conversion rules typically run immediately after the download rules, ensuring that your files are in the desired format as soon as they are downloaded.\u003C\u002Fp>\u003Cp>You can also convert files using the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Ftype-remapping\" rel=\"noopener noreferrer nofollow\">type remapping\u003C\u002Fa> feature during upload, which allows you to handle various file conversions throughout the process.\u003C\u002Fp>\u003Cp>To convert files during uploads, modify the upload rules as shown below:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\u002F\u002Flocalazy.json\n\n \"upload\": {\n    \"files\": {\n      \"type\": \"excel\",\n      \"pattern\": \"PATH\u002FTO_YOUR\u002FFILE\",\n      \"file\": \"myTranslate.json5\",   \n      \"remap\": {\n        \"type\": \"json5\",       \n        \"flatten\": \".\",\n        \"nest\": \".\"\n      }\n    }\n  }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The \u003Ccode>\"upload\"\u003C\u002Fcode> object above specifies the rules for uploading translation files as follows:\u003C\u002Fp>\u003Cul>\u003Cli>The \u003Ccode>\"type\"\u003C\u002Fcode> indicates that the source file is in Excel format.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"pattern\"\u003C\u002Fcode> specifies the path to the Excel file to be uploaded.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"file\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>defines the name of the output file after conversion in the Localazy server.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"remap\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>object\u003Cstrong> \u003C\u002Fstrong>contains rules for converting the file format during the upload process.\u003C\u002Fli>\u003Cli>\u003Ccode>\"type\": \"json5\"\u003C\u002Fcode> specifies that the file should be converted to JSON5 format.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>In summary, \u003Cstrong>this configuration uploads an Excel file, converts it to JSON5 format \u003C\u002Fstrong>(\u003Ccode>myTranslate.json5\u003C\u002Fcode>), \u003Cstrong>and applies remapping rules to it\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cblockquote>👉 To learn more about Localazy uploads, including uploading multiple files, visit the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fupload-reference\" rel=\"noopener noreferrer nofollow\">upload reference\u003C\u002Fa>\u003C\u002Fblockquote>\u003Cp>Next, let's discuss how to handle conversions during downloads. Add the following snippet to the \u003Ccode>localazy.json\u003C\u002Fcode> file:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-JSON\">\u002F\u002Flocalazy.json\n\"download\": {\n\u002F\u002Fyour download rules here\n  },\n  \"conversion\": {\n    \"actions\": {\n      \"type\": \"json\",\n      \"output\": \"public\u002Flocales\u002Fconvertions\u002F${myTranslate.json5}\"\n    }\n  }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The snippet above does the following:\u003C\u002Fp>\u003Cul>\u003Cli>The \u003Ccode>\"actions\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>object contains the details of the conversion actions to be performed.\u003C\u002Fli>\u003Cli>\u003Ccode>\"type\": \"json\"\u003C\u002Fcode> indicates that the target format for the conversion is JSON.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"output\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>specifies the output path and filename for the converted file. The \u003Ccode>${myTranslate.json5}\u003C\u002Fcode> is the filename in the Localazy server — this is vital in case there are multiple files.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>The above configuration \u003Cstrong>converts the downloaded file to JSON format and saves it to the specified output path\u003C\u002Fstrong> (\u003Ccode>public\u002Flocales\u002Fconversions\u002F${myTranslate.json5}\u003C\u002Fcode>).\u003C\u002Fp>\u003Cp>Now that you've seen the key commands and how to use them, the next section will guide you on how to manage translation files for both Android and iOS.\u003C\u002Fp>\u003Ch2 id=\"syncing-translations-across-platforms\">🔁 Syncing translations across platforms \u003Ca class=\"markdownit-header-anchor\" href=\"#syncing-translations-across-platforms\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>One of Localazy CLI's biggest advantages is \u003Cstrong>its ability to handle translations for multiple platforms in one single workflow\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cp>Imagine you have an application with identical content for both Android and iOS platforms. A common challenge is \u003Cstrong>keeping translations in sync between the two projects\u003C\u002Fstrong>, especially since the strings are often nearly identical. Another concern is \u003Cstrong>how to reuse translations across platforms\u003C\u002Fstrong> to avoid paying translators twice \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fintroducing-the-duplicity-linking-feature-software-localization\u002F\">for translating duplicate content\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>Localazy addresses these concerns by allowing you to upload content from either \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fandroid\">Android\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fios\">iOS\u003C\u002Fa> as the main source. You can then complete the desired translations and download the content in the format required by the other platform \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fformat-conversions\u002F\">using format conversions\u003C\u002Fa>. \u003C\u002Fp>\u003Cp>This ensures consistency and efficiency in managing translations across both platforms. Below is a practical example of how to upload content in an Android project and download it to an iOS project with the help of format conversions.\u003C\u002Fp>\u003Ch3 id=\"uploading-content-from-android\">Uploading content from Android \u003Ca class=\"markdownit-header-anchor\" href=\"#uploading-content-from-android\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To upload the source content in an Android project, first create a \u003Ccode>strings.xml\u003C\u002Fcode> file in the desired directory. Use the following snippet as an example of what the file should contain:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-xml\">\n\u002F\u002Fstrings.xml\n\n&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;\n&lt;resources&gt;\n    &lt;string name=\"welcome_message\"&gt;Welcome to our app!&lt;\u002Fstring&gt;\n    &lt;string name=\"button_continue\"&gt;Continue&lt;\u002Fstring&gt;\n    &lt;string name=\"settings_title\"&gt;Settings&lt;\u002Fstring&gt;\n&lt;\u002Fresources&gt;\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Next, in the root of your project, create a \u003Ccode>localazy.json\u003C\u002Fcode> file with the following snippet:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\n\u002F\u002Flocalazy.json\n{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"upload\": {\n    \"type\": \"android\",\n    \"files\": \"path_to\u002Fyour_file\u002Fres\u002Fstrings.xml\"\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Now run the upload command in the terminal to upload your file:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy upload\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>After uploading your \u003Ccode>strings.xml\u003C\u002Fcode> file, navigate to the Localazy server and add your desired translations, such as French and Spanish.\u003C\u002Fp>\u003Ch3 id=\"downloading-content-to-ios\">Downloading content to iOS \u003Ca class=\"markdownit-header-anchor\" href=\"#downloading-content-to-ios\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To convert and download the \u003Ccode>strings.xml\u003C\u002Fcode> file uploaded from your Android project for use in an iOS project, create a \u003Ccode>localazy.json\u003C\u002Fcode> file in the root directory of your project with the following snippet:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\n\u002F\u002Flocalazy.json\n{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"download\": {\n    \"files\": \"public\u002Flocales\u002Fios-app\u002F${iosLprojFolder}\u002FLocalizable.strings\"\n  },\n  \"conversion\": {\n    \"actions\": {\n      \"type\": \"ios-strings\",\n      \"output\": \"public\u002Flocales\u002Fios-app\u002F${iosLprojFolder}\u002FLocalizable.strings\"\n    }\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>In the snippet above, \u003Ccode>download.files\u003C\u002Fcode> specifies where to save the downloaded \u003Ccode>Localizable.strings\u003C\u002Fcode> files using the \u003Ccode>${iosLprojFolder}\u003C\u002Fcode> variable to create language-specific folders dynamically.\u003C\u002Fp>\u003Cp>Next, run the download command in the terminal to download your iOS strings in the specified folder:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy download\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>And you're done! ✅ \u003Cstrong>You've successfully uploaded content from one platform (Android) and converted it for the other (iOS)\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cblockquote>📑 Learn more about format conversion configuration \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fformat-conversions?srsltid=AfmBOoqnTp21Nnc_GX3qZz9nGYu1Pw4UiaLhAUfx6VlZSDZ8U9HkjlTZ\">here\u003C\u002Fa>\u003C\u002Fblockquote>\u003Ch2 id=\"common-cli-mistakes-to-avoid\">🤕 Common CLI mistakes to avoid \u003Ca class=\"markdownit-header-anchor\" href=\"#common-cli-mistakes-to-avoid\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Even with a powerful tool like Localazy CLI, it's easy to run into issues. Here are some common mistakes and how to avoid or fix them.\u003C\u002Fp>\u003Ch3 id=\"1-incorrect-file-paths\">1. Incorrect file paths  \u003Ca class=\"markdownit-header-anchor\" href=\"#1-incorrect-file-paths\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Double-check your file paths in the \u003Ccode>localazy.json\u003C\u002Fcode> configuration. Confirm they match the actual paths in your project to avoid misconfigured upload and download errors.\u003C\u002Fp>\u003Ch3 id=\"2-missing-access-keys\">2. Missing access keys  \u003Ca class=\"markdownit-header-anchor\" href=\"#2-missing-access-keys\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Make sure your write and read keys are correctly added to the \u003Ccode>localazy.json\u003C\u002Fcode> file. If you encounter authentication errors, regenerate the keys from your Localazy account.\u003C\u002Fp>\u003Ch3 id=\"3-unsupported-file-formats\">3. Unsupported file formats  \u003Ca class=\"markdownit-header-anchor\" href=\"#3-unsupported-file-formats\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Verify that Localazy supports the file formats you're using or translating to. Refer to the documentation for a \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fsupported-file-formats\" rel=\"noopener noreferrer nofollow\">list of supported formats\u003C\u002Fa>.\u003C\u002Fp>\u003Ch3 id=\"4-network-issues\">4. Network issues  \u003Ca class=\"markdownit-header-anchor\" href=\"#4-network-issues\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>If you experience network-related errors, check your internet connection and try again. You can also use a VPN if you're facing regional restrictions.\u003C\u002Fp>\u003Ch2 id=\"my-recommended-automation-workflow\">😎 My recommended automation workflow \u003Ca class=\"markdownit-header-anchor\" href=\"#my-recommended-automation-workflow\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>To make the most out of Localazy CLI, here's my personal workflow for automating your localization process:\u003C\u002Fp>\u003Col>\u003Cli>Set up your \u003Ccode>localazy.json\u003C\u002Fcode> file with configurations for all platforms (Android, iOS, web).\u003C\u002Fli>\u003Cli>Upload your source language files regularly to keep your translations up-to-date.\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automate-your-localization-in-ci-cd-pipelines\u002F\">Set up a CI\u002FCD pipeline\u003C\u002Fa> to automatically download new translations whenever they become available.\u003C\u002Fli>\u003Cli>Include the conversion object to generate different file formats as needed.\u003C\u002Fli>\u003C\u002Fol>\u003Cp>Once you follow this workflow, you will be able to automate the tedious aspects of localization and focus on delivering a great user experience.\u003C\u002Fp>\u003Cblockquote>⏯️ Related read: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Ftranslating-my-ios-app-no-meat-today-with-localazy\">Translating my iOS app with Localazy\u003C\u002Fa>\u003C\u002Fblockquote>\u003Ch2 id=\"final-thoughts\">✔️ Final thoughts \u003Ca class=\"markdownit-header-anchor\" href=\"#final-thoughts\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>I hope the tips outlined in this guide help you be well-equipped to handle your next multiplatform localization project. 💪 I found Localazy CLI to be a powerful solution to manage translations across multiple platforms — it simplifies the process, automates repetitive tasks, and helps you maintain consistency in your translations. \u003C\u002Fp>\u003Cp>If you're a mobile app developer looking to streamline your localization workflow, it's worth considering, as \u003Cstrong>it can save you time and reduce localization errors\u003C\u002Fstrong>. Give it a try and see how it can improve your workflow. \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fbook-demo\" rel=\"noopener noreferrer nofollow\">Book a demo\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fregister\" rel=\"noopener noreferrer nofollow\">register now\u003C\u002Fa> to get started.\u003C\u002Fp>","Optimize your localization workflow with Localazy CLI. Follow this step-by-step guide to automate translations across all your platforms.",{"id":432,"status":4,"created_on":2119,"modified_on":2120,"icon":2121,"header":2122,"description":2123,"button_label":2124,"link":2125},"2025-04-22T13:11:52.000Z","2025-04-22T13:55:18.000Z","app","Explore our developer hub 🧑‍💻","Got questions? Find quick answers in our Developer Portal, a space built for you with easy access to repositories, documentation, SDKs, and more.","Take me there","\u002Fdeveloper-portal",{"slug":2045,"id":2038,"uuid":2127,"title":2044,"html":2128,"comment_id":2038,"feature_image":2047,"featured":229,"visibility":2129,"email_recipient_filter":2130,"created_at":2131,"updated_at":2046,"published_at":2046,"custom_excerpt":2115,"codeinjection_head":8,"codeinjection_foot":8,"custom_template":8,"canonical_url":8,"authors":2132,"tags":2138,"primary_author":2180,"primary_tag":2181,"url":2182,"excerpt":2115,"reading_time":57,"access":229,"send_email_when_published":227,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":2117,"email_subject":8,"frontmatter":8,"dictionary":2054,"cta":2118,"plainTags":2048},"a4ef38b7-3acb-4823-a709-0c939ea0dfc1","\u003Cp>Keeping translations in sync across iOS, Android, and web projects is rarely straightforward. Different file formats, scattered translation files, and the constant back-and-forth between tools can slow you down. Adding localization to your workflow \u003Cstrong>shouldn't feel like an extra chore, but too often, it does\u003C\u002Fstrong>. 😥\u003C\u002Fp>\u003Cp>Instead of handling files manually, what if you could focus on keeping translations accurate and up to date? With \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\" rel=\"noopener noreferrer nofollow\">Localazy CLI\u003C\u002Fa>, you can upload and download translations, convert between formats, and manage localization efficiently across platforms — no more manual file handling or format mismatches.\u003C\u002Fp>\u003Cp>In this guide, I'll explain how to use the Localazy CLI to simplify your localization workflow. This will save you time and reduce errors while keeping translations consistent across all your apps. \u003C\u002Fp>\u003Ch2 id=\"%F0%9F%9B%A0%EF%B8%8F-setting-up-localazy-cli\">🛠️ Setting up Localazy CLI\u003C\u002Fh2>\u003Cp>Before diving into the commands, let's set up the CLI in a few steps:\u003C\u002Fp>\u003Ch3 id=\"1-install-localazy-cli\">1. Install Localazy CLI\u003C\u002Fh3>\u003Cp>Run: \u003Ccode>npm install -g @localazy\u002Fcli\u003C\u002Fcode>\u003C\u002Fp>\u003Ch3 id=\"2-create-a-new-project\">2. Create a new project\u003C\u002Fh3>\u003Cp>If you haven't already, \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fregister\" rel=\"noopener noreferrer nofollow\">sign up at Localazy\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Flogin\" rel=\"noopener noreferrer nofollow\">log in\u003C\u002Fa> to your account and create a new project. Set the source language and add any target languages you need.\u003C\u002Fp>\u003Ch3 id=\"3-generate-access-keys\">3. Generate access keys\u003C\u002Fh3>\u003Cp>Navigate to your project settings and generate the write and read keys. You'll need these to configure the CLI.\u003C\u002Fp>\u003Ch3 id=\"4-configure-localazy-cli\">4. Configure Localazy CLI\u003C\u002Fh3>\u003Cp>Create a \u003Ccode>localazy.json\u003C\u002Fcode> file in your project root with the following content:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-JSON\">{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"upload\": {\n    \"type\": \"json\",\n    \"files\": \"PATH\u002FTO_YOUR\u002FFILE\"\n  },\n  \"download\": {\n    \"files\": \"PATH\u002FTO_SAVE\u002FYOUR_FILE\"\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cblockquote>New around these parts? Check out our quickstart CLI video tutorial for developers 👇\u003C\u002Fblockquote>\u003Cfigure class=\"kg-card kg-embed-card\">\u003Ciframe width=\"200\" height=\"113\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FBD3XNe11yu8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen title=\"Localazy Quickstart for Developers: Get Started with the CLI\">\u003C\u002Fiframe>\u003C\u002Ffigure>\u003Ch2 id=\"%E2%AC%87%EF%B8%8F-running-key-commands\">⬇️ Running key commands\u003C\u002Fh2>\u003Cp>Now that the CLI is set up, let's discuss a few basic commands to manage your translations.\u003C\u002Fp>\u003Ch3 id=\"upload-command\">Upload command\u003C\u002Fh3>\u003Cp>To upload the source language file (\u003Ccode>en.json\u003C\u002Fcode> in our case) to Localazy, use the following command:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy upload\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>The upload command runs the upload object in the Localazy configuration file, which can include several upload rules.\u003C\u002Fp>\u003Ch3 id=\"download-command\">Download command \u003C\u002Fh3>\u003Cp>To download the translations for all target languages, run the Localazy download command:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy download\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>This command executes the rules specified within the download object of your configuration file. It also updates your local files with the latest translations according to the defined settings, making it easy to keep them current and accurate.\u003C\u002Fp>\u003Ch3 id=\"conversion-rules\">Conversion rules\u003C\u002Fh3>\u003Cp>The next important command involves converting source files to different formats. Conversion rules typically run immediately after the download rules, ensuring that your files are in the desired format as soon as they are downloaded.\u003C\u002Fp>\u003Cp>You can also convert files using the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Ftype-remapping\" rel=\"noopener noreferrer nofollow\">type remapping\u003C\u002Fa> feature during upload, which allows you to handle various file conversions throughout the process.\u003C\u002Fp>\u003Cp>To convert files during uploads, modify the upload rules as shown below:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\u002F\u002Flocalazy.json\n\n \"upload\": {\n    \"files\": {\n      \"type\": \"excel\",\n      \"pattern\": \"PATH\u002FTO_YOUR\u002FFILE\",\n      \"file\": \"myTranslate.json5\",   \n      \"remap\": {\n        \"type\": \"json5\",       \n        \"flatten\": \".\",\n        \"nest\": \".\"\n      }\n    }\n  }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The \u003Ccode>\"upload\"\u003C\u002Fcode> object above specifies the rules for uploading translation files as follows:\u003C\u002Fp>\u003Cul>\u003Cli>The \u003Ccode>\"type\"\u003C\u002Fcode> indicates that the source file is in Excel format.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"pattern\"\u003C\u002Fcode> specifies the path to the Excel file to be uploaded.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"file\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>defines the name of the output file after conversion in the Localazy server.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"remap\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>object\u003Cstrong> \u003C\u002Fstrong>contains rules for converting the file format during the upload process.\u003C\u002Fli>\u003Cli>\u003Ccode>\"type\": \"json5\"\u003C\u002Fcode> specifies that the file should be converted to JSON5 format.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>In summary, \u003Cstrong>this configuration uploads an Excel file, converts it to JSON5 format \u003C\u002Fstrong>(\u003Ccode>myTranslate.json5\u003C\u002Fcode>), \u003Cstrong>and applies remapping rules to it\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cblockquote>👉 To learn more about Localazy uploads, including uploading multiple files, visit the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fupload-reference\" rel=\"noopener noreferrer nofollow\">upload reference\u003C\u002Fa>\u003C\u002Fblockquote>\u003Cp>Next, let's discuss how to handle conversions during downloads. Add the following snippet to the \u003Ccode>localazy.json\u003C\u002Fcode> file:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-JSON\">\u002F\u002Flocalazy.json\n\"download\": {\n\u002F\u002Fyour download rules here\n  },\n  \"conversion\": {\n    \"actions\": {\n      \"type\": \"json\",\n      \"output\": \"public\u002Flocales\u002Fconvertions\u002F${myTranslate.json5}\"\n    }\n  }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The snippet above does the following:\u003C\u002Fp>\u003Cul>\u003Cli>The \u003Ccode>\"actions\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>object contains the details of the conversion actions to be performed.\u003C\u002Fli>\u003Cli>\u003Ccode>\"type\": \"json\"\u003C\u002Fcode> indicates that the target format for the conversion is JSON.\u003C\u002Fli>\u003Cli>The \u003Ccode>\"output\"\u003C\u002Fcode>\u003Cstrong> \u003C\u002Fstrong>specifies the output path and filename for the converted file. The \u003Ccode>${myTranslate.json5}\u003C\u002Fcode> is the filename in the Localazy server — this is vital in case there are multiple files.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>The above configuration \u003Cstrong>converts the downloaded file to JSON format and saves it to the specified output path\u003C\u002Fstrong> (\u003Ccode>public\u002Flocales\u002Fconversions\u002F${myTranslate.json5}\u003C\u002Fcode>).\u003C\u002Fp>\u003Cp>Now that you've seen the key commands and how to use them, the next section will guide you on how to manage translation files for both Android and iOS.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%94%81-syncing-translations-across-platforms\">🔁 Syncing translations across platforms\u003C\u002Fh2>\u003Cp>One of Localazy CLI's biggest advantages is \u003Cstrong>its ability to handle translations for multiple platforms in one single workflow\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cp>Imagine you have an application with identical content for both Android and iOS platforms. A common challenge is \u003Cstrong>keeping translations in sync between the two projects\u003C\u002Fstrong>, especially since the strings are often nearly identical. Another concern is \u003Cstrong>how to reuse translations across platforms\u003C\u002Fstrong> to avoid paying translators twice \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fintroducing-the-duplicity-linking-feature-software-localization\u002F\">for translating duplicate content\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>Localazy addresses these concerns by allowing you to upload content from either \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fandroid\">Android\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fios\">iOS\u003C\u002Fa> as the main source. You can then complete the desired translations and download the content in the format required by the other platform \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fformat-conversions\u002F\">using format conversions\u003C\u002Fa>. \u003C\u002Fp>\u003Cp>This ensures consistency and efficiency in managing translations across both platforms. Below is a practical example of how to upload content in an Android project and download it to an iOS project with the help of format conversions.\u003C\u002Fp>\u003Ch3 id=\"uploading-content-from-android\">Uploading content from Android\u003C\u002Fh3>\u003Cp>To upload the source content in an Android project, first create a \u003Ccode>strings.xml\u003C\u002Fcode> file in the desired directory. Use the following snippet as an example of what the file should contain:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-xml\">\n\u002F\u002Fstrings.xml\n\n&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;\n&lt;resources&gt;\n    &lt;string name=\"welcome_message\"&gt;Welcome to our app!&lt;\u002Fstring&gt;\n    &lt;string name=\"button_continue\"&gt;Continue&lt;\u002Fstring&gt;\n    &lt;string name=\"settings_title\"&gt;Settings&lt;\u002Fstring&gt;\n&lt;\u002Fresources&gt;\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Next, in the root of your project, create a \u003Ccode>localazy.json\u003C\u002Fcode> file with the following snippet:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\n\u002F\u002Flocalazy.json\n{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"upload\": {\n    \"type\": \"android\",\n    \"files\": \"path_to\u002Fyour_file\u002Fres\u002Fstrings.xml\"\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Now run the upload command in the terminal to upload your file:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy upload\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>After uploading your \u003Ccode>strings.xml\u003C\u002Fcode> file, navigate to the Localazy server and add your desired translations, such as French and Spanish.\u003C\u002Fp>\u003Ch3 id=\"downloading-content-to-ios\">Downloading content to iOS\u003C\u002Fh3>\u003Cp>To convert and download the \u003Ccode>strings.xml\u003C\u002Fcode> file uploaded from your Android project for use in an iOS project, create a \u003Ccode>localazy.json\u003C\u002Fcode> file in the root directory of your project with the following snippet:\u003C\u002Fp>\u003Cpre>\u003Ccode class=\"language-javascript\">\n\u002F\u002Flocalazy.json\n{\n  \"writeKey\": \"YOUR_WRITE_KEY\",\n  \"readKey\": \"YOUR_READ_KEY\",\n  \"download\": {\n    \"files\": \"public\u002Flocales\u002Fios-app\u002F${iosLprojFolder}\u002FLocalizable.strings\"\n  },\n  \"conversion\": {\n    \"actions\": {\n      \"type\": \"ios-strings\",\n      \"output\": \"public\u002Flocales\u002Fios-app\u002F${iosLprojFolder}\u002FLocalizable.strings\"\n    }\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>In the snippet above, \u003Ccode>download.files\u003C\u002Fcode> specifies where to save the downloaded \u003Ccode>Localizable.strings\u003C\u002Fcode> files using the \u003Ccode>${iosLprojFolder}\u003C\u002Fcode> variable to create language-specific folders dynamically.\u003C\u002Fp>\u003Cp>Next, run the download command in the terminal to download your iOS strings in the specified folder:\u003C\u002Fp>\u003Cp>\u003Ccode>localazy download\u003C\u002Fcode>\u003C\u002Fp>\u003Cp>And you're done! ✅ \u003Cstrong>You've successfully uploaded content from one platform (Android) and converted it for the other (iOS)\u003C\u002Fstrong>. \u003C\u002Fp>\u003Cblockquote>📑 Learn more about format conversion configuration \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fformat-conversions?srsltid=AfmBOoqnTp21Nnc_GX3qZz9nGYu1Pw4UiaLhAUfx6VlZSDZ8U9HkjlTZ\">here\u003C\u002Fa>\u003C\u002Fblockquote>\u003Ch2 id=\"%F0%9F%A4%95-common-cli-mistakes-to-avoid\">🤕 Common CLI mistakes to avoid\u003C\u002Fh2>\u003Cp>Even with a powerful tool like Localazy CLI, it's easy to run into issues. Here are some common mistakes and how to avoid or fix them.\u003C\u002Fp>\u003Ch3 id=\"1-incorrect-file-paths\">1. Incorrect file paths \u003C\u002Fh3>\u003Cp>Double-check your file paths in the \u003Ccode>localazy.json\u003C\u002Fcode> configuration. Confirm they match the actual paths in your project to avoid misconfigured upload and download errors.\u003C\u002Fp>\u003Ch3 id=\"2-missing-access-keys\">2. Missing access keys \u003C\u002Fh3>\u003Cp>Make sure your write and read keys are correctly added to the \u003Ccode>localazy.json\u003C\u002Fcode> file. If you encounter authentication errors, regenerate the keys from your Localazy account.\u003C\u002Fp>\u003Ch3 id=\"3-unsupported-file-formats\">3. Unsupported file formats \u003C\u002Fh3>\u003Cp>Verify that Localazy supports the file formats you're using or translating to. Refer to the documentation for a \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fsupported-file-formats\" rel=\"noopener noreferrer nofollow\">list of supported formats\u003C\u002Fa>.\u003C\u002Fp>\u003Ch3 id=\"4-network-issues\">4. Network issues \u003C\u002Fh3>\u003Cp>If you experience network-related errors, check your internet connection and try again. You can also use a VPN if you're facing regional restrictions.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%98%8E-my-recommended-automation-workflow\">😎 My recommended automation workflow\u003C\u002Fh2>\u003Cp>To make the most out of Localazy CLI, here's my personal workflow for automating your localization process:\u003C\u002Fp>\u003Col>\u003Cli>Set up your \u003Ccode>localazy.json\u003C\u002Fcode> file with configurations for all platforms (Android, iOS, web).\u003C\u002Fli>\u003Cli>Upload your source language files regularly to keep your translations up-to-date.\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automate-your-localization-in-ci-cd-pipelines\u002F\">Set up a CI\u002FCD pipeline\u003C\u002Fa> to automatically download new translations whenever they become available.\u003C\u002Fli>\u003Cli>Include the conversion object to generate different file formats as needed.\u003C\u002Fli>\u003C\u002Fol>\u003Cp>Once you follow this workflow, you will be able to automate the tedious aspects of localization and focus on delivering a great user experience.\u003C\u002Fp>\u003Cblockquote>⏯️ Related read: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Ftranslating-my-ios-app-no-meat-today-with-localazy\">Translating my iOS app with Localazy\u003C\u002Fa>\u003C\u002Fblockquote>\u003Ch2 id=\"%E2%9C%94%EF%B8%8F-final-thoughts\">✔️ Final thoughts\u003C\u002Fh2>\u003Cp>I hope the tips outlined in this guide help you be well-equipped to handle your next multiplatform localization project. 💪 I found Localazy CLI to be a powerful solution to manage translations across multiple platforms — it simplifies the process, automates repetitive tasks, and helps you maintain consistency in your translations. \u003C\u002Fp>\u003Cp>If you're a mobile app developer looking to streamline your localization workflow, it's worth considering, as \u003Cstrong>it can save you time and reduce localization errors\u003C\u002Fstrong>. Give it a try and see how it can improve your workflow. \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fbook-demo\" rel=\"noopener noreferrer nofollow\">Book a demo\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fregister\" rel=\"noopener noreferrer nofollow\">register now\u003C\u002Fa> to get started.\u003C\u002Fp>","public","none","2025-03-12T13:20:48.000+01:00",[2133],{"id":2040,"name":2041,"slug":2042,"profile_image":2043,"cover_image":8,"bio":2134,"website":2135,"location":2136,"facebook":8,"twitter":8,"meta_title":8,"meta_description":8,"url":2137},"Software engineer and technical writer. I help people understand complex technical subjects by breaking them down into simple, clear explanations.","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fkizmelvin\u002F","Fairfax, United States","https:\u002F\u002Fghost.localazy.com\u002Fauthor\u002Fchidi-eze\u002F",[2139,2142,2148,2154,2157,2160,2165,2170,2175],{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},"60a37fc7cf7b6a0001d1f0e8","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcli\u002F",{"id":2143,"name":2144,"slug":2145,"description":2146,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2147},"60a37fc7cf7b6a0001d1f131","[DICT] Android","term-20","Android is a mobile operating system (OS) primarily designed for touchscreen devices such as smartphones and tablets.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-20\u002F",{"id":2149,"name":2150,"slug":2151,"description":2152,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2153},"61af9d57df4bcb00010bc95b","[DICT] JSON","term-108","JSON stands for JavaScript Object Notation and it's a widely used File Format.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-108\u002F",{"id":2155,"name":2051,"slug":2052,"description":2051,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2156},"60a37fc7cf7b6a0001d1f0eb","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fjson5\u002F",{"id":2158,"name":419,"slug":1836,"description":419,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2159},"60a37fc7cf7b6a0001d1f0f9","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Flocalization\u002F",{"id":2161,"name":2162,"slug":2163,"description":8,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2164},"60fffb486f8ebe0001bd8ddd","[COMSHARE]","comshare","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcomshare\u002F",{"id":2166,"name":2167,"slug":2168,"description":2081,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2169},"67fff99063350c0001d594f8","[DICT] CLI","term-284","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-284\u002F",{"id":2171,"name":2172,"slug":2173,"description":2123,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2174},"6807959863350c0001d59590","[CTA] Explore our developer hub","cta-45","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcta-45\u002F",{"id":2176,"name":2177,"slug":2178,"description":2098,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2179},"67ffba4863350c0001d594f2","[DICT] Source key","term-239","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-239\u002F",{"id":2040,"name":2041,"slug":2042,"profile_image":2043,"cover_image":8,"bio":2134,"website":2135,"location":2136,"facebook":8,"twitter":8,"meta_title":8,"meta_description":8,"url":2137},{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},"https:\u002F\u002Fghost.localazy.com\u002Ftips-for-localizing-multiplatform-apps-localazy-cli\u002F",{"id":2184,"owner":2185,"created_by":8,"sort":8,"title":2190,"slug":2191,"modified_on":2192,"created_on":2193,"pinned":229,"badge":8,"priority":1824,"main_image":2194,"status":4,"tags":2195,"dictionary":2202,"reading_time":50,"excerpt":2229,"og_title":53,"og_description":53,"og_image":53,"content":2230,"meta_title":53,"meta_description":53,"canonical":53,"cta":2231,"fullGhostPost":2238},"67c049c634f1ce00011a8ae8",{"id":2186,"first_name":2187,"last_name":53,"slug":2188,"avatar":2189},"1","Václav Hodek","vaclav-hodek","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fvasek.png","Localazy CLI Tips: Automating signing and notarization for Apple binaries","localazy-cli-tips-automated-signing-and-notarization-for-apple-binaries","2025-03-28T16:18:44.000+01:00","2025-03-06T08:10:00.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F03\u002FCLI-Tips-apple-binaries.png",[2196,2197,2200],{"id":518,"created_on":1828,"status":4,"label":826,"slug":607,"on_index_page":227},{"id":518,"created_on":1828,"status":4,"label":2198,"slug":2199,"on_index_page":229},"DevTips","devtips",{"id":518,"created_on":1828,"status":4,"label":2201,"slug":192,"on_index_page":227},"GitHub",[2203,2213,2222],{"id":1004,"status":4,"owner":1853,"created_on":2056,"title":2204,"excerpt":2205,"content":2206,"slug":2207,"meta_title":8,"meta_description":8,"canonical":8,"related_terms":2208},"CI","CI can stand for Continuous Integration or Continuous Improvement. What is the difference?","CI can stand for Continuous Integration or Continuous Improvement. \n\nWhat is the difference?\n\n+ [Continuous Improvement](\u002Fdictionary\u002Fcontinuous-improvement\u002F) in Organizational Management\n+ [Continuous Integration](\u002Fdictionary\u002Fcontinuous-integration\u002F) in Software Development","ci",[2209,2211],{"id":624,"slug":2210},"continuous-improvement",{"id":576,"slug":2212},"continuous-integration",{"id":154,"status":4,"owner":1853,"created_on":2056,"title":2214,"excerpt":2215,"content":2216,"slug":2217,"meta_title":8,"meta_description":8,"canonical":8,"related_terms":2218},"Kotlin","An open-source statically typed programming language that targets the JVM, Android, JavaScript, and Native.","[Kotlin](https:\u002F\u002Fkotlinlang.org\u002F) is a programming language developed by [JetBrains](https:\u002F\u002Fwww.jetbrains.com\u002F). \n\nAs a statically typed programming language, it can be run on multiple operating systems. Kotlin also has both object-oriented and functional constructs.\n\nIt’s a general-purpose programming language which means it can run on JVM, Android, and JavaScript.\n\nAndrey Breslav, Kotlin’s development lead, said Kotlin is designed to be an industrial-strength object-oriented language, and a “better language” than Java, but still be fully interoperable with Java code, allowing companies to make a gradual migration from Java to Kotlin.\n\n## References:\n- [Kotlinlang.org](https:\u002F\u002Fkotlinlang.org\u002F)\n- [Why Localazy developers love Kotlin?](\u002Fblog\u002Finterview-jetbrains-why-localazy-developers-love-kotlin)\n- [Kotlin-related articles on our blog](\u002Ftags\u002Fkotlin)","kotlin",[2219,2220,2221],{"id":174,"slug":659},{"id":319,"slug":2069},{"id":2073,"slug":707},{"id":398,"status":4,"owner":1853,"created_on":2056,"title":2223,"excerpt":2224,"content":2225,"slug":2226,"meta_title":8,"meta_description":8,"canonical":8,"related_terms":2227},"Gradle","An open-source build automation tool that is designed to be flexible enough to build almost any type of software. ","Gradle helps teams build, automate and deliver better software, faster. \n\nGradle's rich API and mature ecosystem of plugins and integrations allow for real build automation from end to end.\n\nFor example, Altogether with [Android Studio](\u002Fdictionary\u002Fandroid-studio\u002F), Gradle can help integrate Localazy easily with your Android App thanks to [Localazy Gradle plugin](\u002Fdocs\u002Fandroid\u002Flocalazy-gradle-plugin) available.","gradle",[2228],{"id":324,"slug":2062},"Learn how to automate code signing for macOS using Github Actions to enjoy all the benefits of a consistent codebase in Localazy CLI.","\u003Cp>At Localazy, we've always strived to support all major platforms with our CLI — whether it's JVM, NPM, Linux, Windows, macOS, or Docker. Achieving this level of cross-platform compatibility without maintaining multiple codebases was a challenge, but we found an elegant solution in \u003Cstrong>Kotlin Multiplatform (KMP)\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>Previously, \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automatically-sign-macos-apps-using-github-actions\" rel=\"noopener noreferrer nofollow\">our macOS binaries were signed manually using a chain of commands within GitHub Actions\u003C\u002Fa>. While functional, there were several problems:\u003C\u002Fp>\u003Cul>\u003Cli>This method required a preconfigured macOS computer for building, which wasn't scalable when we added ARM64 support.\u003C\u002Fli>\u003Cli>This preconfigured computer was an aging Mac Mini (2012) that finally reached the end of its lifespan after 12 years of service.\u003C\u002Fli>\u003Cli>And on top of that, macOS 14+ introduced stricter notarization requirements, rendering our existing solution obsolete.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Here's how we solved this problem and\u003Cstrong> how to use GitHub Actions to go through the signing method now\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch2 id=\"one-codebase-multiple-targets\">🎯 One codebase, multiple targets \u003Ca class=\"markdownit-header-anchor\" href=\"#one-codebase-multiple-targets\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>\u003Ca href=\"https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fmultiplatform.html\" rel=\"noopener noreferrer nofollow\">Kotlin Multiplatform\u003C\u002Fa> allowed us to \u003Cstrong>build all our CLI targets from a single codebase\u003C\u002Fstrong>, reducing duplication and ensuring consistency across different environments. We still needed some platform-specific code; for example, we developed a custom networking implementation for Windows instead of using the standard Ktor client, which introduced unnecessary dependencies.\u003C\u002Fp>\u003Cp>In addition to Kotlin MPP, we use several \u003Cstrong>Gradle build scripts\u003C\u002Fstrong>, which compile binaries and package them for\u003Cstrong> NPM, Docker, Linux (DEB\u002FRPM), and Homebrew (macOS)\u003C\u002Fstrong>, simplifying our release pipeline.\u003C\u002Fp>\u003Cp>Basically, any push to the \u003Ccode>main\u003C\u002Fcode> branch builds all the binaries as release candidates and makes them available for our internal testing. A new release or tag automatically builds and distributes binaries and packages to all the mentioned locations.\u003C\u002Fp>\u003Ch2 id=\"signing-and-notarizing-automatically-with-github-actions\">➡️ Signing & notarizing automatically with Github Actions \u003Ca class=\"markdownit-header-anchor\" href=\"#signing-and-notarizing-automatically-with-github-actions\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Recently, we upgraded to \u003Cstrong>Kotlin 2.1.10\u003C\u002Fstrong>, which enabled us to add \u003Cstrong>native support for ARM64-based macOS\u003C\u002Fstrong>, once again taking advantage of our single codebase. However, this transition brought a major challenge: \u003Cstrong>code signing and notarization\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch3 id=\"the-solution-code-sign-action\">The solution: code-sign-action \u003Ca class=\"markdownit-header-anchor\" href=\"#the-solution-code-sign-action\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To automate and streamline our signing process, we switched to \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flando\u002Fcode-sign-action\" rel=\"noopener noreferrer nofollow\">\u003Cstrong>lando\u002Fcode-sign-action\u003C\u002Fstrong>\u003C\u002Fa>. After several iterations, we arrived at a simple and effective configuration:\u003C\u002Fp>\u003Cpre>\u003Ccode>- name: Codesign and Notarization\n  uses: lando\u002Fcode-sign-action@v3\n  with:\n    file: dist\u002FmacosArm64\u002Flocalazy\n    certificate-data: ${{ secrets.CLI_MACOS_CERTIFICATE }}\n    certificate-id: ${{ secrets.CLI_MACOS_TEAM_ID }}\n    certificate-password: ${{ secrets.CLI_MACOS_CERTIFICATE_PWD }}\n    apple-notary-user: ${{ secrets.CLI_MACOS_NOTARY_USER }}\n    apple-notary-password: ${{ secrets.CLI_MACOS_NOTARY_PWD }}\n    apple-product-id: com.localazy.cli\n    options: --options runtime --entitlements dist\u002Fentitlements.xml\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>This new approach allowed us to:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>🏗️ Offload the entire building process\u003C\u002Fstrong> to GitHub Action runners (no need for a dedicated macOS machine).\u003C\u002Fli>\u003Cli>\u003Cstrong>🔍 Notarize the binaries for macOS 14+\u003C\u002Fstrong> seamlessly.\u003C\u002Fli>\u003Cli>\u003Cstrong>🔄 Maintain a fully automated release pipeline\u003C\u002Fstrong> while still securely complying with Apple's requirements.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"how-to-get-the-certificate\">How to get the certificate \u003Ca class=\"markdownit-header-anchor\" href=\"#how-to-get-the-certificate\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Let's see the process in action. First, you need to \u003Cstrong>create a signing request\u003C\u002Fstrong>. Since we usually prepare them on a non-macOS machine, we do so using the command line:\u003C\u002Fp>\u003Cpre>\u003Ccode>openssl genrsa -out localazy.key 2048\nopenssl req -new -key localazy.key -out localazy.csr -subj \"\u002FemailAddress=team@localazy.com, CN=Localazy, C=CZ\"\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The examples on Apple's site use a key with 3072 bits, but such a key is not yet supported for creating the certificate (as of March 2025), so we need to stick with 2048 bits.\u003C\u002Fp>\u003Cp>With the signing request ready, sign in to developer.apple.com and navigate to the \u003Cstrong>Certificates\u003C\u002Fstrong> section. In the top-right corner, you will find the team ID next to your name (or your company's name). Store the team ID in Github Actions secrets as \u003Cstrong>CLI_MACOS_TEAM_ID\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>Next, create a new certificate and select \u003Cstrong>Software &gt;\u003C\u002Fstrong> \u003Cstrong>Developer ID Application\u003C\u002Fstrong> as the type. This is the only certificate that allows notarization of the resulting binary. \u003C\u002Fp>\u003Cp>Upload the CSR file and download the final certificate. Now \u003Cstrong>combine the key and certificate to generate a PKCS12 file and then convert it to base64\u003C\u002Fstrong>. We accomplish this using the command line as follows:\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F Convert CER to PEM\nopenssl x509 -inform der -in developerID_application.cer -out developerID_application.pem\n\n\u002F\u002F Create PKCS12\nopenssl pkcs12 -export -out localazy.p12 -inkey localazy.key -in developerID_application.pem\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>During the second step, you will be prompted to enter a password for PKCS12 storage. We store this password in GitHub Actions secrets as \u003Cstrong>CLI_MACOS_CERTIFICATE_PWD\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>The final step in this process is executing the last command, which ensures the PKCS12 certificate is correctly encoded for secure storage and further usage. The last command we need is:\u003C\u002Fp>\u003Cpre>\u003Ccode>base64 localazy.p12 &gt; localazy.base64\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>We securely store the content of localazy.base64 in GitHub Actions secrets as \u003Cstrong>CLI_MACOS_CERTIFICATE\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch3 id=\"login-for-the-notarization-service\">Login for the notarization service \u003Ca class=\"markdownit-header-anchor\" href=\"#login-for-the-notarization-service\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>The value of \u003Cstrong>CLI_MACOS_NOTARY_USER\u003C\u002Fstrong> in our GitHub Actions secrets is the Apple ID, typically the email address associated with the Apple Developer account.\u003C\u002Fp>\u003Cp>To obtain the \u003Cstrong>CLI_MACOS_NOTARY_PWD\u003C\u002Fstrong>, navigate to \u003Cstrong>Sign-In &gt; Security\u003C\u002Fstrong> &gt; \u003Cstrong>App-Specific Passwords\u003C\u002Fstrong> at account.apple.com. Here, you can generate a new password specifically for notarization.\u003C\u002Fp>\u003Ch3 id=\"entitlementsxml\">entitlements.xml \u003Ca class=\"markdownit-header-anchor\" href=\"#entitlementsxml\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>We utilize a simple entitlements file to define the necessary permissions for our application.\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;!DOCTYPE plist PUBLIC \"-\u002F\u002FApple\u002F\u002FDTD PLIST 1.0\u002F\u002FEN\" \"http:\u002F\u002Fwww.apple.com\u002FDTDs\u002FPropertyList-1.0.dtd\"&gt;\n&lt;plist version=\"1.0\"&gt;\n    &lt;dict&gt;\n        &lt;key&gt;com.apple.security.cs.allow-unsigned-executable-memory&lt;\u002Fkey&gt;\n        &lt;true\u002F&gt;\n    &lt;\u002Fdict&gt;\n&lt;\u002Fplist&gt;\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"homebrew-with-multiple-targets\">Homebrew with multiple targets \u003Ca class=\"markdownit-header-anchor\" href=\"#homebrew-with-multiple-targets\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>When the new binaries are ready, we package them as tar.gz and upload them to our storage, making them available for distribution. Immediately afterward, we run a simple script to update our Homebrew recipe at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fhomebrew-tools\" rel=\"noopener noreferrer nofollow\">https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fhomebrew-tools\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>The Homebrew update script performs the following operations:\u003C\u002Fp>\u003Cul>\u003Cli>Clones the repository \u003Cstrong>localazy\u002Fhomebrew-tools\u003C\u002Fstrong>\u003C\u002Fli>\u003Cli>Downloads the tar.gz files for both macOS x86 and macOS ARM64 versions\u003C\u002Fli>\u003Cli>Generates a new recipe with updated URLs and SHA checksums\u003C\u002Fli>\u003Cli>Automatically commits the changes to our repository\u003C\u002Fli>\u003C\u002Ful>\u003Cp>The recipe is as follows:\u003C\u002Fp>\u003Cpre>\u003Ccode>class Localazy &lt; Formula\n  desc \"CLI tool for the Localazy platform\"\n  homepage \"https:\u002F\u002Flocalazy.com\"\n\n  if Hardware::CPU.arm?\n    url \"https:\u002F\u002Fdist.localazy.com\u002FmacosArm64\u002Fmacos-$1.tar.gz\"\n    sha256 \"$(shasum -a 256 macos-Arm64-$1.tar.gz | grep -o \"^\\S*\")\"\n  elsif Hardware::CPU.intel?\n    url \"https:\u002F\u002Fdist.localazy.com\u002Fmacos\u002Fmacos-$1.tar.gz\"\n    sha256 \"$(shasum -a 256 macos-X64-$1.tar.gz | grep -o \"^\\S*\")\"\n  end\n\n  depends_on \"curl\"\n\n  def install\n    bin.install \"localazy\"\n  end\n\n  test do\n    system \"#{bin}\u002Flocalazy\", \"-h\"\n  end\nend\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>As shown above, a simple decision block determines the appropriate URL and SHA256 checksum based on the target platform architecture.\u003C\u002Fp>\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002F\">Our CLI\u003C\u002Fa> is now available on any Mac\u003C\u002Fstrong>, whether ARM64 or X64-based, with just two simple commands:\u003C\u002Fp>\u003Cpre>\u003Ccode>&gt; brew tap localazy\u002Ftools\n&gt; brew install localazy\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"conclusion\">✔️ Conclusion \u003Ca class=\"markdownit-header-anchor\" href=\"#conclusion\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Using Kotlin Multiplatform, a Gradle automation, and GitHub Actions, we've successfully built \u003Cstrong>a scalable, efficient, and fully automated process for developing, packaging, signing, and distributing the Localazy CLI \u003C\u002Fstrong>across multiple platforms.\u003C\u002Fp>\u003Cp>Plus, by extending this automation to code signing and notarization for Apple binaries, we've added support for ARM64 and \u003Cstrong>significantly improved the security and reliability of our CLI distribution\u003C\u002Fstrong>. This allows us to comply with Apple's latest requirements while maintaining a streamlined and efficient workflow.\u003C\u002Fp>\u003Cp>If you're looking to develop cross-platform CLI tools with robust automation, Kotlin Multiplatform and modern CI\u002FCD practices provide a powerful foundation. We hope these tips were helpful!\u003C\u002Fp>",{"id":22,"status":4,"created_on":2232,"modified_on":2233,"icon":2121,"header":2234,"description":2235,"button_label":2236,"link":2237},"2022-03-17T12:23:03.000Z","2025-01-20T13:25:27.000Z","Integrate with anything using Localazy CLI","Developers love our CLI! Localize your product using the most advanced command-line interface for i18n, l10n and translation management. ","Read more","features\u002Fcli\u002F",{"slug":2191,"id":2184,"uuid":2239,"title":2190,"html":2240,"comment_id":2184,"feature_image":2194,"featured":229,"visibility":2129,"email_recipient_filter":2130,"created_at":2241,"updated_at":2192,"published_at":2193,"custom_excerpt":2229,"codeinjection_head":8,"codeinjection_foot":8,"custom_template":8,"canonical_url":8,"authors":2242,"tags":2249,"primary_author":2287,"primary_tag":2288,"url":2289,"excerpt":2229,"reading_time":50,"access":229,"send_email_when_published":227,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"email_subject":8,"frontmatter":8,"dictionary":2202,"cta":2231,"plainTags":2195},"5b6d3db2-7eba-4691-be92-6b9bad361553","\u003Cp>At Localazy, we've always strived to support all major platforms with our CLI — whether it's JVM, NPM, Linux, Windows, macOS, or Docker. Achieving this level of cross-platform compatibility without maintaining multiple codebases was a challenge, but we found an elegant solution in \u003Cstrong>Kotlin Multiplatform (KMP)\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>Previously, \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-automatically-sign-macos-apps-using-github-actions\" rel=\"noopener noreferrer nofollow\">our macOS binaries were signed manually using a chain of commands within GitHub Actions\u003C\u002Fa>. While functional, there were several problems:\u003C\u002Fp>\u003Cul>\u003Cli>This method required a preconfigured macOS computer for building, which wasn't scalable when we added ARM64 support.\u003C\u002Fli>\u003Cli>This preconfigured computer was an aging Mac Mini (2012) that finally reached the end of its lifespan after 12 years of service.\u003C\u002Fli>\u003Cli>And on top of that, macOS 14+ introduced stricter notarization requirements, rendering our existing solution obsolete.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Here's how we solved this problem and\u003Cstrong> how to use GitHub Actions to go through the signing method now\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%8E%AF-one-codebase-multiple-targets\">🎯 One codebase, multiple targets\u003C\u002Fh2>\u003Cp>\u003Ca href=\"https:\u002F\u002Fkotlinlang.org\u002Fdocs\u002Fmultiplatform.html\" rel=\"noopener noreferrer nofollow\">Kotlin Multiplatform\u003C\u002Fa> allowed us to \u003Cstrong>build all our CLI targets from a single codebase\u003C\u002Fstrong>, reducing duplication and ensuring consistency across different environments. We still needed some platform-specific code; for example, we developed a custom networking implementation for Windows instead of using the standard Ktor client, which introduced unnecessary dependencies.\u003C\u002Fp>\u003Cp>In addition to Kotlin MPP, we use several \u003Cstrong>Gradle build scripts\u003C\u002Fstrong>, which compile binaries and package them for\u003Cstrong> NPM, Docker, Linux (DEB\u002FRPM), and Homebrew (macOS)\u003C\u002Fstrong>, simplifying our release pipeline.\u003C\u002Fp>\u003Cp>Basically, any push to the \u003Ccode>main\u003C\u002Fcode> branch builds all the binaries as release candidates and makes them available for our internal testing. A new release or tag automatically builds and distributes binaries and packages to all the mentioned locations.\u003C\u002Fp>\u003Ch2 id=\"%E2%9E%A1%EF%B8%8F-signing-notarizing-automatically-with-github-actions\">➡️ Signing &amp; notarizing automatically with Github Actions\u003C\u002Fh2>\u003Cp>Recently, we upgraded to \u003Cstrong>Kotlin 2.1.10\u003C\u002Fstrong>, which enabled us to add \u003Cstrong>native support for ARM64-based macOS\u003C\u002Fstrong>, once again taking advantage of our single codebase. However, this transition brought a major challenge: \u003Cstrong>code signing and notarization\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch3 id=\"the-solution-code-sign-action\">The solution: code-sign-action\u003C\u002Fh3>\u003Cp>To automate and streamline our signing process, we switched to \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flando\u002Fcode-sign-action\" rel=\"noopener noreferrer nofollow\">\u003Cstrong>lando\u002Fcode-sign-action\u003C\u002Fstrong>\u003C\u002Fa>. After several iterations, we arrived at a simple and effective configuration:\u003C\u002Fp>\u003Cpre>\u003Ccode>- name: Codesign and Notarization\n  uses: lando\u002Fcode-sign-action@v3\n  with:\n    file: dist\u002FmacosArm64\u002Flocalazy\n    certificate-data: ${{ secrets.CLI_MACOS_CERTIFICATE }}\n    certificate-id: ${{ secrets.CLI_MACOS_TEAM_ID }}\n    certificate-password: ${{ secrets.CLI_MACOS_CERTIFICATE_PWD }}\n    apple-notary-user: ${{ secrets.CLI_MACOS_NOTARY_USER }}\n    apple-notary-password: ${{ secrets.CLI_MACOS_NOTARY_PWD }}\n    apple-product-id: com.localazy.cli\n    options: --options runtime --entitlements dist\u002Fentitlements.xml\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>This new approach allowed us to:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>🏗️ Offload the entire building process\u003C\u002Fstrong> to GitHub Action runners (no need for a dedicated macOS machine).\u003C\u002Fli>\u003Cli>\u003Cstrong>🔍 Notarize the binaries for macOS 14+\u003C\u002Fstrong> seamlessly.\u003C\u002Fli>\u003Cli>\u003Cstrong>🔄 Maintain a fully automated release pipeline\u003C\u002Fstrong> while still securely complying with Apple's requirements.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"how-to-get-the-certificate\">How to get the certificate\u003C\u002Fh3>\u003Cp>Let's see the process in action. First, you need to \u003Cstrong>create a signing request\u003C\u002Fstrong>. Since we usually prepare them on a non-macOS machine, we do so using the command line:\u003C\u002Fp>\u003Cpre>\u003Ccode>openssl genrsa -out localazy.key 2048\nopenssl req -new -key localazy.key -out localazy.csr -subj \"\u002FemailAddress=team@localazy.com, CN=Localazy, C=CZ\"\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>The examples on Apple's site use a key with 3072 bits, but such a key is not yet supported for creating the certificate (as of March 2025), so we need to stick with 2048 bits.\u003C\u002Fp>\u003Cp>With the signing request ready, sign in to developer.apple.com and navigate to the \u003Cstrong>Certificates\u003C\u002Fstrong> section. In the top-right corner, you will find the team ID next to your name (or your company's name). Store the team ID in Github Actions secrets as \u003Cstrong>CLI_MACOS_TEAM_ID\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>Next, create a new certificate and select \u003Cstrong>Software &gt;\u003C\u002Fstrong> \u003Cstrong>Developer ID Application\u003C\u002Fstrong> as the type. This is the only certificate that allows notarization of the resulting binary. \u003C\u002Fp>\u003Cp>Upload the CSR file and download the final certificate. Now \u003Cstrong>combine the key and certificate to generate a PKCS12 file and then convert it to base64\u003C\u002Fstrong>. We accomplish this using the command line as follows:\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F Convert CER to PEM\nopenssl x509 -inform der -in developerID_application.cer -out developerID_application.pem\n\n\u002F\u002F Create PKCS12\nopenssl pkcs12 -export -out localazy.p12 -inkey localazy.key -in developerID_application.pem\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>During the second step, you will be prompted to enter a password for PKCS12 storage. We store this password in GitHub Actions secrets as \u003Cstrong>CLI_MACOS_CERTIFICATE_PWD\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>The final step in this process is executing the last command, which ensures the PKCS12 certificate is correctly encoded for secure storage and further usage. The last command we need is:\u003C\u002Fp>\u003Cpre>\u003Ccode>base64 localazy.p12 &gt; localazy.base64\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>We securely store the content of localazy.base64 in GitHub Actions secrets as \u003Cstrong>CLI_MACOS_CERTIFICATE\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch3 id=\"login-for-the-notarization-service\">Login for the notarization service\u003C\u002Fh3>\u003Cp>The value of \u003Cstrong>CLI_MACOS_NOTARY_USER\u003C\u002Fstrong> in our GitHub Actions secrets is the Apple ID, typically the email address associated with the Apple Developer account.\u003C\u002Fp>\u003Cp>To obtain the \u003Cstrong>CLI_MACOS_NOTARY_PWD\u003C\u002Fstrong>, navigate to \u003Cstrong>Sign-In &gt; Security\u003C\u002Fstrong> &gt; \u003Cstrong>App-Specific Passwords\u003C\u002Fstrong> at account.apple.com. Here, you can generate a new password specifically for notarization.\u003C\u002Fp>\u003Ch3 id=\"entitlementsxml\">entitlements.xml\u003C\u002Fh3>\u003Cp>We utilize a simple entitlements file to define the necessary permissions for our application.\u003C\u002Fp>\u003Cpre>\u003Ccode>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;!DOCTYPE plist PUBLIC \"-\u002F\u002FApple\u002F\u002FDTD PLIST 1.0\u002F\u002FEN\" \"http:\u002F\u002Fwww.apple.com\u002FDTDs\u002FPropertyList-1.0.dtd\"&gt;\n&lt;plist version=\"1.0\"&gt;\n    &lt;dict&gt;\n        &lt;key&gt;com.apple.security.cs.allow-unsigned-executable-memory&lt;\u002Fkey&gt;\n        &lt;true\u002F&gt;\n    &lt;\u002Fdict&gt;\n&lt;\u002Fplist&gt;\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"homebrew-with-multiple-targets\">Homebrew with multiple targets\u003C\u002Fh3>\u003Cp>When the new binaries are ready, we package them as tar.gz and upload them to our storage, making them available for distribution. Immediately afterward, we run a simple script to update our Homebrew recipe at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fhomebrew-tools\" rel=\"noopener noreferrer nofollow\">https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fhomebrew-tools\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>The Homebrew update script performs the following operations:\u003C\u002Fp>\u003Cul>\u003Cli>Clones the repository \u003Cstrong>localazy\u002Fhomebrew-tools\u003C\u002Fstrong>\u003C\u002Fli>\u003Cli>Downloads the tar.gz files for both macOS x86 and macOS ARM64 versions\u003C\u002Fli>\u003Cli>Generates a new recipe with updated URLs and SHA checksums\u003C\u002Fli>\u003Cli>Automatically commits the changes to our repository\u003C\u002Fli>\u003C\u002Ful>\u003Cp>The recipe is as follows:\u003C\u002Fp>\u003Cpre>\u003Ccode>class Localazy &lt; Formula\n  desc \"CLI tool for the Localazy platform\"\n  homepage \"https:\u002F\u002Flocalazy.com\"\n\n  if Hardware::CPU.arm?\n    url \"https:\u002F\u002Fdist.localazy.com\u002FmacosArm64\u002Fmacos-$1.tar.gz\"\n    sha256 \"$(shasum -a 256 macos-Arm64-$1.tar.gz | grep -o \"^\\S*\")\"\n  elsif Hardware::CPU.intel?\n    url \"https:\u002F\u002Fdist.localazy.com\u002Fmacos\u002Fmacos-$1.tar.gz\"\n    sha256 \"$(shasum -a 256 macos-X64-$1.tar.gz | grep -o \"^\\S*\")\"\n  end\n\n  depends_on \"curl\"\n\n  def install\n    bin.install \"localazy\"\n  end\n\n  test do\n    system \"#{bin}\u002Flocalazy\", \"-h\"\n  end\nend\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>As shown above, a simple decision block determines the appropriate URL and SHA256 checksum based on the target platform architecture.\u003C\u002Fp>\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002F\">Our CLI\u003C\u002Fa> is now available on any Mac\u003C\u002Fstrong>, whether ARM64 or X64-based, with just two simple commands:\u003C\u002Fp>\u003Cpre>\u003Ccode>&gt; brew tap localazy\u002Ftools\n&gt; brew install localazy\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"%E2%9C%94%EF%B8%8F-conclusion\">✔️ Conclusion\u003C\u002Fh2>\u003Cp>Using Kotlin Multiplatform, a Gradle automation, and GitHub Actions, we've successfully built \u003Cstrong>a scalable, efficient, and fully automated process for developing, packaging, signing, and distributing the Localazy CLI \u003C\u002Fstrong>across multiple platforms.\u003C\u002Fp>\u003Cp>Plus, by extending this automation to code signing and notarization for Apple binaries, we've added support for ARM64 and \u003Cstrong>significantly improved the security and reliability of our CLI distribution\u003C\u002Fstrong>. This allows us to comply with Apple's latest requirements while maintaining a streamlined and efficient workflow.\u003C\u002Fp>\u003Cp>If you're looking to develop cross-platform CLI tools with robust automation, Kotlin Multiplatform and modern CI\u002FCD practices provide a powerful foundation. We hope these tips were helpful!\u003C\u002Fp>","2025-02-27T12:17:26.000+01:00",[2243],{"id":2186,"name":2187,"slug":2188,"profile_image":2189,"cover_image":8,"bio":2244,"website":2245,"location":2246,"facebook":8,"twitter":2247,"meta_title":8,"meta_description":8,"url":2248},"Entrepreneur, idea maker, developer, SaaS & mobile enthusiast. Building a localization solution for developers at Localazy.","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fvaclavhodek\u002F","Slavkov u Brna, Czech Republic","@vaclavhodek","https:\u002F\u002Fghost.localazy.com\u002Fauthor\u002Fvaclav-hodek\u002F",[2250,2251,2254,2257,2262,2268,2274,2275,2281],{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},{"id":2252,"name":2198,"slug":2199,"description":2198,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2253},"60a37fc7cf7b6a0001d1f0ea","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fdevtips\u002F",{"id":2255,"name":2201,"slug":192,"description":2201,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2256},"60a37fc7cf7b6a0001d1f0fb","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fgithub\u002F",{"id":2258,"name":2259,"slug":2260,"description":2205,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2261},"60a37fc7cf7b6a0001d1f155","[DICT] CI","term-56","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-56\u002F",{"id":2263,"name":2264,"slug":2265,"description":2266,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2267},"60a37fc7cf7b6a0001d1f12c","[DICT] Kotlin","term-15","Kotlin is an open-source statically typed programming language that targets the JVM, Android, JavaScript, and Native.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-15\u002F",{"id":2269,"name":2270,"slug":2271,"description":2272,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2273},"60a37fc7cf7b6a0001d1f133","[DICT] Gradle","term-22","Gradle is an open-source build automation tool that is designed to be flexible enough to build almost any type of software. ","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-22\u002F",{"id":2161,"name":2162,"slug":2163,"description":8,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2164},{"id":2276,"name":2277,"slug":2278,"description":2279,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2280},"60a37fc7cf7b6a0001d1f111","[CTA] CLI friendly app localization","cta-3","Make sure you do not miss this update. Whether it is iOS or TypeScript app, you can localize your app using brand new Localazy CLI.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcta-3\u002F",{"id":2282,"name":2283,"slug":2284,"description":2285,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2286},"67e6bcb263350c0001d58926","[AD] Ambassador","ad-25","https:\u002F\u002Flocalazy.com\u002Fblog\u002Flocalazy-ambassador-program-free-localization-features","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fad-25\u002F",{"id":2186,"name":2187,"slug":2188,"profile_image":2189,"cover_image":8,"bio":2244,"website":2245,"location":2246,"facebook":8,"twitter":2247,"meta_title":8,"meta_description":8,"url":2248},{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},"https:\u002F\u002Fghost.localazy.com\u002Flocalazy-cli-tips-automated-signing-and-notarization-for-apple-binaries\u002F",{"id":2291,"owner":2292,"created_by":8,"sort":8,"title":2297,"slug":2298,"modified_on":2299,"created_on":2300,"pinned":229,"badge":8,"priority":1824,"main_image":2301,"status":4,"tags":2302,"dictionary":2308,"reading_time":50,"excerpt":2309,"og_title":53,"og_description":53,"og_image":53,"content":2310,"meta_title":53,"meta_description":53,"canonical":53,"cta":2311,"fullGhostPost":2312},"6784e53134f1ce00011a7039",{"id":2293,"first_name":2294,"last_name":53,"slug":2295,"avatar":2296},"65647a51047091000194286f","Febby Gunawan","tester-5","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002Ffebby-profile.png","CLI is just a command – chain it!","cli-is-just-a-command-chain-it","2025-03-28T16:19:00.000+01:00","2025-01-22T17:37:55.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002FCLI-is-command.png",[2303,2304,2305],{"id":518,"created_on":1828,"status":4,"label":826,"slug":607,"on_index_page":227},{"id":518,"created_on":1828,"status":4,"label":2198,"slug":2199,"on_index_page":229},{"id":518,"created_on":1828,"status":4,"label":2306,"slug":2307,"on_index_page":227},"Automated Localization","automated-localization",[],"Customizing Localazy's command-line interface is not as difficult as it sounds! Here are 10 ideas to personalize this small but mighty tool through chaining to fit your project's needs.","\u003Cp>From time to time, Localazy users ask us \u003Cstrong>how to handle specialized tasks with the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\">Localazy CLI\u003C\u002Fa>\u003C\u002Fstrong>. Common requests include uploading localizable files from a ZIP archive, post-processing downloaded translations (merging them, changing the content, or copying them elsewhere), and more.\u003C\u002Fp>\u003Cp>Localazy CLI doesn't and will likely never ship with every possible feature you might need to fully customize your workflow. We don't want to reinvent the wheel, and it would be almost impossible to support every specialized scenario. Instead, the CLI focuses on critical localization tasks while remaining flexible and script-friendly, ready for further personalization.\u003C\u002Fp>\u003Cp>The big idea? \u003Cstrong>Think of the Localazy CLI as one command among many \u003C\u002Fstrong>in your workflow. Use standard command-line tools before or after calling \u003Ccode>localazy upload\u003C\u002Fcode> or \u003Ccode>localazy download\u003C\u002Fcode>. By chaining commands, you can accomplish almost any automation or customization task.\u003C\u002Fp>\u003Ch2 id=\"reference-materials\">📚 Reference materials \u003Ca class=\"markdownit-header-anchor\" href=\"#reference-materials\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Before we dive in, let's quickly refresh what you need to know about CLI:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>⚡️ The whys\u003C\u002Fstrong>: Learn \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-use-localazy-cli-to-streamline-your-localization-workflow\u002F\">how it can benefit your workflows\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>\u003Cstrong>🔨 Installation\u003C\u002Fstrong>: Check the official \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\" rel=\"noopener noreferrer nofollow\">Localazy CLI Documentation\u003C\u002Fa> for detailed setup instructions.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"basic-commands\">Basic commands \u003Ca class=\"markdownit-header-anchor\" href=\"#basic-commands\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Ccode>localazy upload\u003C\u002Fcode> – Uploads your source files or strings to Localazy.\u003C\u002Fli>\u003Cli>\u003Ccode>localazy download\u003C\u002Fcode> – Downloads translations back to your project.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Once you're up and running with these basics, you're ready to start chaining commands.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002Finstall-2.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1548\" height=\"837\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2025\u002F01\u002Finstall-2.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2025\u002F01\u002Finstall-2.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002Finstall-2.png 1548w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch2 id=\"the-power-of-chaining-commands\">⛓ The power of chaining commands \u003Ca class=\"markdownit-header-anchor\" href=\"#the-power-of-chaining-commands\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>In a shell environment (e.g., Bash, Zsh, PowerShell), you can invoke multiple commands in a sequence. The output of one command might be the input for another, or you might want to run commands in parallel or conditionally.\u003C\u002Fp>\u003Ch3 id=\"why-chaining-matters\">Why chaining matters \u003Ca class=\"markdownit-header-anchor\" href=\"#why-chaining-matters\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Automation\u003C\u002Fstrong>: Instead of manually preparing files or post-processing them, you can script the entire pipeline.\u003C\u002Fli>\u003Cli>\u003Cstrong>Flexibility\u003C\u002Fstrong>: Use native OS commands or third-party tools for tasks like archiving, renaming, uploading to remote servers, and more.\u003C\u002Fli>\u003Cli>\u003Cstrong>Efficiency\u003C\u002Fstrong>: A single script can handle the entire \"prepare → upload → download → finalize\" cycle.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>For example, if you want to prepare your \u003Ca href=\"\u002Fjson\">JSON\u003C\u002Fa> files before uploading, you might do something like this:\u003C\u002Fp>\u003Cpre>\u003Ccode># 1) Combine multiple JSON partials into one file\njq -s 'reduce .[] as $item ({}; . * $item)' partials\u002F*.json &gt; combined.json\n\n# 2) Upload combined.json using Localazy CLI\nlocalazy upload --file combined.json\n\n# 3) Clean up\nrm combined.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>This mini-script merges multiple JSON files into one before uploading them to Localazy.\u003C\u002Fp>\u003Ch2 id=\"10-command-chaining-ideas\">📝 10 command chaining ideas \u003Ca class=\"markdownit-header-anchor\" href=\"#10-command-chaining-ideas\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Below are some common examples of how you can combine Localazy CLI calls with other commands and tools. Each idea has a quick snippet or conceptual workflow for inspiration.\u003C\u002Fp>\u003Ch3 id=\"1-creating-and-extracting-archives\">1. Creating and extracting archives \u003Ca class=\"markdownit-header-anchor\" href=\"#1-creating-and-extracting-archives\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Store your translation files in compressed archives or package downloaded translations to prepare them for distribution.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>zip\u003C\u002Fcode>, \u003Ccode>unzip\u003C\u002Fcode>, \u003Ccode>tar\u003C\u002Fcode>, \u003Ccode>gzip\u003C\u002Fcode>, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Extract your source files from an archive\nunzip my-translations.zip -d extracted_files\u002F\n\n# Upload the extracted files\nlocalazy upload --path extracted_files\u002F\n\n# After downloads, compress them again\nlocalazy download --path final_translations\u002F\nzip -r final_translations.zip final_translations\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"2-committing-files-to-git\">2. Committing files to Git \u003Ca class=\"markdownit-header-anchor\" href=\"#2-committing-files-to-git\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Automatically commit newly downloaded translations to your Git repository.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>git\u003C\u002Fcode> CLI\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations\nlocalazy download --path i18n\u002F\n\n# Commit them to your repo\ngit add i18n\u002F\ngit commit -m \"chore: update translations\"\ngit push origin main\u003C\u002Fcode>\u003C\u002Fpre>\u003Cblockquote>\u003Cem>This can be integrated into a CI\u002FCD pipeline such as \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-github-actions-localazy\">GitHub Actions\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-gitlab-cicd-localazy\">GitLab CI\u002FCD\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fblockquote>\u003Ch3 id=\"3-moving-files-to-different-locations\">3. Moving files to different locations \u003Ca class=\"markdownit-header-anchor\" href=\"#3-moving-files-to-different-locations\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Distribute downloaded translations into multiple folders\u002Fprojects.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>mv\u003C\u002Fcode>, \u003Ccode>cp\u003C\u002Fcode>, or more advanced file-moving scripts.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations to a staging folder\nlocalazy download --path translations_temp\u002F\n\n# Move files to each project\nmv translations_temp\u002Fen.json projectA\u002Fsrc\u002Flocales\u002F\nmv translations_temp\u002Fes.json projectB\u002Fapp\u002Fassets\u002Flang\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"4-modifying-files-with-regex-sed-awk\">4. Modifying files with Regex (sed, awk) \u003Ca class=\"markdownit-header-anchor\" href=\"#4-modifying-files-with-regex-sed-awk\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Remove or replace placeholders, internal IDs, or environment-specific URLs in translation files.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>sed\u003C\u002Fcode>, \u003Ccode>awk\u003C\u002Fcode>, or other text processors.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download the translations\nlocalazy download --path translations\u002F\n\n# Replace staging URL with production URL\nsed -i 's|https:\u002F\u002Fstaging.example.com|https:\u002F\u002Fproduction.example.com|g' translations\u002F*.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"5-merging-splitting-and-overriding-files\">5. Merging, splitting, and overriding files \u003Ca class=\"markdownit-header-anchor\" href=\"#5-merging-splitting-and-overriding-files\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Combine multiple files into one, split a large file into smaller ones, or override specific keys using other files.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>jq\u003C\u002Fcode>, custom scripts, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode>localazy download --path dl_files\u002F\n# Suppose you have en.json and en-extra.json in dl_files\u002F and want to merge them.\n\njq -s 'reduce .[] as $item ({}; . * $item)' dl_files\u002Fen.json dl_files\u002Fen-extra.json &gt; dl_files\u002Fen-merged.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"6-changing-file-formats\">6. Changing file formats \u003Ca class=\"markdownit-header-anchor\" href=\"#6-changing-file-formats\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Convert downloaded files into a format your framework needs.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>yq\u003C\u002Fcode>, custom XML\u002FProperties converters, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Convert YAML to JSON\nyq -o=json translations.yaml &gt; translations.json\n\n# Then upload the JSON to Localazy\nlocalazy upload --file translations.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cdiv class=\"kg-card kg-callout-card kg-callout-card-blue\">\u003Cdiv class=\"kg-callout-emoji\">💡\u003C\u002Fdiv>\u003Cdiv class=\"kg-callout-text\">Tip: Consider using Localazy \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fformat-conversions\">Format Conversions\u003C\u002Fa>, which provide more options, 15+ conversion pairs, and might be better suited for your use case. Explore the capabilities in the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fformat-conversions\">documentation\u003C\u002Fa>.&nbsp;\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Ch3 id=\"7-generating-source-code-from-translations\">7. Generating source code from translations \u003Ca class=\"markdownit-header-anchor\" href=\"#7-generating-source-code-from-translations\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Some frameworks prefer translations as source code files (e.g., .dart, .ts).\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: Node.js scripts, custom Python scripts, templating engines, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download the translations\nlocalazy download --path i18n\u002F\n\n# Generate TypeScript constants\nnode scripts\u002Fgenerate-ts-constants.js i18n\u002Fen.json src\u002Fi18n\u002Fen.ts\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Your \u003Ccode>generate-ts-constants.js\u003C\u002Fcode> script would parse the JSON and produce a \u003Ccode>.ts\u003C\u002Fcode> file with typed exports.\u003C\u002Fp>\u003Ch3 id=\"8-running-a-linter-or-validator\">8. Running a linter or validator \u003Ca class=\"markdownit-header-anchor\" href=\"#8-running-a-linter-or-validator\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Ensure files maintain correct placeholders, avoid broken links, or follow a certain schema.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: ESLint, custom scripts, or specialized translation linters.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode>localazy download --path i18n\u002F\n\n# Validate JSON structure with a JSON schema validator\najv validate -s schema.json -d i18n\u002F*.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"9-uploading-to-ftp-sftp-or-cloud-storage\">9. Uploading to FTP, SFTP, or cloud storage \u003Ca class=\"markdownit-header-anchor\" href=\"#9-uploading-to-ftp-sftp-or-cloud-storage\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Automatically upload your translations to a CDN or remote server.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>scp\u003C\u002Fcode>, \u003Ccode>sftp\u003C\u002Fcode>, AWS CLI, Azure CLI, GCP CLI, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations\nlocalazy download --path i18n\u002F\n\n# Upload them to an SFTP server\nscp i18n\u002F*.json user@myserver.com:\u002Fvar\u002Fwww\u002Ftranslations\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"10-creating-files-from-and-inserting-them-in-a-database\">10. Creating files from and inserting them in a database \u003Ca class=\"markdownit-header-anchor\" href=\"#10-creating-files-from-and-inserting-them-in-a-database\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: You might have translations stored in a DB. Export them to a file, upload them to Localazy, and then reimport the final translations back into the DB.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>psql\u003C\u002Fcode>, \u003Ccode>mysqldump\u003C\u002Fcode>, custom SQL scripts.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>\u003Cstrong>⤵️ Creating files from DB\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cpre>\u003Ccode># Example with PostgreSQL: dump translations to JSON\npsql -U user -d mydb -c \"COPY (SELECT json_agg(t) FROM translations t) TO STDOUT\" &gt; db_translations.json\n\n# Upload to Localazy\nlocalazy upload --file db_translations.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>↪️ Inserting into DB\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cpre>\u003Ccode># Download from Localazy\nlocalazy download --path downloaded_files\u002F\n\n# Insert them back into your DB\npsql -U user -d mydb -c \"\\COPY translations FROM 'downloaded_files\u002Fen.json'\"\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>You can also \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-translate-content-in-postgresql-database-with-localazy\" rel=\"noopener noreferrer nofollow\">find inspiration in our PostgreSQL solution\u003C\u002Fa> for detailed setup instructions.\u003C\u002Fp>\u003Ch2 id=\"conclusion\">✔️ Conclusion \u003Ca class=\"markdownit-header-anchor\" href=\"#conclusion\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>These examples demonstrate how one small command, \u003Ccode>localazy upload\u003C\u002Fcode> or \u003Ccode>localazy download\u003C\u002Fcode>, can be part of a much larger workflow. By chaining commands from your operating system or other third-party tools, you're only limited by your imagination.\u003C\u002Fp>\u003Cp>We'd love to hear how you're using our CLI! If you have a creative command-chain setup or face any challenges in your scripts, feel free to contact us. Localazy is designed to stay flexible, and user feedback helps us improve. 💪\u003C\u002Fp>\u003Cp>\u003Cstrong>Remember\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cul>\u003Cli>Automating with scripts saves time and reduces manual errors.\u003C\u002Fli>\u003Cli>Standard CLI tools like \u003Ccode>tar\u003C\u002Fcode>, \u003Ccode>sed\u003C\u002Fcode>, \u003Ccode>jq\u003C\u002Fcode>, and \u003Ccode>git\u003C\u002Fcode> are your friends.\u003C\u002Fli>\u003Cli>The Localazy CLI works best when it's one piece of your overall localization pipeline.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Happy chaining, and let us know if you need help getting your perfect workflow up and running!\u003C\u002Fp>",{"id":22,"status":4,"created_on":2232,"modified_on":2233,"icon":2121,"header":2234,"description":2235,"button_label":2236,"link":2237},{"slug":2298,"id":2291,"uuid":2313,"title":2297,"html":2314,"comment_id":2291,"feature_image":2301,"featured":229,"visibility":2129,"email_recipient_filter":2130,"created_at":2315,"updated_at":2299,"published_at":2300,"custom_excerpt":2309,"codeinjection_head":8,"codeinjection_foot":8,"custom_template":8,"canonical_url":8,"authors":2316,"tags":2322,"primary_author":2331,"primary_tag":2332,"url":2333,"excerpt":2309,"reading_time":50,"access":229,"send_email_when_published":227,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"email_subject":8,"frontmatter":8,"dictionary":2308,"cta":2311,"plainTags":2302},"0ae3678a-9542-475f-8b64-c91cce2dbb97","\u003Cp>From time to time, Localazy users ask us \u003Cstrong>how to handle specialized tasks with the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\">Localazy CLI\u003C\u002Fa>\u003C\u002Fstrong>. Common requests include uploading localizable files from a ZIP archive, post-processing downloaded translations (merging them, changing the content, or copying them elsewhere), and more.\u003C\u002Fp>\u003Cp>Localazy CLI doesn't and will likely never ship with every possible feature you might need to fully customize your workflow. We don't want to reinvent the wheel, and it would be almost impossible to support every specialized scenario. Instead, the CLI focuses on critical localization tasks while remaining flexible and script-friendly, ready for further personalization.\u003C\u002Fp>\u003Cp>The big idea? \u003Cstrong>Think of the Localazy CLI as one command among many \u003C\u002Fstrong>in your workflow. Use standard command-line tools before or after calling \u003Ccode>localazy upload\u003C\u002Fcode> or \u003Ccode>localazy download\u003C\u002Fcode>. By chaining commands, you can accomplish almost any automation or customization task.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%93%9A-reference-materials\">📚 Reference materials\u003C\u002Fh2>\u003Cp>Before we dive in, let's quickly refresh what you need to know about CLI:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>⚡️ The whys\u003C\u002Fstrong>: Learn \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-use-localazy-cli-to-streamline-your-localization-workflow\u002F\">how it can benefit your workflows\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>\u003Cstrong>🔨 Installation\u003C\u002Fstrong>: Check the official \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\" rel=\"noopener noreferrer nofollow\">Localazy CLI Documentation\u003C\u002Fa> for detailed setup instructions.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"basic-commands\">Basic commands\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Ccode>localazy upload\u003C\u002Fcode> – Uploads your source files or strings to Localazy.\u003C\u002Fli>\u003Cli>\u003Ccode>localazy download\u003C\u002Fcode> – Downloads translations back to your project.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Once you're up and running with these basics, you're ready to start chaining commands.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002Finstall-2.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1548\" height=\"837\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2025\u002F01\u002Finstall-2.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2025\u002F01\u002Finstall-2.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F01\u002Finstall-2.png 1548w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch2 id=\"%E2%9B%93-the-power-of-chaining-commands\">⛓ The power of chaining commands\u003C\u002Fh2>\u003Cp>In a shell environment (e.g., Bash, Zsh, PowerShell), you can invoke multiple commands in a sequence. The output of one command might be the input for another, or you might want to run commands in parallel or conditionally.\u003C\u002Fp>\u003Ch3 id=\"why-chaining-matters\">Why chaining matters\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Automation\u003C\u002Fstrong>: Instead of manually preparing files or post-processing them, you can script the entire pipeline.\u003C\u002Fli>\u003Cli>\u003Cstrong>Flexibility\u003C\u002Fstrong>: Use native OS commands or third-party tools for tasks like archiving, renaming, uploading to remote servers, and more.\u003C\u002Fli>\u003Cli>\u003Cstrong>Efficiency\u003C\u002Fstrong>: A single script can handle the entire \"prepare → upload → download → finalize\" cycle.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>For example, if you want to prepare your \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fjson\">JSON\u003C\u002Fa> files before uploading, you might do something like this:\u003C\u002Fp>\u003Cpre>\u003Ccode># 1) Combine multiple JSON partials into one file\njq -s 'reduce .[] as $item ({}; . * $item)' partials\u002F*.json &gt; combined.json\n\n# 2) Upload combined.json using Localazy CLI\nlocalazy upload --file combined.json\n\n# 3) Clean up\nrm combined.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>This mini-script merges multiple JSON files into one before uploading them to Localazy.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%93%9D-10-command-chaining-ideas\">📝 10 command chaining ideas\u003C\u002Fh2>\u003Cp>Below are some common examples of how you can combine Localazy CLI calls with other commands and tools. Each idea has a quick snippet or conceptual workflow for inspiration.\u003C\u002Fp>\u003Ch3 id=\"1-creating-and-extracting-archives\">1. Creating and extracting archives\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Store your translation files in compressed archives or package downloaded translations to prepare them for distribution.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>zip\u003C\u002Fcode>, \u003Ccode>unzip\u003C\u002Fcode>, \u003Ccode>tar\u003C\u002Fcode>, \u003Ccode>gzip\u003C\u002Fcode>, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Extract your source files from an archive\nunzip my-translations.zip -d extracted_files\u002F\n\n# Upload the extracted files\nlocalazy upload --path extracted_files\u002F\n\n# After downloads, compress them again\nlocalazy download --path final_translations\u002F\nzip -r final_translations.zip final_translations\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"2-committing-files-to-git\">2. Committing files to Git\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Automatically commit newly downloaded translations to your Git repository.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>git\u003C\u002Fcode> CLI\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations\nlocalazy download --path i18n\u002F\n\n# Commit them to your repo\ngit add i18n\u002F\ngit commit -m \"chore: update translations\"\ngit push origin main\u003C\u002Fcode>\u003C\u002Fpre>\u003Cblockquote>\u003Cem>This can be integrated into a CI\u002FCD pipeline such as \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-github-actions-localazy\">GitHub Actions\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-gitlab-cicd-localazy\">GitLab CI\u002FCD\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fblockquote>\u003Ch3 id=\"3-moving-files-to-different-locations\">3. Moving files to different locations\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Distribute downloaded translations into multiple folders\u002Fprojects.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>mv\u003C\u002Fcode>, \u003Ccode>cp\u003C\u002Fcode>, or more advanced file-moving scripts.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations to a staging folder\nlocalazy download --path translations_temp\u002F\n\n# Move files to each project\nmv translations_temp\u002Fen.json projectA\u002Fsrc\u002Flocales\u002F\nmv translations_temp\u002Fes.json projectB\u002Fapp\u002Fassets\u002Flang\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"4-modifying-files-with-regex-sed-awk\">4. Modifying files with Regex (sed, awk)\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Remove or replace placeholders, internal IDs, or environment-specific URLs in translation files.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>sed\u003C\u002Fcode>, \u003Ccode>awk\u003C\u002Fcode>, or other text processors.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download the translations\nlocalazy download --path translations\u002F\n\n# Replace staging URL with production URL\nsed -i 's|https:\u002F\u002Fstaging.example.com|https:\u002F\u002Fproduction.example.com|g' translations\u002F*.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"5-merging-splitting-and-overriding-files\">5. Merging, splitting, and overriding files\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Combine multiple files into one, split a large file into smaller ones, or override specific keys using other files.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>jq\u003C\u002Fcode>, custom scripts, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode>localazy download --path dl_files\u002F\n# Suppose you have en.json and en-extra.json in dl_files\u002F and want to merge them.\n\njq -s 'reduce .[] as $item ({}; . * $item)' dl_files\u002Fen.json dl_files\u002Fen-extra.json &gt; dl_files\u002Fen-merged.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"6-changing-file-formats\">6. Changing file formats\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Convert downloaded files into a format your framework needs.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>yq\u003C\u002Fcode>, custom XML\u002FProperties converters, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Convert YAML to JSON\nyq -o=json translations.yaml &gt; translations.json\n\n# Then upload the JSON to Localazy\nlocalazy upload --file translations.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cdiv class=\"kg-card kg-callout-card kg-callout-card-blue\">\u003Cdiv class=\"kg-callout-emoji\">💡\u003C\u002Fdiv>\u003Cdiv class=\"kg-callout-text\">Tip: Consider using Localazy \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fformat-conversions\">Format Conversions\u003C\u002Fa>, which provide more options, 15+ conversion pairs, and might be better suited for your use case. Explore the capabilities in the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fformat-conversions\">documentation\u003C\u002Fa>.&nbsp;\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Ch3 id=\"7-generating-source-code-from-translations\">7. Generating source code from translations\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Some frameworks prefer translations as source code files (e.g., .dart, .ts).\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: Node.js scripts, custom Python scripts, templating engines, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download the translations\nlocalazy download --path i18n\u002F\n\n# Generate TypeScript constants\nnode scripts\u002Fgenerate-ts-constants.js i18n\u002Fen.json src\u002Fi18n\u002Fen.ts\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Your \u003Ccode>generate-ts-constants.js\u003C\u002Fcode> script would parse the JSON and produce a \u003Ccode>.ts\u003C\u002Fcode> file with typed exports.\u003C\u002Fp>\u003Ch3 id=\"8-running-a-linter-or-validator\">8. Running a linter or validator\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Ensure files maintain correct placeholders, avoid broken links, or follow a certain schema.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: ESLint, custom scripts, or specialized translation linters.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode>localazy download --path i18n\u002F\n\n# Validate JSON structure with a JSON schema validator\najv validate -s schema.json -d i18n\u002F*.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"9-uploading-to-ftp-sftp-or-cloud-storage\">9. Uploading to FTP, SFTP, or cloud storage\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: Automatically upload your translations to a CDN or remote server.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>scp\u003C\u002Fcode>, \u003Ccode>sftp\u003C\u002Fcode>, AWS CLI, Azure CLI, GCP CLI, etc.\u003C\u002Fli>\u003C\u002Ful>\u003Cpre>\u003Ccode># Download translations\nlocalazy download --path i18n\u002F\n\n# Upload them to an SFTP server\nscp i18n\u002F*.json user@myserver.com:\u002Fvar\u002Fwww\u002Ftranslations\u002F\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"10-creating-files-from-and-inserting-them-in-a-database\">10. Creating files from and inserting them in a database\u003C\u002Fh3>\u003Cul>\u003Cli>\u003Cstrong>Use case\u003C\u002Fstrong>: You might have translations stored in a DB. Export them to a file, upload them to Localazy, and then reimport the final translations back into the DB.\u003C\u002Fli>\u003Cli>\u003Cstrong>Tools\u003C\u002Fstrong>: \u003Ccode>psql\u003C\u002Fcode>, \u003Ccode>mysqldump\u003C\u002Fcode>, custom SQL scripts.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>\u003Cstrong>⤵️ Creating files from DB\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cpre>\u003Ccode># Example with PostgreSQL: dump translations to JSON\npsql -U user -d mydb -c \"COPY (SELECT json_agg(t) FROM translations t) TO STDOUT\" &gt; db_translations.json\n\n# Upload to Localazy\nlocalazy upload --file db_translations.json\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>↪️ Inserting into DB\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cpre>\u003Ccode># Download from Localazy\nlocalazy download --path downloaded_files\u002F\n\n# Insert them back into your DB\npsql -U user -d mydb -c \"\\COPY translations FROM 'downloaded_files\u002Fen.json'\"\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>You can also \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-to-translate-content-in-postgresql-database-with-localazy\" rel=\"noopener noreferrer nofollow\">find inspiration in our PostgreSQL solution\u003C\u002Fa> for detailed setup instructions.\u003C\u002Fp>\u003Ch2 id=\"%E2%9C%94%EF%B8%8F-conclusion\">✔️ Conclusion\u003C\u002Fh2>\u003Cp>These examples demonstrate how one small command, \u003Ccode>localazy upload\u003C\u002Fcode> or \u003Ccode>localazy download\u003C\u002Fcode>, can be part of a much larger workflow. By chaining commands from your operating system or other third-party tools, you're only limited by your imagination.\u003C\u002Fp>\u003Cp>We'd love to hear how you're using our CLI! If you have a creative command-chain setup or face any challenges in your scripts, feel free to contact us. Localazy is designed to stay flexible, and user feedback helps us improve. 💪\u003C\u002Fp>\u003Cp>\u003Cstrong>Remember\u003C\u002Fstrong>:\u003C\u002Fp>\u003Cul>\u003Cli>Automating with scripts saves time and reduces manual errors.\u003C\u002Fli>\u003Cli>Standard CLI tools like \u003Ccode>tar\u003C\u002Fcode>, \u003Ccode>sed\u003C\u002Fcode>, \u003Ccode>jq\u003C\u002Fcode>, and \u003Ccode>git\u003C\u002Fcode> are your friends.\u003C\u002Fli>\u003Cli>The Localazy CLI works best when it's one piece of your overall localization pipeline.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Happy chaining, and let us know if you need help getting your perfect workflow up and running!\u003C\u002Fp>","2025-01-13T11:04:33.000+01:00",[2317],{"id":2293,"name":2294,"slug":2295,"profile_image":2296,"cover_image":8,"bio":2318,"website":2319,"location":2320,"facebook":8,"twitter":8,"meta_title":8,"meta_description":8,"url":2321},"Aspiring front-end web developer, tech enthusiast, and novice tech writer with a passion for learning and creating. A proud family man balancing innovation and inspiration.","https:\u002F\u002Ffebbygunawan.com","Medan, Indonesia","https:\u002F\u002Fghost.localazy.com\u002Fauthor\u002Ftester-5\u002F",[2323,2324,2325,2328,2329,2330],{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},{"id":2252,"name":2198,"slug":2199,"description":2198,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2253},{"id":2326,"name":2306,"slug":2307,"description":2306,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2327},"60a37fc7cf7b6a0001d1f101","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fautomated-localization\u002F",{"id":2276,"name":2277,"slug":2278,"description":2279,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2280},{"id":2161,"name":2162,"slug":2163,"description":8,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2164},{"id":2282,"name":2283,"slug":2284,"description":2285,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2286},{"id":2293,"name":2294,"slug":2295,"profile_image":2296,"cover_image":8,"bio":2318,"website":2319,"location":2320,"facebook":8,"twitter":8,"meta_title":8,"meta_description":8,"url":2321},{"id":2140,"name":826,"slug":607,"description":826,"feature_image":8,"visibility":2129,"og_image":8,"og_title":8,"og_description":8,"twitter_image":8,"twitter_title":8,"twitter_description":8,"meta_title":8,"meta_description":8,"codeinjection_head":8,"codeinjection_foot":8,"canonical_url":8,"accent_color":8,"url":2141},"https:\u002F\u002Fghost.localazy.com\u002Fcli-is-just-a-command-chain-it\u002F",[2335,2460,2521,2599,2682,2745,2824,2887,2961,3020,3080,3127,3188,3250,3310,3366,3429,3477,3528,3583,3637,3683,3744,3806,3870],{"id":50,"status":4,"name":2336,"slug":2337,"date_created":2338,"meta_title":8,"meta_description":8,"logo":2339,"featured_image":2341,"internal_tag":2343,"banner":2345,"cta":2350,"testimonials":2358,"brand":2366,"client_industry":2375,"features":2377,"integrations":2396,"blog_articles":2399,"roles":2407,"industries":2429,"translations":2447,"case_study_id":50,"title":2449,"challenge_title":2450,"solution_title":2451,"benefits_title":2452,"benefits_btn_label":2453,"result_title":2454,"challenge_description":2455,"solution_description":2456,"benefits_description":2457,"result_description":2458,"description":2459,"benefits_btn_link":2357},"Rouvy","rouvy","2024-01-12T16:23:29.000Z",{"id":2340},"a7f5e5d2-58ad-415b-ae02-58c38b392517",{"id":2342},"a77374e3-fe90-4614-8b3c-1acbb03a89ba",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},118,{"id":62,"sort":8,"created_on":2346,"name":850,"cta_link":2347,"banner_image":2348},"2023-02-21T22:35:37.000Z","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn",{"id":2349},"8ae4b273-168e-4b39-85c2-f79282929ecb",{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},"2024-03-04T08:24:42.000Z","2024-03-04T08:43:53.000Z","member","Try Localazy now!","Automate your localization workflow and become the next success story.","Join Localazy","\u002Fregister",{"id":150,"status":4,"sort":8,"title":2359,"content":2360,"user_name":2361,"user_role":2362,"case_study_url":2363,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":2364},"Our developers love the set-and-forget philosophy of Localazy!","\"Localazy is a really user-friendly platform. We enjoy combining our in-house people, automated professional translations, and crowdsourcing the translations from the community in one project without too much management needed to make everything work.\""," Lukáš Tóth","Product Manager at Rouvy","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Frouvy\u002F",{"id":2365},"20b7f410-2631-481c-b5f1-3010717d2940",{"id":50,"status":4,"featured":229,"name":2336,"link":2367,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2368,"industries":2370},"https:\u002F\u002Frouvy.com",{"id":2369},"f5605c13-f072-4207-9a54-b217299e2cc5",[2371],{"id":62,"status":4,"sort":8,"translations":2372,"name":2374},[2373],{"id":22,"languages_code":925,"name":2374},"Health & Fitness",[2376],{"id":22,"languages_code":925,"name":2374},[2378,2382,2386,2391],{"id":29,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2379,"alternative_name":8,"short_description":2380,"alternative_description":8,"value":8,"sort":29,"status":568,"subtitle":2381,"longer_description":8,"docs_link":8},"Full control over changes","Visit every day or once a month, you are good.","unlimited changelog",{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},"Intuitive interface","The interface is easy to navigate, allowing everyone to quickly join your efforts.","Anyone can help you!",{"id":77,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2387,"alternative_name":8,"short_description":2388,"alternative_description":8,"value":8,"sort":77,"status":4,"subtitle":2389,"longer_description":2390,"docs_link":8},"Professional translation services","Our verified professionals will translate your project automatically as you add or change texts.","hire specialists on demand","Get translations on autopilot. Our verified professionals will translate your project automatically as you add or change texts.",{"id":290,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2392,"alternative_name":2393,"short_description":53,"alternative_description":2394,"value":1974,"sort":290,"status":4,"subtitle":53,"longer_description":2395,"docs_link":134},"Community translations","Community translations (ShareTM)","Share anonymously your translations with other projects on the platform, and as a reward, get your project translated to more languages for free.","Upload your app to Localazy and instantly share your translations with other apps on the platform, and as a reward, get your app translated to more languages for free.",[2397],{"id":728,"status":4,"name":731,"slug":730,"description":1663,"docs_link":1664,"meta_title":8,"meta_description":8,"icon":2398},{"id":733},[2400],{"id":2401,"status":4,"sort":8,"date_created":2402,"date_updated":2403,"title":2404,"slug":2405,"feature_image":2406,"meta_title":53,"meta_description":53,"reading_time":50},804,"2023-02-16T10:29:51.000Z","2026-05-03T22:29:38.000Z","Case Study: 🚴 ROUVY's Tour de localization with Localazy","case-study-rouvy-localization","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F02\u002FLocalazy-Interview-ROUVY.png",[2408,2414,2417,2420,2423,2426],{"id":7,"status":4,"created_on":2409,"slug":248,"persona_name":2410,"type":2411,"icon":250,"tags":2412,"meta_title":8,"meta_description":8},"2022-03-17T12:23:46.000Z","CMOs","role",[2413],"persona-role",{"id":107,"status":4,"created_on":2409,"slug":258,"persona_name":2415,"type":8,"icon":260,"tags":2416,"meta_title":8,"meta_description":8},"CTOs",[2413],{"id":57,"status":4,"created_on":2409,"slug":302,"persona_name":2418,"type":8,"icon":304,"tags":2419,"meta_title":8,"meta_description":8},"Localization Managers",[2413],{"id":166,"status":4,"created_on":2409,"slug":268,"persona_name":2421,"type":8,"icon":270,"tags":2422,"meta_title":8,"meta_description":8},"Product Managers",[],{"id":290,"status":4,"created_on":2424,"slug":291,"persona_name":2425,"type":2411,"icon":293,"tags":8,"meta_title":8,"meta_description":8},"2022-09-22T22:58:07.000Z","Software Developers",{"id":174,"status":4,"created_on":2409,"slug":279,"persona_name":2427,"type":8,"icon":281,"tags":2428,"meta_title":8,"meta_description":8},"Professional Translators",[],[2430,2433,2436,2439,2442,2444],{"id":62,"status":4,"created_on":2409,"slug":352,"persona_name":348,"type":8,"icon":354,"tags":2431,"meta_title":8,"meta_description":8},[2432],"persona-industry",{"id":16,"status":4,"created_on":2409,"slug":363,"persona_name":359,"type":8,"icon":365,"tags":2434,"meta_title":8,"meta_description":8},[2435],"persona-companytype",{"id":22,"status":4,"created_on":2409,"slug":403,"persona_name":2437,"type":8,"icon":405,"tags":2438,"meta_title":8,"meta_description":8},"Tourism Businesses",[2432],{"id":50,"status":4,"created_on":2409,"slug":373,"persona_name":2440,"type":8,"icon":375,"tags":2441,"meta_title":8,"meta_description":8},"E-commerce Businesses",[2432],{"id":314,"status":4,"created_on":2409,"slug":393,"persona_name":389,"type":8,"icon":395,"tags":2443,"meta_title":8,"meta_description":8},[],{"id":297,"status":4,"created_on":2445,"slug":383,"persona_name":2446,"type":8,"icon":385,"tags":8,"meta_title":8,"meta_description":8},"2022-06-02T23:33:26.000Z","Fintech Teams",[2448],{"id":107,"case_study_id":50,"languages_code":925,"title":2449,"slug":8,"challenge_title":2450,"solution_title":2451,"benefits_title":2452,"benefits_btn_label":2453,"result_title":2454,"challenge_description":2455,"solution_description":2456,"benefits_description":2457,"result_description":2458,"description":2459,"benefits_btn_link":2357},"Rouvy leveraged the Localazy CDN to serve users around the world","Reaching non-English speakers globally","Localazy made the big quality push","A powerful CDN to go all the way","sign up","Let the numbers do the talking","\u003Cp>Making the cycling app more familiar to cycling enthusiasts around the world. Offering content to users in the language they speak by carefully localizing their app &amp; website to five more languages. In addition, they simplified their localization workflow, as they were managing PO files back and forth with a translation agency.\u003C\u002Fp>","\u003Cp>Rouvy used Localazy TMS, our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn\" target=\"_blank\" rel=\"noopener\">Content Delivery Network\u003C\u002Fa>, and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fterm\u002Fprofessional-translation-services\" target=\"_blank\" rel=\"noopener\">Professional Translation Services\u003C\u002Fa> to automate their localization processes. Full implementation took just one month, while the integrations with Android, iOS, Desktop, and Apple TV were ready in two weeks.\u003C\u002Fp>\n\u003Cp>ROUVY has also invited volunteers from various regions to help them crowdsource translations. \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fstrapi-localization-plugin\" target=\"_blank\" rel=\"noopener\">Strapi\u003C\u002Fa> was later added after a round of alpha testing.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Quick and painless implementation.\u003C\u002Fli>\n\u003Cli>Fast integration methods.\u003C\u002Fli>\n\u003Cli>User-friendly, time-saving automated workflows.\u003C\u002Fli>\n\u003Cli>Continuous updates are guaranteed via CDN.\u003C\u002Fli>\n\u003Cli>Maximum precision and cultural adaptability thanks to Professional Translation Services.\u003C\u002Fli>\n\u003Cli>Community translations were utilized in some markets.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Over the course of three years, Localazy CDN has effectively processed more than 1.6 billion requests and efficiently delivered over 12 terabytes of localized data straight to ROUVY customers worldwide. These impressive figures highlight the capacity and performance of our CDN in enhancing localized digital experiences.\u003C\u002Fp>","\u003Cp>\u003Cem>Rouvy is a global indoor cycling platform for athletes &amp; sports enthusiasts that lets you ride, exercise, and compete using a realistic simulation that includes +2000 scenic bike routes all over the world.\u003C\u002Fem>\u003C\u002Fp>",{"id":72,"status":4,"name":2461,"slug":2462,"date_created":2338,"meta_title":8,"meta_description":8,"logo":2463,"featured_image":2465,"internal_tag":2467,"banner":2468,"cta":2470,"testimonials":2471,"brand":2481,"client_industry":2491,"features":2492,"integrations":2503,"blog_articles":2506,"roles":2507,"industries":2508,"translations":2509,"case_study_id":72,"title":2511,"challenge_title":2512,"solution_title":2513,"benefits_title":2514,"benefits_btn_label":2453,"result_title":2515,"challenge_description":2516,"solution_description":2517,"benefits_description":2518,"result_description":2519,"description":2520,"benefits_btn_link":2357},"Mixit","mixit",{"id":2464},"d85615dd-c13a-485b-93c5-fe7998c3f95a",{"id":2466},"b704466f-19c9-4b8c-bc74-53f281889147",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":62,"sort":8,"created_on":2346,"name":850,"cta_link":2347,"banner_image":2469},{"id":2349},{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":36,"status":4,"sort":8,"title":2472,"content":2473,"user_name":2474,"user_role":2475,"case_study_url":2476,"button_text":8,"company_logo_link":8,"company_logo":2477,"user_avatar":2479},"Localazy greatly simplified the translation flow!","\"We would recommend Localazy very much, especially for businesses with their own translation teams. It greatly simplified the translation flow.\"","Adéla Flejšarová","IT Project Manager at Mixit","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fmixit\u002F",{"id":2478},"73f476f8-e905-4a3f-9ffd-33033f842299",{"id":2480},"ae8729c7-16e9-4dbe-a287-38549dd55ed1",{"id":531,"status":4,"featured":227,"name":2461,"link":2482,"country":2483,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2484,"industries":2486},"https:\u002F\u002Fwww.mixit.hu","Czech Republic",{"id":2485},"661efe53-a449-4055-a6c4-5d89c1d2e317",[2487],{"id":67,"status":4,"sort":8,"translations":2488,"name":2490},[2489],{"id":107,"languages_code":925,"name":2490},"Food & Beverages",[],[2493,2499,2500],{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},"MT Pre-translate ","One-click Pre-translate","Apply instant machine translations to your texts in bulk. ","Apply instant machine translations to your texts in bulk. Just select the desired engine and target language.","Click and translate all",{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":2501,"created_on":2338,"is_released":229,"is_beta":227,"is_popular":227,"name":2502,"alternative_name":2502,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},179,"Translation management tools",[2504],{"id":29,"status":4,"name":715,"slug":714,"description":1316,"docs_link":908,"meta_title":8,"meta_description":8,"icon":2505},{"id":717},[],[],[],[2510],{"id":72,"case_study_id":72,"languages_code":925,"title":2511,"slug":8,"challenge_title":2512,"solution_title":2513,"benefits_title":2514,"benefits_btn_label":2453,"result_title":2515,"challenge_description":2516,"solution_description":2517,"benefits_description":2518,"result_description":2519,"description":2520,"benefits_btn_link":2357},"Mixit conquered five new markets with automated localization workflows","Saying goodbye to tedious manual work","Focus on what matters with automation","Crystal-clear automated workflows","A multilingual website for five new markets","\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">Penetrating five different markets in five different languages. The goal was to simplify the task of translating every new feature and avoiding changing the existing wording manually. Up until then, the team went through a ticketing system and assigned the tasks manually to coders.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Mixit used our potent command-line interface to streamline their localization workflow. Once the project was connected through \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa>, Branching was added, keys were uploaded, and the internal translation team was able to start localizing the original website in Czech into multiple languages at once.\u003C\u002Fp>\n\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Localazy's automatic alerts for updated translations, untranslated keys, errors, and typos also simplified and minimized the role of the IT team. Translators could now fix these issues themselves, generating freshly updated website versions every time.\u003C\u002Fp>","\u003Cul>\n\u003Cli data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">&nbsp;Simplified translation workflows for new languages.\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Task automation to save time and ditch manual work.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Translator alerts for new strings and text updates.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"a325eec3-e334-49e0-b298-99ab354dcf88\" data-pm-slice=\"1 1 []\">The team at Mixit only needed a couple of weeks to localize their Vue.js website. A script was set up to process the translations and distribute them to the components. After that, the content was localized into Slovak, Polish, Romanian, Hungarian, and German, and was ready to be used in new markets.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Mixit is a Czech e-shop offering hundreds of custom-made cereals and oatmeals that they ship to central European countries. Their personalized and ready-made options are often designed by cooks, nutrition specialists, and sportsmen.\u003C\u002Fem>\u003C\u002Fp>",{"id":77,"status":4,"name":2522,"slug":2523,"date_created":2524,"meta_title":8,"meta_description":8,"logo":2525,"featured_image":2527,"internal_tag":2529,"banner":2530,"cta":2536,"testimonials":2537,"brand":2545,"client_industry":2559,"features":2560,"integrations":2569,"blog_articles":2584,"roles":2585,"industries":2586,"translations":2587,"case_study_id":77,"title":2589,"challenge_title":2590,"solution_title":2591,"benefits_title":2592,"benefits_btn_label":2453,"result_title":2593,"challenge_description":2594,"solution_description":2595,"benefits_description":2596,"result_description":2597,"description":2598,"benefits_btn_link":2357},"Becard","becard","2024-01-16T09:55:18.000Z",{"id":2526},"ee28bc80-c771-4672-b214-2cf5a2070275",{"id":2528},"3e90a2c8-80e0-438a-9cbe-f0ca7bd74703",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2534},"2022-03-17T12:23:14.000Z","default","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flocalazy-ai",{"id":2535},"72defd59-a21d-44b9-822c-4e183ca62b99",{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":29,"status":4,"sort":8,"title":2538,"content":2539,"user_name":2540,"user_role":2541,"case_study_url":2542,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":2543},"Localazy helped us streamline the localization process for 27 languages!","\"Localazy has significantly streamlined our localization process, making it more efficient and organized. The ease of collaboration and the clear tracking of translation progress have been instrumental in improving our workflow.\"","Manuel Radenkovic","Managing Director of Behires Services GmbH","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fbecard\u002F",{"id":2544},"d26f253d-7142-45cd-8ba4-a9661e91c271",{"id":490,"status":4,"featured":227,"name":2522,"link":2546,"country":2547,"region":2548,"email":2549,"competencies":2550,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2552,"industries":2554},"https:\u002F\u002Fbecard.me\u002F","Germany","Europe","office@becard.me",[2551],"Digital Business",{"id":2553},"cd59d819-3226-45a4-9251-4e6d01395869",[2555],{"id":36,"status":4,"sort":8,"translations":2556,"name":2558},[2557],{"id":62,"languages_code":925,"name":2558},"Design",[],[2561,2562,2563],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":2501,"created_on":2338,"is_released":229,"is_beta":227,"is_popular":227,"name":2502,"alternative_name":2502,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":2564,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":229,"name":560,"alternative_name":2565,"short_description":2566,"alternative_description":2566,"value":1974,"sort":959,"status":4,"subtitle":2567,"longer_description":2566,"docs_link":2568},41,"Language permissions","Language permissions allow managers to assign contributors to specific languages and further extend the role granularity.","Language-level access","\u002Ffeatures\u002Flanguage-permissions",[2570,2577],{"id":1777,"status":4,"name":2571,"slug":2572,"description":2573,"docs_link":2574,"meta_title":8,"meta_description":8,"icon":2575},"Laravel","laravel","Localize your Laravel app easily with Localazy CLI. Upload PHP files with strings from your Laravel app to Localazy and manage your translations easily. Download translated files back.","\u002Fdocs\u002Fcli\u002Fquick-start-php",{"id":2576},"7f457a8d-4f2c-4b00-a9f0-0f4667994c98",{"id":1721,"status":4,"name":2578,"slug":2579,"description":2580,"docs_link":2581,"meta_title":8,"meta_description":8,"icon":2582},"PHP","php","Localazy fully supports PHP, one of the most popular languages for web development.  Translate your PHP files with Localazy and fully automate localization of your web project.","\u002Fdocs\u002Fcli\u002Fphp-format",{"id":2583},"5fa6a513-37cd-4c0c-b304-520fae8c85af",[],[],[],[2588],{"id":77,"case_study_id":77,"languages_code":925,"title":2589,"slug":8,"challenge_title":2590,"solution_title":2591,"benefits_title":2592,"benefits_btn_label":2453,"result_title":2593,"challenge_description":2594,"solution_description":2595,"benefits_description":2596,"result_description":2597,"description":2598,"benefits_btn_link":2357},"Becard went global with easy-to-use localization tracking tools","Befriend global users with intuitive tools","Transparent workflows with Localazy","Quick PHP integration for seamless localization management","27 new locales for international expansion","\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">Making the platform accessible to a global audience by localizing it to dozens of languages. The objective was not only to provide a precise translation but to do so by carefully considering cultural differences. The platform had to be user-friendly and appeal to different regions in order to promote international growth while making internal project tracking easy.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Becard used \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ftranslation-api\" target=\"_blank\" rel=\"noopener\">Localazy API\u003C\u002Fa> to efficiently process their source files and help team members easily access the content that needed translation. Using our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Flaravel\" target=\"_blank\" rel=\"noopener\">PHP\u002FLaravel\u003C\u002Fa> integration, they automatically integrated the files into the project seamlessly.&nbsp;\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Efficient translation management.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"0a772ce3-07ae-43f7-a664-b509af5578b4\">User-friendly features.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"81dff784-d24b-4dab-be98-6e5aad95f840\">Easy collaboration and clear progress-tracking tools.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"3d34c69c-e71b-4ff7-99d5-859ad4a94c86\">Reliable customer support.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"a73ce9ae-b57e-4351-aa7c-429f49492dc2\">Ample coverage for different locales.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"6a4f2bb0-0382-4963-ba8e-cb0f73d8263a\" data-pm-slice=\"1 1 []\">The team at Becard adapted their marketing content to 27 locales with Localazy's help in just two weeks. After the PHP\u002FLaravel integration was completed, their internal translation team was able to start localizing immediately. The website is currently available in English, German, Spanish, French, Italian, Portuguese, Hungarian, Czech, Bosnian, Croatian, Serbian, and Hindi. Arabic, Japanese, Dutch, Slovak, and Swedish are the next languages in their implementation list.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Becard commercializes digital business cards for companies and marketing departments. This efficient and environmentally friendly method allows contact information to be effortlessly shared via link, QR code, or NFC.\u003C\u002Fem>\u003C\u002Fp>",{"id":36,"status":4,"name":2600,"slug":2601,"date_created":2602,"meta_title":8,"meta_description":8,"logo":2603,"featured_image":2605,"internal_tag":2607,"banner":2608,"cta":2610,"testimonials":2611,"brand":2619,"client_industry":2628,"features":2629,"integrations":2636,"blog_articles":2645,"roles":2662,"industries":2663,"translations":2670,"case_study_id":36,"title":2672,"challenge_title":2673,"solution_title":2674,"benefits_title":2675,"benefits_btn_label":2453,"result_title":2676,"challenge_description":2677,"solution_description":2678,"benefits_description":2679,"result_description":2680,"description":2681,"benefits_btn_link":2357},"Investown","investown","2024-01-16T09:56:23.000Z",{"id":2604},"489b86be-f820-4f2c-9143-6fe40b5b3bfb",{"id":2606},"5e78da62-5300-4544-bb5d-82957ad3d1c9",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2609},{"id":2535},{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":43,"status":4,"sort":8,"title":2612,"content":2613,"user_name":2614,"user_role":2615,"case_study_url":2616,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":2617},"Very easy to use","\"The ease of use is splendid. Localazy's UI is simple, clean, and intuitive, and the price\u002Fperformance ratio is unbeatable. It's an easy-to-use-and-set-up localization tool with E2E capabilities.\"","Martin Uher","CTO at Investown.cz","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Finvestown\u002F",{"id":2618},"095b5e95-d286-4a4a-b6a4-7a1bd6671026",{"id":274,"status":568,"featured":227,"name":2600,"link":2620,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2621,"industries":2623},"https:\u002F\u002Fwww.investown.cz\u002F",{"id":2622},"584b88aa-de32-47c6-a9d8-f93e825441f6",[2624],{"id":72,"status":4,"sort":8,"translations":2625,"name":2627},[2626],{"id":50,"languages_code":925,"name":2627},"Real Estate",[],[2630,2631,2632],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":2501,"created_on":2338,"is_released":229,"is_beta":227,"is_popular":227,"name":2502,"alternative_name":2502,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":99,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2633,"alternative_name":8,"short_description":2634,"alternative_description":8,"value":8,"sort":99,"status":4,"subtitle":2635,"longer_description":8,"docs_link":8},"Continuous Localization Team","Order translations and we will translate and review your texts for you.","Delegate t9n and review tasks",[2637,2641],{"id":57,"status":4,"name":660,"slug":659,"description":2638,"docs_link":2639,"meta_title":8,"meta_description":8,"icon":2640},"Localazy integration for Android i18n is reportedly the most advanced Android localization solution on the market. Enjoy the advanced features of Localazy CLI, or check out how our Android SDK with Android studio library, and Gradle plugin will help you with the OTA updates of Android apps.","\u002Fdocs\u002Fcli\u002Fandroid-format",{"id":662},{"id":62,"status":4,"name":667,"slug":666,"description":2642,"docs_link":2643,"meta_title":8,"meta_description":8,"icon":2644},"Localize iOS apps using Localazy and tackle your continuous translation with ease. \nFor iOS and macOS apps, Localazy supports the new .xcstrings format. \n\nYou can also upload your .strings, .stringsdict, .plist, and XLIFF files. The XLIFF format is supported, including Apple’s extension for plurals.","\u002Fdocs\u002Fios\u002Finstallation-and-setup",{"id":669},[2646,2647,2655],{"id":2401,"status":4,"sort":8,"date_created":2402,"date_updated":2403,"title":2404,"slug":2405,"feature_image":2406,"meta_title":53,"meta_description":53,"reading_time":50},{"id":2648,"status":4,"sort":8,"date_created":2649,"date_updated":2650,"title":2651,"slug":2652,"feature_image":2653,"meta_title":2651,"meta_description":2654,"reading_time":62},974,"2020-09-28T15:09:34.000Z","2026-05-03T22:39:22.000Z","Why allow users to switch languages","why-allow-users-to-switch-languages","https:\u002F\u002Fdirectus9.localazy.com\u002Fassets\u002F9af638b2-4bdb-46b7-b672-3d494b791340","Learn why allowing users to switch languages in your app is crucial for sound app localization. ",{"id":2656,"status":4,"sort":8,"date_created":2657,"date_updated":2658,"title":2659,"slug":2660,"feature_image":2661,"meta_title":53,"meta_description":53,"reading_time":29},1047,"2023-11-02T15:39:45.000Z","2026-05-03T22:26:59.000Z","The ultimate guide to Localazy CDN","the-ultimate-guide-to-localazy-cdn","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fultimate-localazy-CDN-guide.png",[],[2664,2666,2668],{"id":166,"status":4,"created_on":2409,"slug":268,"persona_name":2421,"type":8,"icon":270,"tags":2665,"meta_title":8,"meta_description":8},[],{"id":107,"status":4,"created_on":2409,"slug":258,"persona_name":2415,"type":8,"icon":260,"tags":2667,"meta_title":8,"meta_description":8},[2413],{"id":7,"status":4,"created_on":2409,"slug":248,"persona_name":2410,"type":2411,"icon":250,"tags":2669,"meta_title":8,"meta_description":8},[2413],[2671],{"id":36,"case_study_id":36,"languages_code":925,"title":2672,"slug":8,"challenge_title":2673,"solution_title":2674,"benefits_title":2675,"benefits_btn_label":2453,"result_title":2676,"challenge_description":2677,"solution_description":2678,"benefits_description":2679,"result_description":2680,"description":2681,"benefits_btn_link":2357},"Investown found an intuitive solution to localize its iOS and Android apps","Finding an accessible and clear TMS","Covering all the fundamentals for growth","A greatly-priced solution with a clean UI","Early internationalization made easy","\u003Cp data-guid=\"707135cc-d311-4ad2-a3dc-49d97e248c96\" data-pm-slice=\"1 1 []\">Reaching as many users across Europe as possible by bridging language gaps. The goal was to localize the platform to several key languages, enhancing comfort for investors while fulfilling regulatory requirements. Up to that moment, hard-coding translations into the system was difficult because of the platform's wide array of text strings. Investown was looking for a user-friendly, time-saving solution to manage translations.\u003C\u002Fp>","\u003Cp data-guid=\"117c79be-acb1-4701-b101-e7924979cec6\" data-pm-slice=\"1 1 []\">Localazy's \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ftranslation-api\" target=\"_blank\" rel=\"noopener\">API\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn\" target=\"_blank\" rel=\"noopener\">CDN\u003C\u002Fa> were instrumental in streamlining the localization process for Investown's developers. All text strings were addressed during the product discovery phase, and then the localized content was transferred to the app through \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fandroid\" target=\"_blank\" rel=\"noopener\">Android\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fios\" target=\"_blank\" rel=\"noopener\">iOS \u003C\u002Fa>SDK integrations. Support was provided via Slack whenever the team needed a swift and helpful response.&nbsp;\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"5b43026c-6a59-4d86-85ea-0c8cf130a06f\">Simple and intuitive UI for translation management.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"b2d04d30-1867-448e-9ca4-82377a409773\">Reliable content delivery network for translation updates.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"3a79da24-6564-4b4f-bfba-d69749e7f531\">Easy integration with Android and iOS.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"a5dff3f5-b0f4-4b96-88f1-c8e48486a8c4\">Great for end-to-end testing.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"5bd7fe49-9e67-4c25-85d9-e5806c365018\">Superb ROI.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"a325eec3-e334-49e0-b298-99ab354dcf88\" data-pm-slice=\"1 1 []\">Investown had the TMS system running E2E within just one sprint. Czech (their local language) and English (their test bed language) were implemented quickly for early i18n purposes. The team used the latter to get familiar with localization processes early in development before new languages were tackled.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Investown is a crowdfunding real estate investment platform focused on the European market. It protects users' finances from inflation by making secured property deal investments easy to understand, clear, and reliable.\u003C\u002Fem>\u003C\u002Fp>",{"id":29,"status":4,"name":2683,"slug":2684,"date_created":2685,"meta_title":8,"meta_description":8,"logo":2686,"featured_image":2688,"internal_tag":2690,"banner":2691,"cta":2693,"testimonials":2694,"brand":2704,"client_industry":2713,"features":2714,"integrations":2717,"blog_articles":2721,"roles":2722,"industries":2728,"translations":2733,"case_study_id":29,"title":2735,"challenge_title":2736,"solution_title":2737,"benefits_title":2738,"benefits_btn_label":2453,"result_title":2739,"challenge_description":2740,"solution_description":2741,"benefits_description":2742,"result_description":2743,"description":2744,"benefits_btn_link":2357},"Customers 1st","customers-1st","2024-01-19T11:19:27.000Z",{"id":2687},"ae5ed54b-e426-48bd-aabe-b323788a80de",{"id":2689},"72a4a95d-ad5b-4171-bfb2-f2da88348b15",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2692},{"id":2535},{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":154,"status":4,"sort":8,"title":2695,"content":2696,"user_name":2697,"user_role":2698,"case_study_url":2699,"button_text":8,"company_logo_link":8,"company_logo":2700,"user_avatar":2702},"Good pricing, good UI and ultimately does its job","\"I'd recommend Localazy to other peers in my industry. It offers good pricing, has a good UI and ultimately does its job. Being able to find missing translations and easily use machine translations is very smart.\"","Lasse Melbye","CTO & Co-Founder at Customers 1st","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fcustomers-1st\u002F",{"id":2701},"dd24f423-8203-48f9-b8bb-9ede2647720c",{"id":2703},"3fad30ec-f435-4452-9552-23cea997fdfc",{"id":285,"status":4,"featured":227,"name":2705,"link":2706,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2707,"industries":2708},"customers 1st","https:\u002F\u002Fc1st.com\u002F",{"id":2701},[2709],{"id":50,"status":4,"sort":8,"translations":2710,"name":2712},[2711],{"id":7,"languages_code":925,"name":2712},"Computer Software",[],[2715,2716],{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},[2718],{"id":158,"status":4,"name":688,"slug":687,"description":2719,"docs_link":1396,"meta_title":8,"meta_description":8,"icon":2720},"Online Angular project localization tool for your translation management. Enjoy true continuous localization with Localazy & translate your XLIFF files automatically.",{"id":690},[],[2723,2725,2727],{"id":16,"status":4,"created_on":2409,"slug":363,"persona_name":359,"type":8,"icon":365,"tags":2724,"meta_title":8,"meta_description":8},[2435],{"id":107,"status":4,"created_on":2409,"slug":258,"persona_name":2415,"type":8,"icon":260,"tags":2726,"meta_title":8,"meta_description":8},[2413],{"id":290,"status":4,"created_on":2424,"slug":291,"persona_name":2425,"type":2411,"icon":293,"tags":8,"meta_title":8,"meta_description":8},[2729],{"id":490,"status":4,"created_on":2730,"slug":2731,"persona_name":2732,"type":8,"icon":8,"tags":8,"meta_title":8,"meta_description":8},"2024-01-30T10:52:53.000Z","retail","Retail",[2734],{"id":29,"case_study_id":29,"languages_code":925,"title":2735,"slug":8,"challenge_title":2736,"solution_title":2737,"benefits_title":2738,"benefits_btn_label":2453,"result_title":2739,"challenge_description":2740,"solution_description":2741,"benefits_description":2742,"result_description":2743,"description":2744,"benefits_btn_link":2357},"Customers 1st made in-team localization accessible and efficient","Making translation work easier for the team","l10n as an integral part of the system","Frictionless translation processes","An accessible Point of Sale in two languages","\u003Cp data-guid=\"e2709993-0657-4ecb-be0a-56c6be675fa8\" data-pm-slice=\"1 1 []\">The company needed an easy-to-use TMS with a good UI that could fit nicely into its CI pipeline. Up until that point, developers were the only ones who could add or change translations of the app via an XML file - and their hands were full. The goal was to involve team members without technical skills in the process, freeing devs' hands.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Customers 1st migrated from their former system using \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">CLI\u003C\u002Fa>&nbsp;and quickly set up data exchange with Localazy.&nbsp;Now, the product team only has to write the texts in the default language and push them to Localazy to reach the global translation team. Getting the finished translations from Localazy to compile them into their Angular app is handled by their CI\u002FCD pipeline.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"5fccb959-c587-464f-a1bd-97a762e724cc\">Easy-to-navigate UI for non-technical team members.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"613e6e45-c3ef-4552-92bb-52e33afb2b7e\">Fast updates in the CI\u002FCD pipeline thanks to Localazy CLI.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"c9b2671d-c195-48ea-a895-947dacc0406a\">Frictionless team processes that free developers' hands.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"b2c9accf-edf6-4200-aac6-b8a2a1859686\" data-pm-slice=\"1 1 []\">Customers 1st quickly localized their main Point of Sale (Angular SaaS app for store owners) to English using Localazy. The first iteration was done in 3 days. Every member in the product team can now translate within the platform, where two languages are managed: English and a version of Danish with bike service industry jargon.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Customers 1st is a Danish company that helps retail brands succeed with the help of sales, inventory, customer, and store administration management tools that make resource tracking for stores easier, simpler, and more efficient.\u003C\u002Fem>\u003C\u002Fp>",{"id":43,"status":4,"name":2746,"slug":2747,"date_created":2748,"meta_title":8,"meta_description":8,"logo":2749,"featured_image":2751,"internal_tag":2753,"banner":2754,"cta":2756,"testimonials":2762,"brand":2770,"client_industry":2779,"features":2780,"integrations":2795,"blog_articles":2802,"roles":2803,"industries":2809,"translations":2812,"case_study_id":43,"title":2814,"challenge_title":2815,"solution_title":2816,"benefits_title":2817,"benefits_btn_label":2453,"result_title":2818,"challenge_description":2819,"solution_description":2820,"benefits_description":2821,"result_description":2822,"description":2823,"benefits_btn_link":2357},"SupportBox","supportbox","2024-03-07T23:08:34.000Z",{"id":2750},"29628966-912a-481e-b06d-2bc79bbdd2e4",{"id":2752},"642f6c63-dccb-4499-99ca-4308c9b02368",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2755},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},"2024-04-11T11:09:17.000Z","Join Localazy today 💙","Translating has never been easier. Try Localazy for free with a 14-day trial.","Sign up","register",{"id":158,"status":4,"sort":8,"title":2763,"content":2764,"user_name":2765,"user_role":2766,"case_study_url":2767,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":2768},"The customer care is awesome!","\"Adding Localazy to our workflow was really easy. We appreciate the simplicity, as well as the ability to use keyboard shortcuts to speed things up. And the customer care is awesome, which we love.\"","Mário Roženský","CEO of SupportBox","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fsupportbox\u002F",{"id":2769},"4a4d7097-751c-4e83-8aaf-323091d55763",{"id":358,"status":4,"featured":227,"name":2746,"link":2771,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2772,"industries":2774},"https:\u002F\u002Fsupportbox.cz\u002F",{"id":2773},"62a24ffd-dd65-46e9-af91-f6ce96cc2936",[2775],{"id":29,"status":4,"sort":8,"translations":2776,"name":2778},[2777],{"id":67,"languages_code":925,"name":2778},"IT",[],[2781,2782,2789],{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},{"id":338,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2783,"alternative_name":2783,"short_description":2784,"alternative_description":2785,"value":2786,"sort":338,"status":4,"subtitle":2787,"longer_description":2788,"docs_link":8},"Project users","Forget about team size restrictions and pricing per seat.","We don't limit the number of contributors you can call to help you with translations, reviews, or development.","Unlimited","Invite everyone","Forget about team size restrictions and pricing per seat. Localazy doesn’t limit the number of contributors you can call to help you with translations, reviews, or development.",{"id":469,"created_on":2790,"is_released":229,"is_beta":227,"is_popular":227,"name":569,"alternative_name":569,"short_description":2791,"alternative_description":2791,"value":1974,"sort":8,"status":4,"subtitle":2792,"longer_description":2793,"docs_link":2794},"2023-06-16T21:02:25.000Z","Set up advanced automations to perform actions based on certain triggers and conditions.","Advanced automations","Set up advanced automations to perform actions based on certain triggers and conditions. Automatically copy new translations to more languages, delete deprecated keys, or mark important keys as needing improvement based on conditions.","\u002Ffeatures\u002Fautomations",[2796],{"id":297,"status":4,"name":2797,"slug":2798,"description":2799,"docs_link":2800,"meta_title":8,"meta_description":8,"icon":2801},"YAML","yaml","YAML Ain't Markup Language, but it is possible to translate it to more languages using Localazy. Just upload your YAML files or integrate your project with Localazy via CLI and enjoy continuous localization.","\u002Fdocs\u002Fcli\u002Fyaml-format",{"id":1493},[],[2804,2806,2808],{"id":16,"status":4,"created_on":2409,"slug":363,"persona_name":359,"type":8,"icon":365,"tags":2805,"meta_title":8,"meta_description":8},[2435],{"id":107,"status":4,"created_on":2409,"slug":258,"persona_name":2415,"type":8,"icon":260,"tags":2807,"meta_title":8,"meta_description":8},[2413],{"id":290,"status":4,"created_on":2424,"slug":291,"persona_name":2425,"type":2411,"icon":293,"tags":8,"meta_title":8,"meta_description":8},[2810],{"id":16,"status":4,"created_on":2409,"slug":363,"persona_name":359,"type":8,"icon":365,"tags":2811,"meta_title":8,"meta_description":8},[2435],[2813],{"id":43,"case_study_id":43,"languages_code":925,"title":2814,"slug":8,"challenge_title":2815,"solution_title":2816,"benefits_title":2817,"benefits_btn_label":2453,"result_title":2818,"challenge_description":2819,"solution_description":2820,"benefits_description":2821,"result_description":2822,"description":2823,"benefits_btn_link":2357},"SupportBox empowered users by involving them in the review process","Finding a bulletproof system for i18n","Automated data exchange & assistive tools for translators","Optimized tools for zero technical hassle","Addressing customer needs in 14 languages","\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">Many of Supportbox's customers had agents in other countries, so making their platform more accessible to global teams was crucial. Exchanging \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fyaml\" target=\"_blank\" rel=\"noopener\">YAML\u003C\u002Fa> files for translation wasn't working, as it led to lost data and constant developer involvement in fixing conflicts and damaged files. The company wanted to make this easier and allow their own clients to help with translations in a streamlined way.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">SupportBox used the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ftranslation-api\" target=\"_blank\" rel=\"noopener\">Localazy API\u003C\u002Fa> to upload their previously conflicting YAML files. Strings were sorted out easily, with the team being able to translate their app with the help of MT and other assistive tools.\u003C\u002Fp>\n\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">A selection of eager customers was then invited to the platform to review the translations in their native languages. The final content is automatically downloaded with \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI \u003C\u002Fa>and merged with the app before release.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Efficient workflow management.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Easy-to-implement automation tools.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"46e8773d-7861-431d-8daf-70faa83520a6\">Elimination of technical errors during text file handling.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"d41de756-e423-46d6-97ec-6dab1ad09ea8\">Shorter translation times.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"81f74870-d22a-41a6-9aa0-b62ba9a4fc7f\">Easy onboarding for involved volunteering customers.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"6a4f2bb0-0382-4963-ba8e-cb0f73d8263a\" data-pm-slice=\"1 1 []\">Adjusting to Localazy was quick for the team at SupportBox: the whole technical process was set up and working in two days. Once permissions and workflows were set, four languages (English, French, German, and Slovak) were fully implemented, while 10 more are in the works to address markets all over Europe.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>SupportBox is a helpdesk app for customer service agents with over 600+ users, mainly in Czechia and Slovakia. They offer customer care teams omnichannel communication tools for e-mail, live chat, phone, and social media support.\u003C\u002Fem>\u003C\u002Fp>",{"id":150,"status":4,"name":2825,"slug":2826,"date_created":2827,"meta_title":8,"meta_description":8,"logo":2828,"featured_image":2830,"internal_tag":2832,"banner":2833,"cta":2835,"testimonials":2836,"brand":2846,"client_industry":2855,"features":2856,"integrations":2869,"blog_articles":2872,"roles":2873,"industries":2874,"translations":2875,"case_study_id":150,"title":2877,"challenge_title":2878,"solution_title":2879,"benefits_title":2880,"benefits_btn_label":2453,"result_title":2881,"challenge_description":2882,"solution_description":2883,"benefits_description":2884,"result_description":2885,"description":2886,"benefits_btn_link":2357},"Donar Online","donar-online","2024-03-07T23:19:32.000Z",{"id":2829},"d12d5c53-31e4-4567-a661-4a2f543f252c",{"id":2831},"ec25b615-7ddf-47cb-8b1a-bdc7bb6f75e4",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2834},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":166,"status":4,"sort":8,"title":2837,"content":2838,"user_name":2839,"user_role":2840,"case_study_url":2841,"button_text":8,"company_logo_link":8,"company_logo":2842,"user_avatar":2844},"Makes localization much easier","\"If you don't want to manage the pain of translation keys, files, and flows, you certainly need to consider Localazy. You'll be able focus on your product and not on locale configurations.\" ","Agustin Cavilliotti","Founder of Donar Online","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fdonar-online\u002F",{"id":2843},"78aab79d-93f2-484d-8298-d122b39f1456",{"id":2845},"d416a116-fdf5-4ed4-8ba0-331afea52708",{"id":154,"status":4,"featured":227,"name":2825,"link":2847,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2848,"industries":2850},"https:\u002F\u002Fdonaronline.org",{"id":2849},"4b107b00-f913-4565-8a17-327fbd00de7f",[2851],{"id":43,"status":4,"sort":8,"translations":2852,"name":2854},[2853],{"id":72,"languages_code":925,"name":2854},"Non-profit",[],[2857,2861,2868],{"id":62,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":2859,"alternative_description":8,"value":8,"sort":62,"status":568,"subtitle":2860,"longer_description":2859,"docs_link":128},"Machine translation suggestions","Select from multiple machine translation options with the built-in suggestion system.","Faster translation progress",{"id":50,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":450,"alternative_name":2862,"short_description":2863,"alternative_description":2864,"value":1974,"sort":50,"status":4,"subtitle":2865,"longer_description":2866,"docs_link":2867},"Glossary","Keep your translations consistent and correct.","The Localazy Glossary is an essential tool for ensuring high-quality translations and providing context for translators.","Essential context resource","Provide the necessary context to your translators and keep your translations consistent and correct with the translation glossary.","\u002Ffeatures\u002Fglossary",{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},[2870],{"id":297,"status":4,"name":2797,"slug":2798,"description":2799,"docs_link":2800,"meta_title":8,"meta_description":8,"icon":2871},{"id":1493},[],[],[],[2876],{"id":158,"case_study_id":150,"languages_code":925,"title":2877,"slug":8,"challenge_title":2878,"solution_title":2879,"benefits_title":2880,"benefits_btn_label":2453,"result_title":2881,"challenge_description":2882,"solution_description":2883,"benefits_description":2884,"result_description":2885,"description":2886,"benefits_btn_link":2357},"Donar Online harnessed automation and volunteer help to expand to Brazil","Expanding to the next Latin American market","A seamless process involving volunteers","Complete toolkit for new languages","Seven locales – and counting!","\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">After localizing their Spanish content for several countries in Latin America, Donar Online reached out to Localazy to prepare their launch in Brazil with the help of the localization platform.\u003C\u002Fp>\n\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">The goal was to confidently enter their first Portuguese-speaking market to help Brazilian NGOs connect with new donors. They wanted to make sure the new workflows were seamless and that volunteers were able to participate in the translation process.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Donar Online used \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa> integration to import their YAML files automatically. Localazy notified volunteers and team members about new texts waiting for translation after each commit to the staging branch and subsequent upload.\u003C\u002Fp>\n\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Then, they took care of the translations using the Localazy web application, which also served as a central place where the Donar Online team could track the progress while giving them clarity and a way to work with multiple volunteers with different skills.&nbsp;\u003C\u002Fp>\n\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">When the translations were finished, the YAML files in the staging branch were updated again, making it ready for release.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Efficient integration and syncing processes.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"f614ea13-0be5-4f42-90b1-9928c1728f19\">Clear, centralized project and progress overview.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"00859bcc-8bc9-4866-a846-1545454270ad\">Transparent permission settings for volunteer help.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"c84ace2e-c13d-4ace-8468-f9cd5e9223ea\" data-pm-slice=\"1 1 []\">With the help of Localazy, Donar Online had its first iteration up and running in a week. Access rights were given to managers and volunteers. From then on, they were able to automatically synchronize new content using the CLI, allowing for a seamless process with a clear view of progress on the platform.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Donar Online is an Argentinian donation platform that helps Latin American NGOs multiply their impact and manage funds sustainably.\u003C\u002Fem>\u003Cem> They currently serve over 4,500 organizations in seven different countries.\u003C\u002Fem>\u003C\u002Fp>",{"id":154,"status":4,"name":2888,"slug":2888,"date_created":2889,"meta_title":8,"meta_description":8,"logo":2890,"featured_image":2892,"internal_tag":2894,"banner":2895,"cta":2897,"testimonials":2898,"brand":2909,"client_industry":2929,"features":2930,"integrations":2943,"blog_articles":2946,"roles":2947,"industries":2948,"translations":2949,"case_study_id":154,"title":2951,"challenge_title":2952,"solution_title":2953,"benefits_title":2954,"benefits_btn_label":2453,"result_title":2955,"challenge_description":2956,"solution_description":2957,"benefits_description":2958,"result_description":2959,"description":2960,"benefits_btn_link":2357},"djumla","2024-07-22T19:44:40.000Z",{"id":2891},"1fda6717-06f0-4d20-9eb9-c7bd5ecdf7a2",{"id":2893},"61f353ff-750a-4bde-828c-7f94e1b738e1",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2896},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":162,"status":4,"sort":8,"title":2899,"content":2900,"user_name":2901,"user_role":2902,"case_study_url":2903,"button_text":8,"company_logo_link":2904,"company_logo":2905,"user_avatar":2907},"Works like a charm!","\"Localazy helped us improve our translation workflow significantly. The UI is super easy to use, the toolset is awesome, and the integration into Laravel works like a charm!\"","David Jardin","Founder of djumla","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fdjumla\u002F","https:\u002F\u002Fwww.djumla.de\u002F",{"id":2906},"5302f8cc-aa5d-4f67-8660-faaa6470c8bb",{"id":2908},"fd750197-7e18-4410-ad63-86b49cf01230",{"id":449,"status":4,"featured":227,"name":2888,"link":2904,"country":2547,"region":2910,"email":2911,"competencies":2912,"facebook":2916,"twitter":8,"linkedin":2917,"github":8,"image":2918,"industries":2919},"Cologne","info@djumla.de",[2913,2914,369,2915],"Web Development","Web Design","Joomla!","https:\u002F\u002Fwww.facebook.com\u002Fdjumla","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fdjumla",{"id":2906},[2920,2923,2926],{"id":50,"status":4,"sort":8,"translations":2921,"name":2712},[2922],{"id":7,"languages_code":925,"name":2712},{"id":29,"status":4,"sort":8,"translations":2924,"name":2778},[2925],{"id":67,"languages_code":925,"name":2778},{"id":36,"status":4,"sort":8,"translations":2927,"name":2558},[2928],{"id":62,"languages_code":925,"name":2558},[],[2931,2934,2935,2936,2937,2938],{"id":490,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":633,"alternative_name":633,"short_description":8,"alternative_description":2932,"value":1974,"sort":423,"status":4,"subtitle":8,"longer_description":2932,"docs_link":2933},"Hook into the most important events in Localazy and create custom integrations and automated workflows.","\u002Ffeatures\u002Fwebhooks",{"id":2564,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":229,"name":560,"alternative_name":2565,"short_description":2566,"alternative_description":2566,"value":1974,"sort":959,"status":4,"subtitle":2567,"longer_description":2566,"docs_link":2568},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":62,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":2859,"alternative_description":8,"value":8,"sort":62,"status":568,"subtitle":2860,"longer_description":2859,"docs_link":128},{"id":2501,"created_on":2338,"is_released":229,"is_beta":227,"is_popular":227,"name":2502,"alternative_name":2502,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":632,"created_on":2939,"is_released":229,"is_beta":227,"is_popular":227,"name":2940,"alternative_name":2940,"short_description":2941,"alternative_description":2941,"value":1974,"sort":8,"status":4,"subtitle":2942,"longer_description":2941,"docs_link":8},"2022-10-21T11:36:40.000Z","Custom Locales","Localazy offers 5 default custom locales for everyone, if you need more or need specific modifications, we can make it happen.","We are ready to meet your specific requirements.",[2944],{"id":1777,"status":4,"name":2571,"slug":2572,"description":2573,"docs_link":2574,"meta_title":8,"meta_description":8,"icon":2945},{"id":2576},[],[],[],[2950],{"id":154,"case_study_id":154,"languages_code":925,"title":2951,"slug":8,"challenge_title":2952,"solution_title":2953,"benefits_title":2954,"benefits_btn_label":2453,"result_title":2955,"challenge_description":2956,"solution_description":2957,"benefits_description":2958,"result_description":2959,"description":2960,"benefits_btn_link":2357},"Djumla equipped medical researchers with intuitive localization tools","Localizing a patient survey into 65 languages","Every translation in one place","Intuitive multilingual pipelines","A self-service workflow to serve 50 countries","\u003Cp data-guid=\"c7212734-fc39-4392-bc6f-02983a77dd2f\" data-pm-slice=\"1 1 []\">The development agency needed to efficiently translate an international patient survey for a medical research client. However, the existing workflow was frustrating and time-consuming: local researchers translated from plain Word files, and developers copy-pasted the strings into language files. Even minor changes usually took days, and the whole pipeline was manual.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Localazy, being an all-in-one TMS, allowed djumla to import the source translation from its shared dataset into Localazy. The integration with their \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Flaravel\" target=\"_blank\" rel=\"noopener\">Laravel\u003C\u002Fa> application was ready in less than an hour. Once the content was centralized, countries were onboarded one by one.\u003C\u002Fp>\n\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Using \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Flanguage-permissions\" target=\"_blank\" rel=\"noopener\">Language Permissions\u003C\u002Fa>, researchers accessed their respective languages on the platform and translated their strings directly. Changes were approved by the head researcher of every country and deployed to the app using&nbsp;\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp data-guid=\"7109e6fc-1bd2-4081-bd41-6a747f40fc95\" data-pm-slice=\"1 1 []\">Their client also needed country-specific English versions for non-English-speaking countries to cover cultural differences in the survey. Since all countries had to implement English as the fallback language, djumla leveraged Localazy's&nbsp;\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Flocalazy-enterprise-tier#custom-locales\" target=\"_blank\" rel=\"noopener\">Custom Locales.\u003C\u002Fa>\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Efficient onboarding of multiple language pairs.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"428703db-9683-4d4e-9782-e334bd053f4a\">Easy permission set-up for an optimal proofreading process.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"0b09d0dc-fc37-4c87-acaa-3064eb7eb3cd\">Quick event automation with Webhooks.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"1a16ad8c-078a-4368-9b21-36c58ed022ed\">Seamless app deployment through Localazy's CLI.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"0385fff4-902d-4320-9c02-44cc3857cc1d\" data-pm-slice=\"1 1 []\">Using Localazy, djumla was quickly able to offer a self-service workflow to local researchers that increased their satisfaction and reduced costs, time, and effort. More than 50,000 patients in 50 countries participated in the localized survey, and 65 languages were localized by natives.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>A German software development company founded in 2009, djumla specializes in custom web development for companies of all sizes, from startups to established international corporations that need personalized solutions.\u003C\u002Fem>\u003C\u002Fp>",{"id":158,"status":4,"name":2962,"slug":2963,"date_created":2964,"meta_title":8,"meta_description":8,"logo":2965,"featured_image":2967,"internal_tag":2969,"banner":2970,"cta":2972,"testimonials":2973,"brand":2981,"client_industry":2993,"features":2994,"integrations":2997,"blog_articles":3005,"roles":3006,"industries":3007,"translations":3008,"case_study_id":158,"title":3010,"challenge_title":3011,"solution_title":3012,"benefits_title":3013,"benefits_btn_label":2453,"result_title":3014,"challenge_description":3015,"solution_description":3016,"benefits_description":3017,"result_description":3018,"description":3019,"benefits_btn_link":2357},"Winalist","winalist","2024-07-24T15:17:34.000Z",{"id":2966},"7a2197df-066d-46e9-b263-2cf99ea2d3db",{"id":2968},"41bc9080-43bf-4613-98ff-feb686dcd277",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":2971},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":174,"status":4,"sort":8,"title":2974,"content":2975,"user_name":2976,"user_role":2977,"case_study_url":2978,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":2979},"Super easy to manage","\"Once implementation is completed, Localazy is a really easy platform to adopt and function with.\"","Nicolas Manfredini","CEO & Founder of Winalist","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fwinalist\u002F",{"id":2980},"58e34836-f9ab-49cc-9adb-7b5af815fad9",{"id":423,"status":568,"featured":227,"name":2962,"link":2982,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":2983,"industries":2985},"https:\u002F\u002Fwww.winalist.com\u002F",{"id":2984},"074bb80d-5e65-42d1-9f8b-88e4a8c5e44b",[2986,2989],{"id":67,"status":4,"sort":8,"translations":2987,"name":2490},[2988],{"id":107,"languages_code":925,"name":2490},{"id":154,"status":4,"sort":8,"translations":2990,"name":2992},[2991],{"id":36,"languages_code":925,"name":2992},"Travel & Leisure",[],[2995,2996],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":62,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":2859,"alternative_description":8,"value":8,"sort":62,"status":568,"subtitle":2860,"longer_description":2859,"docs_link":128},[2998,3000],{"id":174,"status":4,"name":1484,"slug":1485,"description":1486,"docs_link":1487,"meta_title":8,"meta_description":8,"icon":2999},{"id":1493},{"id":531,"status":4,"name":3001,"slug":3002,"description":3003,"docs_link":1487,"meta_title":8,"meta_description":8,"icon":3004},"POT","pot","Localize your app with .POT translations and Localazy CLI.\nUpload POT files with your strings to Localazy and enjoy continuous localization of your project.",{"id":1493},[],[],[],[3009],{"id":162,"case_study_id":158,"languages_code":925,"title":3010,"slug":8,"challenge_title":3011,"solution_title":3012,"benefits_title":3013,"benefits_btn_label":2453,"result_title":3014,"challenge_description":3015,"solution_description":3016,"benefits_description":3017,"result_description":3018,"description":3019,"benefits_btn_link":2357},"Winalist automated their l10n workflow and optimized it for deployment","Pruning their 11-language pipeline","Human care with a touch of automation","Fluid workflows with sweet results","An improved multilingual vessel","\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">As a global service offering international experiences, the Winalist team had already internally localized their content to 11 languages. However, they exclusively worked with \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fpoedit-integration\" target=\"_blank\" rel=\"noopener\">PO files in Poedit\u003C\u002Fa> that needed constant updates and were later pushed to production on a dedicated repository.\u003C\u002Fp>\n\u003Cp data-guid=\"2f2385ad-a87a-4216-979a-094546b958dd\" data-pm-slice=\"1 1 []\">The idea was to automate certain actions and optimize the whole deployment workflow via \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-github-actions-localazy\" target=\"_blank\" rel=\"noopener\">GitHub Actions\u003C\u002Fa>, making localization management much more straightforward.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">Winalist took advantage of \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa> to automate its multilingual pipeline. Once migration was completed, they could easily centralize their translation activity inside our UI. They pushed new content to pre-production, left it in the hands of country managers to ensure appropriate localization, and then sent it to production for fast updates.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"220bfebe-e608-4920-9c53-37ee95455d90\">Seamless integration with PO formats.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"bf3db0de-ee77-4353-a111-02a350510341\">Quick implementation process for existing translations.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"0a772ce3-07ae-43f7-a664-b509af5578b4\">User-friendly management tools.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"6a4f2bb0-0382-4963-ba8e-cb0f73d8263a\" data-pm-slice=\"1 1 []\">Thanks to Localazy, the team at Winalist was able to get their first iteration ready in a day and migrate their existing content successfully. They currently manage and update their 11 languages within the platform, including Portuguese, Dutch, Finnish, Swedish, Chinese, and Japanese.\u003C\u002Fp>","\u003Cp>\u003Cem>Winalist is a French platform that offers wine and liquor-tasting experiences by connecting wine enthusiasts and tourists with 1,200 hosts all over Europe. It has been recognized as the continent's top distributor for curated wine experiences.\u003C\u002Fem>\u003C\u002Fp>",{"id":162,"status":4,"name":3021,"slug":3022,"date_created":3023,"meta_title":8,"meta_description":8,"logo":3024,"featured_image":3026,"internal_tag":3028,"banner":3029,"cta":3034,"testimonials":3035,"brand":3043,"client_industry":3051,"features":3054,"integrations":3062,"blog_articles":3065,"roles":3066,"industries":3067,"translations":3068,"case_study_id":162,"title":3070,"challenge_title":3071,"solution_title":3072,"benefits_title":3073,"benefits_btn_label":2760,"result_title":3074,"challenge_description":3075,"solution_description":3076,"benefits_description":3077,"result_description":3078,"description":3079,"benefits_btn_link":2357},"Dawn Patrol","dawn-patrol","2024-07-24T17:50:14.000Z",{"id":3025},"9e66eb08-03bd-4f17-8897-bd9983b5c25a",{"id":3027},"ff2a844f-58c7-4fd0-a5dc-b6f0613a393b",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":50,"sort":8,"created_on":3030,"name":738,"cta_link":3031,"banner_image":3032},"2022-08-09T20:27:02.000Z","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ffigma-localization-plugin",{"id":3033},"04a8d631-24aa-4601-bc98-403eba1ecd53",{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":99,"status":4,"sort":8,"title":3036,"content":3037,"user_name":3038,"user_role":3039,"case_study_url":3040,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3041},"A godsend for our developers","\"Localazy streamlined our translation workflow and made our developers' lives easier. Now they can focus on developing rather than keeping track of translations.\"","Anton Bremer","Co-founder of Dawn Patrol","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fdawn-patrol\u002F",{"id":3042},"a116d36a-cdaf-4bc3-b2d4-39d559029b69",{"id":1777,"status":568,"featured":227,"name":3021,"link":3044,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3045,"industries":3047},"https:\u002F\u002Fwww.dawnpatrol.cloud\u002F",{"id":3046},"3f9b173a-6aa4-4bba-914e-c29c9c3e764a",[3048],{"id":62,"status":4,"sort":8,"translations":3049,"name":2374},[3050],{"id":22,"languages_code":925,"name":2374},[3052],{"id":29,"languages_code":925,"name":3053},"Travel & Hospitality",[3055,3056,3057,3061],{"id":62,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":2859,"alternative_description":8,"value":8,"sort":62,"status":568,"subtitle":2860,"longer_description":2859,"docs_link":128},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":285,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":3058,"alternative_name":738,"short_description":3059,"alternative_description":3059,"value":1974,"sort":274,"status":4,"subtitle":330,"longer_description":3059,"docs_link":3060},"Figma integration","Figma plugin enables you to import texts from your designs directly into Localazy and get translated strings back.","\u002Fintegrations\u002Ffigma",{"id":99,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2633,"alternative_name":8,"short_description":2634,"alternative_description":8,"value":8,"sort":99,"status":4,"subtitle":2635,"longer_description":8,"docs_link":8},[3063],{"id":518,"status":4,"name":738,"slug":737,"description":8,"docs_link":1761,"meta_title":8,"meta_description":8,"icon":3064},{"id":740},[],[],[],[3069],{"id":166,"case_study_id":162,"languages_code":925,"title":3070,"slug":8,"challenge_title":3071,"solution_title":3072,"benefits_title":3073,"benefits_btn_label":2760,"result_title":3074,"challenge_description":3075,"solution_description":3076,"benefits_description":3077,"result_description":3078,"description":3079,"benefits_btn_link":2357},"Dawn Patrol surfed the international markets with painless localization tools","Making the app truly global","Localazy CLI to catch the wave","Less time wasted with efficient tools","An effortless localization experience","\u003Cp data-guid=\"528c6119-602c-421a-9cf8-e1de69bcbc7a\" data-pm-slice=\"1 1 []\">As a product used in coastal areas around the world, the Dawn Patrol team wanted to make their app more accessible to more users in popular surfing destinations. However, they were struggling to keep track of the translation progress (specifically to see at a glance which languages were fully translated and which still need work) and the translation history. They turned to Localazy to make the process painless.\u003C\u002Fp>","\u003Cp data-guid=\"984214d3-a716-4d37-80ac-4130008f8686\" data-pm-slice=\"1 1 []\">With \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa>, Dawn Patrol streamlined their l10n workflow, allowing quicker app updates. Localazy automatically notified users, surfers, and professional linguists from Localazy's \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcontinuous-localization-team\" target=\"_blank\" rel=\"noopener\">Continuous Localization Services\u003C\u002Fa> when new texts needed to be translated, cutting down on the required micromanagement by the Dawn Patrol team. When the localized updates were ready, they were pushed to production and updated in their app almost instantly.\u003C\u002Fp>\n\u003Cp data-guid=\"52443d77-3ca8-433d-9e16-e25488f61830\">With the help of \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ffigma-localization-plugin\" target=\"_blank\" rel=\"noopener\">Localazy's Figma plugin\u003C\u002Fa>, the team also easily prepared screenshots in different languages for their App Store to show the localized product in action.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"3bbe9026-a4df-4140-80fb-cb55ec90c230\">Fast app updates thanks to Localazy CLI.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"0a772ce3-07ae-43f7-a664-b509af5578b4\">Effortless multilingual design with Localazy's Figma plugin.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"a5c98d4b-a9ef-4750-bdae-b8103625986e\">Convenient project tracking alerts.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"f437e05e-eca9-43cb-a478-02a6e7ede97b\">Professional expert translation services for industry lingo.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"6a4f2bb0-0382-4963-ba8e-cb0f73d8263a\" data-pm-slice=\"1 1 []\">After their first file upload, the Dawn Patrol team started adding new languages to the app. Coupled with Localazy's CLI, workflow automation allowed them to simplify their processes. The app is now readily available in English, Spanish, Portuguese, French, and Japanese, including some regional locale variations.\u003C\u002Fp>","\u003Cp data-guid=\"3df9ae7b-d62b-47b8-b139-6f92dd62e0c5\" data-pm-slice=\"1 1 []\">\u003Cem>Dawn Patrol is a Dutch surf tracking app for Apple Watch that allows users to get surf forecasts and track their performance and paddle statistics. Surfers can also review the waves they have surfed on a map and see their speed and length.\u003C\u002Fem>\u003C\u002Fp>",{"id":170,"status":4,"name":3081,"slug":3082,"date_created":3083,"meta_title":8,"meta_description":8,"logo":3084,"featured_image":3086,"internal_tag":8,"banner":3088,"cta":3090,"testimonials":3091,"brand":3101,"client_industry":3105,"features":3107,"integrations":3111,"blog_articles":3112,"roles":3113,"industries":3114,"translations":3115,"case_study_id":170,"title":3117,"challenge_title":3118,"solution_title":3119,"benefits_title":3120,"benefits_btn_label":2453,"result_title":3121,"challenge_description":3122,"solution_description":3123,"benefits_description":3124,"result_description":3125,"description":3126,"benefits_btn_link":2357},"Wiki.js","wiki-js","2025-01-27T11:33:30.000Z",{"id":3085},"223af85b-7b9c-4eb9-a5ca-d41f42568f13",{"id":3087},"2afb8f2e-33e6-4366-aab5-306574f7b3e6",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3089},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":398,"status":568,"sort":8,"title":3092,"content":3093,"user_name":3094,"user_role":3095,"case_study_url":3096,"button_text":8,"company_logo_link":8,"company_logo":3097,"user_avatar":3099},"Removes the complexity of dealing with l10n submissions","\"Localazy's UI is intuitive and multiple contributors can quickly get started with translations. The API and CLI tools make integrations with build processes seamless.\" ","Nicolas Giard","Lead Developer at Wiki.js","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fwiki-js\u002F",{"id":3098},"4de0c4a8-eae7-4b07-9fa5-69699d14b700",{"id":3100},"835b32eb-03c0-4275-b66d-8a67633fe5f5",{"id":1008,"status":568,"featured":227,"name":3081,"link":3102,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3103,"industries":3104},"https:\u002F\u002Fjs.wiki",{"id":3098},[],[3106],{"id":7,"languages_code":925,"name":2712},[3108,3109,3110],{"id":2501,"created_on":2338,"is_released":229,"is_beta":227,"is_popular":227,"name":2502,"alternative_name":2502,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":62,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":2859,"alternative_description":8,"value":8,"sort":62,"status":568,"subtitle":2860,"longer_description":2859,"docs_link":128},[],[],[],[],[3116],{"id":174,"case_study_id":170,"languages_code":925,"title":3117,"slug":8,"challenge_title":3118,"solution_title":3119,"benefits_title":3120,"benefits_btn_label":2453,"result_title":3121,"challenge_description":3122,"solution_description":3123,"benefits_description":3124,"result_description":3125,"description":3126,"benefits_btn_link":2357},"Wiki.js connected brains globally using community contributions","Simplifying the way translations were added","Contribute, send, review – done!","Less complexity, more reach ","An Alexandria Library for devs everywhere","\u003Cp data-guid=\"a4c59658-a01f-4c7b-90a7-3b1a4d75561f\" data-pm-slice=\"1 1 []\">Originally created in English, Wiki.js needed to offer its user interface in multiple locales to serve its global user base in their preferred language. The platform relied on its community for this, but it was too complex to manage translations from contributors. Ultimately, an easier method was needed to handle changes and review submissions.\u003C\u002Fp>","\u003Cp data-guid=\"b0527668-ab82-4c91-8e4c-2a4d5ef1c3aa\" data-pm-slice=\"1 1 []\">Localazy allowed the Wiki.js team to set up a user-friendly working space where all submissions were centralized. The integration through Localazy CLI and API simplified the entire process: new and updated translations were automatically pulled daily from different installations and stored in GitHub, reducing the manual workload and making the review process easier.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"76a8bddb-3f7b-44eb-af88-8f0437c7ad9b\">Easier submissions in a clearly streamlined process.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"9a1a60eb-9394-4550-9ac3-be0eba212b43\">Enhanced collaboration with an intuitive user interface.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"85a73418-5a35-46c3-9a11-d0c7c1132e6e\">Daily automated pulls that keep translations current.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"9dcf5cdb-61e7-4677-a88d-d44b3239c22c\">Easy onboarding of new locales and contributors.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"84238b3c-d2aa-481f-b5c9-e5c4c9604342\" data-pm-slice=\"1 1 []\">Wiki.js now supports 56 languages that are regularly updated. Localazy made it easier for contributors to help with translations and reduced the difficulty of managing them, leading to a smoother experience for its global community. The team was also able to improve their overall localization process, allowing quicker distribution and better coordination.\u003C\u002Fp>","\u003Cp data-guid=\"68e2b33a-8b5b-46f4-a847-b882e26b7479\" data-pm-slice=\"1 1 []\">Wiki.js is an open-source platform designed for documentation and knowledge-sharing. It empowers developers and teams to create content using Markdown, AsciiDoc, or a visual editor, facilitating accessibility for users worldwide.\u003C\u002Fp>",{"id":174,"status":4,"name":3128,"slug":3129,"date_created":3130,"meta_title":8,"meta_description":8,"logo":3131,"featured_image":3133,"internal_tag":3135,"banner":3136,"cta":3138,"testimonials":3139,"brand":3150,"client_industry":3155,"features":3157,"integrations":3168,"blog_articles":3173,"roles":3174,"industries":3175,"translations":3176,"case_study_id":174,"title":3178,"challenge_title":3179,"solution_title":3180,"benefits_title":3181,"benefits_btn_label":2760,"result_title":3182,"challenge_description":3183,"solution_description":3184,"benefits_description":3185,"result_description":3186,"description":3187,"benefits_btn_link":2357},"Build Change","build-change","2025-09-03T20:05:11.000Z",{"id":3132},"1e787a60-c9b1-4279-846a-0ffd2850a08c",{"id":3134},"e3a70045-1254-49cc-9d18-1953068e9ddd",{"id":2344,"status":4,"label":2162,"slug":2163,"description":53,"ghost_id":2161},{"id":62,"sort":8,"created_on":2346,"name":850,"cta_link":2347,"banner_image":3137},{"id":2349},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":347,"status":568,"sort":8,"title":3140,"content":3141,"user_name":3142,"user_role":3143,"case_study_url":3144,"button_text":8,"company_logo_link":3145,"company_logo":3146,"user_avatar":3148},"Scalable and easy to use","\"Localazy delivers an intuitive user interface and toolset for both technical and non-technical users. It's made our localization much easier and scalable.\"","Joel Herold","Director of Technology","https:\u002F\u002Flocalazy.com\u002Fcase-study\u002Fbuild-change\u002F","https:\u002F\u002Fbuildchange.org",{"id":3147},"af81efcc-c829-475a-89db-309c1b1c14ef",{"id":3149},"3b62d635-c999-4dd9-aa98-aa7af8ccc1c4",{"id":3151,"status":568,"featured":227,"name":3128,"link":3145,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3152,"industries":3154},86,{"id":3153},"603766bd-fd17-48e7-a9d9-14c36e40d7d3",[],[3156],{"id":72,"languages_code":925,"name":2854},[3158,3165,3166,3167],{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},191,"2025-07-29T08:11:18.000Z","Localazy API","Automatically translate your software and content with the Localazy API.","Programmatic translation management","Automatically translate your software and content with the Localazy API and maximize your efficiency with programmatic translation project management.",{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},{"id":469,"created_on":2790,"is_released":229,"is_beta":227,"is_popular":227,"name":569,"alternative_name":569,"short_description":2791,"alternative_description":2791,"value":1974,"sort":8,"status":4,"subtitle":2792,"longer_description":2793,"docs_link":2794},{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},[3169,3171],{"id":57,"status":4,"name":660,"slug":659,"description":2638,"docs_link":2639,"meta_title":8,"meta_description":8,"icon":3170},{"id":662},{"id":62,"status":4,"name":667,"slug":666,"description":2642,"docs_link":2643,"meta_title":8,"meta_description":8,"icon":3172},{"id":669},[],[],[],[3177],{"id":99,"case_study_id":174,"languages_code":925,"title":3178,"slug":8,"challenge_title":3179,"solution_title":3180,"benefits_title":3181,"benefits_btn_label":2760,"result_title":3182,"challenge_description":3183,"solution_description":3184,"benefits_description":3185,"result_description":3186,"description":3187,"benefits_btn_link":2357},"Build Change reduced bottlenecks with a weatherproof translation workflow","Making technical information more accesible ","A simpler setup to mitigate risks","Crystal clear messaging, ensured","Reliable communication with locals","\u003Cp data-guid=\"48158885-04dc-438c-ae2d-54cf430f6fd9\" data-pm-slice=\"1 1 []\">The non-profit needed to localize complex technical content to meet the varying financial and logistical needs of homeowners, builders, and local teams in the field. In addition to the language barriers, they were also looking for a solution that could simplify their current translation process, which was tedious and prone to user error.\u003C\u002Fp>","\u003Cp data-guid=\"04d1ed10-78c9-47f8-adb3-a0b8c28ac8ad\" data-pm-slice=\"1 1 []\">The team built a whole system for easier content distribution on Localazy. Using the iOS and Android integrations, they transitioned to the platform and applied machine translation to their workflows. This helped them to quickly generate translations that were later reviewed and refined by native speakers, minimizing errors on the technical side.&nbsp;Then they used Localazy CLI and CDN to distribute their localized message across their global network, making the updated content instantly accesible to their users worldwide in different languages.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 3 []\">\n\u003Cli>\n\u003Cp data-guid=\"fdb16483-1a84-4341-a4a1-768a728d8dec\">Increased accuracy and faster content turnarounds.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"09c6791a-4203-4f51-b3ec-e2dc2f561093\">Easier collaboration among global teams.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"0f6c0d5d-3167-41da-80a4-cfeb0c0b9f59\">Comprehensive and easy-to-follow documentation.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"c46cf4c0-79b4-455c-9e98-92dc2b939018\">Smooth integration with existing tools.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"bffb0932-d159-472e-9115-e25d0106b825\" data-pm-slice=\"1 1 []\">With their new, well-documented localization process, Build Change has considerably decreased the time needed for translation and review in seven different languages. Quick MT kick-offs and easy onboarding for contributors have made scaling easier &mdash; the NGO can now confidently meet their users where they're at in their journey to resilient housing, whether that is Mozambique, Colombia, or the Philippines.\u003C\u002Fp>","\u003Cp data-guid=\"c131151a-a33f-4679-8449-14d4a7cbfd38\" data-pm-slice=\"1 1 []\">\u003Cem>Build Change is a global NGO that offers resilient housing solutions to homeowners in disaster-prone areas through their assistance platform, BCtap. They operate in 15 countries across Latin America, the Caribbean, Africa, and the Asia-Pacific region.\u003C\u002Fem>\u003C\u002Fp>",{"id":99,"status":4,"name":3189,"slug":3190,"date_created":3191,"meta_title":8,"meta_description":8,"logo":3192,"featured_image":3194,"internal_tag":8,"banner":3196,"cta":3198,"testimonials":3199,"brand":3205,"client_industry":3210,"features":3213,"integrations":3230,"blog_articles":3235,"roles":3236,"industries":3237,"translations":3238,"case_study_id":99,"title":3240,"challenge_title":3241,"solution_title":3242,"benefits_title":3243,"benefits_btn_label":2453,"result_title":3244,"challenge_description":3245,"solution_description":3246,"benefits_description":3247,"result_description":3248,"description":3249,"benefits_btn_link":2357},"AutoBrief","autobrief","2025-09-05T12:46:13.000Z",{"id":3193},"0d409c2b-a89d-451c-a048-2849b216b045",{"id":3195},"66c1b856-505e-43e8-902c-412e6e9bd362",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3197},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":314,"status":568,"sort":8,"title":3189,"content":3200,"user_name":3201,"user_role":3202,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3203},"\"Localazy is a well-integrated, simple solution for devs who just need to get translations done.\"","Matej Vehar","CTO at AutoBrief",{"id":3204},"42997952-b9e8-4f8d-acd8-a53448d618f0",{"id":1025,"status":568,"featured":227,"name":3189,"link":3206,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3207,"industries":3209},"https:\u002F\u002Fautobrief.io\u002F",{"id":3208},"99bd6249-3a78-4356-98e0-d377ac4f12d7",[],[3211],{"id":158,"languages_code":925,"name":3212},"Automotive",[3214,3219,3220,3221,3225],{"id":624,"created_on":3215,"is_released":229,"is_beta":227,"is_popular":229,"name":552,"alternative_name":552,"short_description":3216,"alternative_description":3216,"value":1974,"sort":8,"status":4,"subtitle":3217,"longer_description":3216,"docs_link":3218},"2022-10-18T11:20:44.000Z","Never translate the same keys again, link them together and share their translations.","Link duplicate strings","\u002Ffeatures\u002Fduplicity-linking",{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":3222,"created_on":3223,"is_released":229,"is_beta":227,"is_popular":227,"name":3224,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},209,"2025-09-08T10:36:39.000Z","Machine Translation",{"id":158,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":527,"alternative_name":527,"short_description":3226,"alternative_description":3227,"value":1974,"sort":158,"status":4,"subtitle":3228,"longer_description":53,"docs_link":3229},"Save your time and money with a free translation memory.","An intelligent translation memory that scans your project and looks for the same expressions to facilitate translation.","Essential feature for free","\u002Ffeatures\u002Ftranslation-memory",[3231,3233],{"id":158,"status":4,"name":688,"slug":687,"description":2719,"docs_link":1396,"meta_title":8,"meta_description":8,"icon":3232},{"id":690},{"id":1721,"status":4,"name":2578,"slug":2579,"description":2580,"docs_link":2581,"meta_title":8,"meta_description":8,"icon":3234},{"id":2583},[],[],[],[3239],{"id":398,"case_study_id":99,"languages_code":925,"title":3240,"slug":8,"challenge_title":3241,"solution_title":3242,"benefits_title":3243,"benefits_btn_label":2453,"result_title":3244,"challenge_description":3245,"solution_description":3246,"benefits_description":3247,"result_description":3248,"description":3249,"benefits_btn_link":2357},"AutoBrief boosted their business with automated localization updates","Fueling market growth through automation","A system engineered for their needs","Firmer grip on the l10n steering wheel","Faster time-to-market with less effort","\u003Cp data-guid=\"22c6a452-b7bf-404d-8fbd-99082ea509d7\" data-pm-slice=\"1 1 []\">The SaaS company wanted to serve their platform in multiple languages across European markets. Initially, they had no formal process in place for this: they updated their code manually, which resulted in slow and error-prone translation workflows. They needed an automated and sustainable solution to reduce their workload and ensure consistency across languages without disrupting development.\u003C\u002Fp>","\u003Cp data-guid=\"2b515228-9c59-4589-9da7-05fcdbd82525\" data-pm-slice=\"1 1 []\">Using \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa>, Autobrief could upload and download translation files hassle-free. \u003Cspan class=\"text-background-color pink\" data-text-background-color=\"true\" data-guid=\"\" data-color=\"PINK\">Once integration with Angular and Nette\u002FLaravel was quickly completed\u003C\u002Fspan>, automated workflows were set up and updates from vendors, partners, users, and other contributors synced automatically with every new release.\u003C\u002Fp>\n\u003Cp data-guid=\"2b515228-9c59-4589-9da7-05fcdbd82525\" data-pm-slice=\"1 1 []\">Translation memory helped enhance accuracy and consistency, while untranslated texts and typos were marked for revision with automatic alerts, which significantly improved translation quality.\u003C\u002Fp>","\u003Cul data-pm-slice=\"3 1 []\">\n\u003Cli>\n\u003Cp data-guid=\"9e574645-52a8-43d8-9ddb-a788e999424e\">Faster updates and release cycles.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"9a8b8c90-eb91-40ad-8111-777716fcd7fc\">Flexible translation processes.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"4d0dfae1-8bf3-464f-8db4-3feefde18562\">Effortless system integration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"5cb2f614-e463-415d-b19a-e61aedb3e6ff\">Improved team collaboration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp data-guid=\"4ebfc8cd-cd10-43a6-8baa-80672ccb5aa8\" data-pm-slice=\"1 1 []\">With Localazy, Autobrief launched its first batch of four European languages in just one week. Consistent updates, straightforward multilingual management, and simplified workflows help them now strengthen their market position as they launch new features.&nbsp;\u003Cspan class=\"text-background-color pink\" data-text-background-color=\"true\" data-guid=\"\" data-color=\"PINK\">They currently serve over 400+ clients in Poland, Croatia, Sweden, France, and Slovenia.\u003C\u002Fspan>\u003C\u002Fp>","\u003Cp data-guid=\"8263a786-772c-4e47-b827-53cb45e5d661\" data-pm-slice=\"1 1 []\">Autobrief is a Slovenian B2B platform that supports car dealers and fleet managers in faster and more profitable car trading. They offer access to auctions, marketing tools and documentation, facilitating over 15,000 sales a year across Europe.\u003C\u002Fp>",{"id":398,"status":4,"name":3251,"slug":3252,"date_created":3253,"meta_title":8,"meta_description":8,"logo":3254,"featured_image":3256,"internal_tag":8,"banner":3258,"cta":3260,"testimonials":3261,"brand":3267,"client_industry":3272,"features":3276,"integrations":3294,"blog_articles":3295,"roles":3296,"industries":3297,"translations":3298,"case_study_id":398,"title":3300,"challenge_title":3301,"solution_title":3302,"benefits_title":3303,"benefits_btn_label":2453,"result_title":3304,"challenge_description":3305,"solution_description":3306,"benefits_description":3307,"result_description":3308,"description":3309,"benefits_btn_link":2357},"Bryq","bryq","2025-09-08T13:10:21.000Z",{"id":3255},"6ab71cdf-a6ce-4e3f-a7a7-97392728fb02",{"id":3257},"333c95fe-6f76-4833-8f9f-91b9efab3ee4",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3259},{"id":2535},{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":324,"status":568,"sort":8,"title":3251,"content":3262,"user_name":3263,"user_role":3264,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3265},"\"Localazy streamlines coordination between our team and translators, improves review efficiency, and meets our translation needs effectively.\"","Manto Papagianni","Head of Product at Bryq",{"id":3266},"a10912a1-1984-4149-8f9e-a89d7d5be39a",{"id":986,"status":568,"featured":227,"name":3251,"link":3268,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3269,"industries":3271},"https:\u002F\u002Fwww.bryq.com\u002F",{"id":3270},"ac6f158a-b7e7-44af-bdd6-f75d78eb2dd3",[],[3273,3275],{"id":154,"languages_code":925,"name":3274},"Human Resources",{"id":7,"languages_code":925,"name":2712},[3277,3281,3282,3290],{"id":3278,"created_on":3279,"is_released":229,"is_beta":227,"is_popular":227,"name":3280,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},208,"2025-09-08T10:24:09.000Z","Translation Management",{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":3283,"created_on":3284,"is_released":229,"is_beta":227,"is_popular":229,"name":3285,"alternative_name":3285,"short_description":3286,"alternative_description":3287,"value":1974,"sort":8,"status":4,"subtitle":3288,"longer_description":3287,"docs_link":3289},175,"2024-01-02T11:05:33.000Z","Localazy AI","Translate your strings and content with AI designed for in-context translations.","Localazy AI uses your project's glossary, context, and style guide to translate your content the way you want.","Advanced workflows","\u002Ffeatures\u002Flocalazy-ai",{"id":3291,"created_on":3292,"is_released":229,"is_beta":227,"is_popular":227,"name":3293,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":568,"subtitle":8,"longer_description":8,"docs_link":8},210,"2025-09-08T13:11:58.000Z","Screenshots",[],[],[],[],[3299],{"id":314,"case_study_id":398,"languages_code":925,"title":3300,"slug":8,"challenge_title":3301,"solution_title":3302,"benefits_title":3303,"benefits_btn_label":2453,"result_title":3304,"challenge_description":3305,"solution_description":3306,"benefits_description":3307,"result_description":3308,"description":3309,"benefits_btn_link":2357},"Bryq enhanced its hiring processes with assessments in native languages","Revamping their translation management ","Smart multilingual content scaling","The market expansion power suit","More scalable, less biased assessments","\u003Cp data-guid=\"7e8d1c38-a08c-4008-8fa7-efb09ea194d1\" data-pm-slice=\"1 1 []\">The company was managing translations offline, but the process was slow and required endless back-and-forth with linguists. As they grew, they needed a faster, more organized system to generate accurate multilingual assesment forms in the candidates' native languages, collect reliable data, and provide better insights for informed decision-making.\u003C\u002Fp>","\u003Cp>Bryq used \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa> to centralize and automate their translation workflows. Translators worked directly in the platform, which simplified communication and allowed Bryq to track progress effortlessly in real time.\u003C\u002Fp>\n\u003Cp>Built-in QA and context checks like \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fscreenshots\u002F\" target=\"_blank\" rel=\"noopener\">Screenshots\u003C\u002Fa> ensured that the translated content, including assesment forms, was accurate and consistent, with faster update approval and deployment. This enabled Bryq to manage multiple languages efficiently and scale their localization with ease.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Scalable localization workflows.\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"9a8b8c90-eb91-40ad-8111-777716fcd7fc\">Faster translation turnaround times.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"4d0dfae1-8bf3-464f-8db4-3feefde18562\">Effortless content management.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp data-guid=\"5cb2f614-e463-415d-b19a-e61aedb3e6ff\">Clear progress tracking.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>With Localazy, Bryq centralized its translation system and accelerated language expansion to 20 locales, including Brazilian Portuguese, Arabic, Chinese, and Swahili. Candidate assessments are now available in native and business languages, ensuring fairer evaluations, higher assesment completion rates, more candidate diversity, and enhanced recruitment efficiency.\u003C\u002Fp>","\u003Cp>Bryq is a Cypriot talent intelligence platform. Their assessment experience and data-based instant screening features enable HR teams to hire the right people faster, make recruitment processes less costly, and unlock employee potential.\u003C\u002Fp>",{"id":347,"status":4,"name":3311,"slug":3312,"date_created":3313,"meta_title":8,"meta_description":8,"logo":3314,"featured_image":3316,"internal_tag":8,"banner":3318,"cta":3320,"testimonials":3325,"brand":3331,"client_industry":3337,"features":3340,"integrations":3344,"blog_articles":3351,"roles":3352,"industries":3353,"translations":3354,"case_study_id":347,"title":3356,"challenge_title":3357,"solution_title":3358,"benefits_title":3359,"benefits_btn_label":2453,"result_title":3360,"challenge_description":3361,"solution_description":3362,"benefits_description":3363,"result_description":3364,"description":3365,"benefits_btn_link":2357},"CrewPlanner","crewplanner","2025-09-17T07:15:59.000Z",{"id":3315},"a9c8dc31-1d52-4d5d-95b4-2cf7a738dca8",{"id":3317},"6fe67a46-682a-401f-89e3-769ef0fdc0a2",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3319},{"id":2535},{"id":158,"status":4,"created_on":2232,"modified_on":3321,"icon":2353,"header":3322,"description":3323,"button_label":3324,"link":2761},"2023-01-19T11:50:20.000Z","Enjoy localization on autopilot! 🚀","Grab the Autopilot plan and let Localazy translate your projects while you sleep. Automatically.","Take off",{"id":319,"status":568,"sort":8,"title":3311,"content":3326,"user_name":3327,"user_role":3328,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3329},"“Translating CrewPlanner with Localazy has saved us countless hours and improved engagement with our international clients.”","Simeon Koets","Founder of CrewPlanner",{"id":3330},"a44009a2-a0ea-40ee-8426-1711fac89895",{"id":3332,"status":568,"featured":227,"name":3311,"link":3333,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3334,"industries":3336},90,"https:\u002F\u002Fcrewplanner.com\u002Fbe",{"id":3335},"77fff3c2-97fa-4864-b179-216ba07833dc",[],[3338,3339],{"id":154,"languages_code":925,"name":3274},{"id":7,"languages_code":925,"name":2712},[3341,3342,3343],{"id":3278,"created_on":3279,"is_released":229,"is_beta":227,"is_popular":227,"name":3280,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},[3345,3347,3349],{"id":29,"status":4,"name":715,"slug":714,"description":1316,"docs_link":908,"meta_title":8,"meta_description":8,"icon":3346},{"id":717},{"id":1777,"status":4,"name":2571,"slug":2572,"description":2573,"docs_link":2574,"meta_title":8,"meta_description":8,"icon":3348},{"id":2576},{"id":1721,"status":4,"name":2578,"slug":2579,"description":2580,"docs_link":2581,"meta_title":8,"meta_description":8,"icon":3350},{"id":2583},[],[],[],[3355],{"id":324,"case_study_id":347,"languages_code":925,"title":3356,"slug":8,"challenge_title":3357,"solution_title":3358,"benefits_title":3359,"benefits_btn_label":2453,"result_title":3360,"challenge_description":3361,"solution_description":3362,"benefits_description":3363,"result_description":3364,"description":3365,"benefits_btn_link":2357},"CrewPlanner swapped clunky Excel for a smart translation management tool","Running version control without spreadsheets","A well-oiled TMS machine","Lightning-fast, centralized workflows","Faster updates for global teams","\u003Cp>CrewPlanner struggled to keep their source key changes in sync with multiple target languages. Maintaining the platform updated without delays had gotten increasingly difficult &mdash; as the number of Excel files grew, managing version control became more challening. This led to inefficiencies in the workflow that burdened both the team and users.\u003C\u002Fp>","\u003Cp>The company simplified localization by switching to Localazy. They replaced their manual Excel-based chaos with an efficient translation management platform where source content was directly uploaded and synced across languages. After centralizing their translation workflows, CrewPlanner was able to easily access their source files in English and feed new content into each release, improving version control.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Quicker translation updates for all languages.\u003C\u002Fli>\n\u003Cli>Clearer version control for language management.\u003C\u002Fli>\n\u003Cli>Flexible integration into existing workflows.\u003C\u002Fli>\n\u003Cli>Simplified user experience for the team.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>CrewPlanner successfully managed translations in four languages &mdash; Dutch, French, German, and English. They observed immediate improvements, with the first iterations completed within a week. This transition significantly reduced process complexity, leading to smoother updates and better language management.\u003C\u002Fp>","\u003Cp>CrewPlanner is a Belgian tech scale-up that streamlines HR for companies with flexible workforces in sectors like hospitality or retail. Their software maximizes productivity, automates admin work, and enhances team communication.\u003C\u002Fp>",{"id":314,"status":4,"name":3367,"slug":3368,"date_created":3369,"meta_title":8,"meta_description":8,"logo":3370,"featured_image":3372,"internal_tag":8,"banner":3374,"cta":3376,"testimonials":3377,"brand":3383,"client_industry":3402,"features":3403,"integrations":3409,"blog_articles":3414,"roles":3415,"industries":3416,"translations":3417,"case_study_id":314,"title":3419,"challenge_title":3420,"solution_title":3421,"benefits_title":3422,"benefits_btn_label":2453,"result_title":3423,"challenge_description":3424,"solution_description":3425,"benefits_description":3426,"result_description":3427,"description":3428,"benefits_btn_link":2357},"Veedoo","veedoo","2025-09-17T10:28:33.000Z",{"id":3371},"b1e8c3b6-0392-48c1-905f-ac8becdb33a2",{"id":3373},"af1307ea-412f-44af-b454-bc6c5e74fe44",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3375},{"id":2535},{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":297,"status":568,"sort":8,"title":3367,"content":3378,"user_name":3379,"user_role":3380,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3381},"\"We love using Localazy, as their pricing is extremely reasonable for the services they offer.\"","Ian Bearder","Founder & CEO at Veedoo",{"id":3382},"a89574aa-4a85-4a1d-b532-87bd78e82e19",{"id":432,"status":4,"featured":227,"name":3367,"link":3384,"country":3385,"region":2548,"email":3386,"competencies":3387,"facebook":3391,"twitter":8,"linkedin":3392,"github":8,"image":3393,"industries":3395},"https:\u002F\u002Fwww.veedoo.io","United Kingdom","hello@veeedoo.io",[3388,3389,3390],"Digital Agency","Websites","Software Development","https:\u002F\u002Fwww.facebook.com\u002Fveedoo.io\u002F","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fveedoo\u002F?originalSubdomain=uk",{"id":3394},"d70ecbca-ec7f-417c-a616-8abaf1361c92",[3396,3399],{"id":174,"status":4,"sort":8,"translations":3397,"name":3390},[3398],{"id":166,"languages_code":925,"name":3390},{"id":62,"status":4,"sort":8,"translations":3400,"name":2374},[3401],{"id":22,"languages_code":925,"name":2374},[],[3404,3405,3406,3407,3408],{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":3283,"created_on":3284,"is_released":229,"is_beta":227,"is_popular":229,"name":3285,"alternative_name":3285,"short_description":3286,"alternative_description":3287,"value":1974,"sort":8,"status":4,"subtitle":3288,"longer_description":3287,"docs_link":3289},{"id":50,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":450,"alternative_name":2862,"short_description":2863,"alternative_description":2864,"value":1974,"sort":50,"status":4,"subtitle":2865,"longer_description":2866,"docs_link":2867},{"id":3222,"created_on":3223,"is_released":229,"is_beta":227,"is_popular":227,"name":3224,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":99,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2633,"alternative_name":8,"short_description":2634,"alternative_description":8,"value":8,"sort":99,"status":4,"subtitle":2635,"longer_description":8,"docs_link":8},[3410,3412],{"id":57,"status":4,"name":660,"slug":659,"description":2638,"docs_link":2639,"meta_title":8,"meta_description":8,"icon":3411},{"id":662},{"id":62,"status":4,"name":667,"slug":666,"description":2642,"docs_link":2643,"meta_title":8,"meta_description":8,"icon":3413},{"id":669},[],[],[],[3418],{"id":319,"case_study_id":314,"languages_code":925,"title":3419,"slug":8,"challenge_title":3420,"solution_title":3421,"benefits_title":3422,"benefits_btn_label":2453,"result_title":3423,"challenge_description":3424,"solution_description":3425,"benefits_description":3426,"result_description":3427,"description":3428,"benefits_btn_link":2357},"Veedoo partnered with Localazy to help Everyrun in their global sprint","Multilingual updates for runner communities","Efficient language version control","Less busywork, more focus on growth","Number #1 at the global finish line","\u003Cp>The Estonian fitness platform&nbsp;\u003Ca href=\"https:\u002F\u002Fwww.everyrun.world\" target=\"_blank\" rel=\"noopener\">Everyrun\u003C\u002Fa> wanted to deliver a clean UX to users in their native languages. Specifically, they needed to keep source language changes in sync for smoother updates. After trying ad-hoc solutions and CMS that caused errors, inconsistencies, and collaboration hurdles, Veedoo was looking for a localization solution to help them.\u003C\u002Fp>","\u003Cp>Veedoo switched to Localazy to create a flexible localization workflow for Everyrun and other clients' projects. Linguists were onboarded to collaborate on specific languages while the app's team worked with versions and deployed the translations via API and CLI. This ensured fast, consistent updates across projects. They also leveraged Localazy&rsquo;s professional translation services to facilitate the process.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Enhanced scalability for adding new languages.\u003C\u002Fli>\n\u003Cli>Consistent multilingual content across all platforms.\u003C\u002Fli>\n\u003Cli>Efficient collaboration between linguists, clients, and devs.\u003C\u002Fli>\n\u003Cli>Access to professional translation services when needed.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Everyrun now manages 10 languages effortlessly with Localazy. Fast implementation, supported by starter kits and transparent pricing, delivered near-immediate results. Choosing Localazy enabled Veedoo to streamline the workflow and enable smooth collaboration among linguists, developers and clients, which accelerated the production of consistent, high-quality translations.\u003C\u002Fp>","\u003Cp>Veedoo is a development agency that creates multilingual digital projects for media, organizations, and governments. Everyrun is a project connecting runners and organizers through social events, promoting health and participation worldwide.\u003C\u002Fp>",{"id":324,"status":4,"name":3430,"slug":3431,"date_created":3432,"meta_title":8,"meta_description":8,"logo":3433,"featured_image":3435,"internal_tag":8,"banner":3437,"cta":3439,"testimonials":3440,"brand":3448,"client_industry":3454,"features":3457,"integrations":3461,"blog_articles":3462,"roles":3463,"industries":3464,"translations":3465,"case_study_id":324,"title":3467,"challenge_title":3468,"solution_title":3469,"benefits_title":3470,"benefits_btn_label":2453,"result_title":3471,"challenge_description":3472,"solution_description":3473,"benefits_description":3474,"result_description":3475,"description":3476,"benefits_btn_link":2357},"Veertly","veertly","2025-09-25T15:24:46.000Z",{"id":3434},"2b7ac1ef-0c89-445e-9bff-34b136367d27",{"id":3436},"2a686700-3818-4b30-8ef2-d9f63a81e259",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3438},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":333,"status":568,"sort":8,"title":3430,"content":3441,"user_name":3442,"user_role":3443,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":3444,"user_avatar":3446},"\"Localazy makes managing multiple translations effortless, even with external contributors. We also don't have to burden the dev team.\"","João Aguiam","Co-founder & CTO at Veertly",{"id":3445},"d80a2f99-bc2c-4c40-aa49-249b51a07c86",{"id":3447},"3784bfbe-e1d5-4a98-b96f-3dbafee6df73",{"id":3449,"status":568,"featured":227,"name":3430,"link":3450,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3451,"industries":3453},91,"https:\u002F\u002Fwww.veertly.com",{"id":3452},"0e2f9116-7c14-4eb9-87ed-0849d9600537",[],[3455],{"id":170,"languages_code":925,"name":3456},"IT & Services",[3458,3459,3460],{"id":3278,"created_on":3279,"is_released":229,"is_beta":227,"is_popular":227,"name":3280,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},{"id":3222,"created_on":3223,"is_released":229,"is_beta":227,"is_popular":227,"name":3224,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},[],[],[],[],[3466],{"id":297,"case_study_id":324,"languages_code":925,"title":3467,"slug":8,"challenge_title":3468,"solution_title":3469,"benefits_title":3470,"benefits_btn_label":2453,"result_title":3471,"challenge_description":3472,"solution_description":3473,"benefits_description":3474,"result_description":3475,"description":3476,"benefits_btn_link":2357},"Veertly expanded internationally with event-hosting in six languages","Making interface localization seamless","Simpler workflow, continuous updates","Instant international connection","Easy setup, global reach","\u003Cp>Veertly wanted users to enjoy a personalized app experience in their native languages. Manually editing JSON files and relying on colleagues for translations made synchronization slow, difficult, and error-prone for the development team. They needed a faster, smoother way to deliver a fully localized interface for their international events.\u003C\u002Fp>","\u003Cp>By integrating via Localazy&rsquo;s CLI, Veertly replaced manual JSON file management with an automated process. Developers uploaded English strings and synced updates with a few CLI commands while translations were managed through Localazy&rsquo;s interface. This reduced manual work, keeping all languages in sync and enabling updates without slowing development.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Easy integration with the pre-existing workflow.\u003C\u002Fli>\n\u003Cli>Delegation of language-specific tasks.\u003C\u002Fli>\n\u003Cli>Simpler translation management.\u003C\u002Fli>\n\u003Cli>MT available to speed up the process.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Veertly now supports six languages: English, German, French, Portuguese, Italian, and Dutch. The setup process was straightforward and results came fast, improving attendees' experiences. The new workflow not only saved time but also ensured error-free localization, encouraging users to contribute to translations.\u003C\u002Fp>","\u003Cp>Veertly is a customizable virtual event platform that enables organizations to create engaging online events. Since its creation in 2020, the software has been used to host over 7,500 events worldwide for companies from diverse industries.\u003C\u002Fp>",{"id":319,"status":4,"name":3478,"slug":3479,"date_created":3480,"meta_title":8,"meta_description":8,"logo":3481,"featured_image":3483,"internal_tag":8,"banner":3485,"cta":3487,"testimonials":3488,"brand":3496,"client_industry":3500,"features":3504,"integrations":3508,"blog_articles":3513,"roles":3514,"industries":3515,"translations":3516,"case_study_id":319,"title":3518,"challenge_title":3519,"solution_title":3520,"benefits_title":3521,"benefits_btn_label":2453,"result_title":3522,"challenge_description":3523,"solution_description":3524,"benefits_description":3525,"result_description":3526,"description":3527,"benefits_btn_link":2357},"i3-Technologies","i3-technologies","2025-09-26T10:25:23.000Z",{"id":3482},"5e487b5b-9d13-4a90-943e-cb6d73cd5644",{"id":3484},"4e88bed4-239a-475d-963f-49fad5fc0776",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3486},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":338,"status":568,"sort":8,"title":3478,"content":3489,"user_name":3490,"user_role":3491,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":3492,"user_avatar":3494},"\"We appreciate how easy it is for external translators to work without impacting our dev team. The API is clear, and integrated AI translations are a handy bonus.\"","Peter Waegemans","UX architect and designer",{"id":3493},"f8717c2b-cb79-4b3a-9029-97b73e1427b1",{"id":3495},"cc42b729-e156-43f9-83e9-4808554a0e99",{"id":1721,"status":568,"featured":227,"name":3478,"link":3497,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3498,"industries":3499},"https:\u002F\u002Fi3-connect.com",{"id":3493},[],[3501,3502],{"id":170,"languages_code":925,"name":3456},{"id":174,"languages_code":925,"name":3503},"Education",[3505,3506,3507],{"id":3283,"created_on":3284,"is_released":229,"is_beta":227,"is_popular":229,"name":3285,"alternative_name":3285,"short_description":3286,"alternative_description":3287,"value":1974,"sort":8,"status":4,"subtitle":3288,"longer_description":3287,"docs_link":3289},{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},[3509,3511],{"id":57,"status":4,"name":660,"slug":659,"description":2638,"docs_link":2639,"meta_title":8,"meta_description":8,"icon":3510},{"id":662},{"id":62,"status":4,"name":667,"slug":666,"description":2642,"docs_link":2643,"meta_title":8,"meta_description":8,"icon":3512},{"id":669},[],[],[],[3517],{"id":333,"case_study_id":319,"languages_code":925,"title":3518,"slug":8,"challenge_title":3519,"solution_title":3520,"benefits_title":3521,"benefits_btn_label":2453,"result_title":3522,"challenge_description":3523,"solution_description":3524,"benefits_description":3525,"result_description":3526,"description":3527,"benefits_btn_link":2357},"i3-Technologies delivered top-class digital display solutions in 11 languages","Scaling without burdening developers","No-fuss, automation-powered work","Keeping translators and devs happy","A strong expansion portfolio — and growing","\u003Cp>As an international company, i3-Technologies wanted to make their solutions accessible in multiple languages, but manual localization relied heavily on developers. With more products and languages to support, updates were slow and inefficient since external translators couldn&rsquo;t contribute directly. They needed a faster, smoother workflow that allowed linguists to work independently.\u003C\u002Fp>","\u003Cp>By integrating Localazy CLI into their deployment pipeline, i3-Technologies made localization approachable for the whole team. Translators easily reviewed AI-generated drafts on the UI while developers saved time with batch uploads. Support was provided quickly, and results came within 24 hours. The clear API integration barely disrupted the technical staff.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Clear API for technical integration.\u003C\u002Fli>\n\u003Cli>Easy to-use interface for translators.\u003C\u002Fli>\n\u003Cli>AI-powered translations for quick drafts.\u003C\u002Fli>\n\u003Cli>Scalable solution for growing needs.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>The first iteration was completed within a day thanks to Localazy&rsquo;s efficient tools and smooth integration. The company now offers their products in 11 languages, including English, French, German, Spanish, Dutch, Catalan, Danish, Norwegian (Bokmal), Hungarian, Lithuanian, and Italian. They plan to add more options as they expand into new European markets.&nbsp;\u003C\u002Fp>","\u003Cp>i3-Technologies is a Belgian interactive solutions company that offers digital displays for business and education. Founded in 1968, they have grown into a display powerhouse operating in 90 countries worldwide.\u003C\u002Fp>",{"id":297,"status":4,"name":3529,"slug":3530,"date_created":3531,"meta_title":8,"meta_description":8,"logo":3532,"featured_image":3534,"internal_tag":8,"banner":3536,"cta":3541,"testimonials":3542,"brand":3548,"client_industry":3560,"features":3561,"integrations":3565,"blog_articles":3568,"roles":3569,"industries":3570,"translations":3571,"case_study_id":297,"title":3573,"challenge_title":3574,"solution_title":3575,"benefits_title":3576,"benefits_btn_label":2760,"result_title":3577,"challenge_description":3578,"solution_description":3579,"benefits_description":3580,"result_description":3581,"description":3582,"benefits_btn_link":2357},"iFightDepression","ifightdepression","2025-10-03T07:32:24.000Z",{"id":3533},"11f5a459-1fd1-49d6-8427-822973fb4511",{"id":3535},"4377b4a6-a656-4571-97b6-ac546c43fcfa",{"id":107,"sort":8,"created_on":3537,"name":731,"cta_link":3538,"banner_image":3539},"2022-08-09T19:42:15.000Z","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fstrapi-localization-plugin",{"id":3540},"d1f1c78a-9589-4318-9863-772795f1c834",{"id":285,"status":4,"created_on":2351,"modified_on":2352,"icon":2353,"header":2354,"description":2355,"button_label":2356,"link":2357},{"id":290,"status":568,"sort":8,"title":3529,"content":3543,"user_name":3544,"user_role":3545,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3546},"\"Localazy has enabled us to build an attractive website that is easy to navigate and use in multiple languages. We are grateful for the support and would recommend Localazy to others.\"","Katharina Schnitzspahn","Project Manager at EAAD",{"id":3547},"ebc12178-c7e2-4f08-8a98-c0eacfdf8901",{"id":3549,"status":568,"featured":227,"name":3529,"link":3550,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3551,"industries":3552},92,"https:\u002F\u002Fguides.ifightdepression.com\u002F",{"id":3452},[3553,3556],{"id":43,"status":4,"sort":8,"translations":3554,"name":2854},[3555],{"id":72,"languages_code":925,"name":2854},{"id":314,"status":568,"sort":8,"translations":3557,"name":3559},[3558],{"id":398,"languages_code":925,"name":3559},"Health",[],[3562,3563,3564],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":624,"created_on":3215,"is_released":229,"is_beta":227,"is_popular":229,"name":552,"alternative_name":552,"short_description":3216,"alternative_description":3216,"value":1974,"sort":8,"status":4,"subtitle":3217,"longer_description":3216,"docs_link":3218},{"id":469,"created_on":2790,"is_released":229,"is_beta":227,"is_popular":227,"name":569,"alternative_name":569,"short_description":2791,"alternative_description":2791,"value":1974,"sort":8,"status":4,"subtitle":2792,"longer_description":2793,"docs_link":2794},[3566],{"id":728,"status":4,"name":731,"slug":730,"description":1663,"docs_link":1664,"meta_title":8,"meta_description":8,"icon":3567},{"id":733},[],[],[],[3572],{"id":338,"case_study_id":297,"languages_code":925,"title":3573,"slug":8,"challenge_title":3574,"solution_title":3575,"benefits_title":3576,"benefits_btn_label":2760,"result_title":3577,"challenge_description":3578,"solution_description":3579,"benefits_description":3580,"result_description":3581,"description":3582,"benefits_btn_link":2357},"iFightDepression offered mental health support and guidance across borders","Supporting patients in their native languages","Automated setup integrated with Strapi","Quick, automated & budget-friendly","Access to a lifeline in 12 languages","\u003Cp>EAAD created the iFightDepression guide website to help users find local mental health professionals and start using the program. Originally developed by their Polish partner, EAAD needed the site to be available in users&rsquo; native languages to maximize its impact, while keeping updates across all locales synced at all times.\u003C\u002Fp>","\u003Cp>The iFightDepression team first integrated the&nbsp;\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fstrapi-localization-plugin\" target=\"_blank\" rel=\"noopener\">Localazy Strapi Plugin\u003C\u002Fa> to manage their content more efficiently. Then they onboarded their translation partners and volunteers into the platform and got to work. The team was able to build a workflow that pulled updates continuously to incrementally serve users in more languages.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Effortless syncs and updates through the Strapi Plugin.\u003C\u002Fli>\n\u003Cli>Easy-to-set-up workflows.\u003C\u002Fli>\n\u003Cli>User-friendly interface for collaborators.\u003C\u002Fli>\n\u003Cli>Cost savings with simple onboarding and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fwhy-localazy-doesnt-charge-you-for-your-translation-seats\u002F\" target=\"_blank\" rel=\"noopener\">unlimited seats\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>With Localazy, iFightDepression localized its guide website into 10+ different European languages, including Estonian, Spanish, Greek, German, Italian, and Ukrainian. Users across Europe can now get the help they need in their own language and find a trained health professional who can help them access the toolkit.\u003C\u002Fp>","\u003Cp>The EAAD (European Alliance Against Depression) supports mental health in 20+ countries worldwide. Their iFightDepression project provides a self-management tool for mild depression symptoms, guided by trained professionals.\u003C\u002Fp>",{"id":333,"status":4,"name":3584,"slug":3585,"date_created":3586,"meta_title":8,"meta_description":8,"logo":3587,"featured_image":3589,"internal_tag":8,"banner":3591,"cta":3593,"testimonials":3594,"brand":3600,"client_industry":3614,"features":3616,"integrations":3621,"blog_articles":3622,"roles":3623,"industries":3624,"translations":3625,"case_study_id":333,"title":3627,"challenge_title":3628,"solution_title":3629,"benefits_title":3630,"benefits_btn_label":2453,"result_title":3631,"challenge_description":3632,"solution_description":3633,"benefits_description":3634,"result_description":3635,"description":3636,"benefits_btn_link":2357},"Pentland Firth","pentland-firth","2025-10-03T12:05:03.000Z",{"id":3588},"50841dc3-b6ab-44cb-83ab-b7b0aa65337e",{"id":3590},"3c89b923-fa26-47d9-a2d1-7d30bd5fc14e",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3592},{"id":2535},{"id":22,"status":4,"created_on":2232,"modified_on":2233,"icon":2121,"header":2234,"description":2235,"button_label":2236,"link":2237},{"id":637,"status":568,"sort":8,"title":3584,"content":3595,"user_name":3596,"user_role":3597,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3598},"\"Localazy has enabled our team to contribute and offer even more customers their preferred languages for full enjoyment of their shopping experience.\"","Kelly Murphy","Rollout Manager",{"id":3599},"93ff76f3-3076-42a6-8c4c-f2c279f7aed5",{"id":849,"status":568,"featured":227,"name":3584,"link":3601,"country":2547,"region":3602,"email":3603,"competencies":3604,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3605,"industries":3607},"https:\u002F\u002Fpentlandfirth.com\u002F","München","erika.dobesova@pentlandfirth.com",[3388,3389,3390],{"id":3606},"ec0bc31f-1d78-4ab3-92c5-5c7f28e17041",[3608,3611],{"id":324,"status":568,"sort":8,"translations":3609,"name":369},[3610],{"id":347,"languages_code":925,"name":369},{"id":174,"status":4,"sort":8,"translations":3612,"name":3390},[3613],{"id":166,"languages_code":925,"name":3390},[3615],{"id":347,"languages_code":925,"name":369},[3617,3618,3619,3620],{"id":3278,"created_on":3279,"is_released":229,"is_beta":227,"is_popular":227,"name":3280,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":490,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":633,"alternative_name":633,"short_description":8,"alternative_description":2932,"value":1974,"sort":423,"status":4,"subtitle":8,"longer_description":2932,"docs_link":2933},{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},{"id":77,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2387,"alternative_name":8,"short_description":2388,"alternative_description":8,"value":8,"sort":77,"status":4,"subtitle":2389,"longer_description":2390,"docs_link":8},[],[],[],[],[3626],{"id":290,"case_study_id":333,"languages_code":925,"title":3627,"slug":8,"challenge_title":3628,"solution_title":3629,"benefits_title":3630,"benefits_btn_label":2453,"result_title":3631,"challenge_description":3632,"solution_description":3633,"benefits_description":3634,"result_description":3635,"description":3636,"benefits_btn_link":2357},"Pentland Firth spoke to shoppers in 12 languages and simplified teamwork","Laying the foundation for global expansion","Localazy CLI & Webhook integration","Translations that click into place","Faster updates for a growing customer base","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwhiz-cart.de\u002Fen\u002F\" target=\"_blank\" rel=\"noopener\">Whiz-Cart\u003C\u002Fa> was initially supported only in English, but the company wanted customers to enjoy the cart in their preferred language and prepare for cross-country launches. Without a unified localization system, the team members had to merge code manually in Visual Studio, compare English with other languages, and update translations by hand, which was time-consuming and prone to conflicts and inefficiencies.\u003C\u002Fp>","\u003Cp>Pentland Firth built and perfected their translation workflow using Localazy. Developers now push the latest code to the platform, where translators are notified to start immediately. Once translations are finished, the updated content is reintegrated and tested before release, ensuring accuracy across all interfaces and related projects. For new languages, the team relies on Localazy&rsquo;s \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fterm\u002Fprofessional-translation-services\" target=\"_blank\" rel=\"noopener\">professional services\u003C\u002Fa>. \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">CLI\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fwebhooks\" target=\"_blank\" rel=\"noopener\">Webhooks\u003C\u002Fa> keep everything in sync, making multilingual updates fast and hassle-free.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Fewer manual errors and improved translation accuracy.\u003C\u002Fli>\n\u003Cli>Simplified onboarding for new translators.\u003C\u002Fli>\n\u003Cli>Easy integration with existing development processes.\u003C\u002Fli>\n\u003Cli>Streamlined multilingual updates.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Using Localazy, Pentland Firth successfully scaled their Whiz-Cart platform into 12 languages, starting with German and following with Scandinavian languages, Polish, and Dutch. The Whiz-Cart is currently available in countries like Thailand, the USA, and Romania, with product information being updated quickly for a better customer experience and new languages being added continuously depending on client needs.\u003C\u002Fp>","\u003Cp>The Whiz-Cart, a smart shopping cart by German software company Pentland Firth, lets customers check out quickly without repacking or waiting, making the shopping experience faster and more user-friendly in 200+ stores across four countries.\u003C\u002Fp>",{"id":338,"status":4,"name":3638,"slug":3639,"date_created":3640,"meta_title":8,"meta_description":8,"logo":3641,"featured_image":3643,"internal_tag":8,"banner":3645,"cta":3647,"testimonials":3648,"brand":3654,"client_industry":3659,"features":3661,"integrations":3665,"blog_articles":3668,"roles":3669,"industries":3670,"translations":3671,"case_study_id":338,"title":3673,"challenge_title":3674,"solution_title":3675,"benefits_title":3676,"benefits_btn_label":2453,"result_title":3677,"challenge_description":3678,"solution_description":3679,"benefits_description":3680,"result_description":3681,"description":3682,"benefits_btn_link":2357},"Smoobu","smoobu","2025-10-06T06:26:43.000Z",{"id":3642},"f7674250-9987-42fc-a5c3-a05ea5bd1329",{"id":3644},"31dc1ec4-9eac-45bf-9a1e-3c80c791f339",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3646},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":602,"status":568,"sort":8,"title":3638,"content":3649,"user_name":3650,"user_role":3651,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3652},"\"Translations through Localazy give us a real advantage over browser plugins, helping eliminate friction and improving the overall customer experience.\"","Thibaud Visse","Global Content Mkt Lead",{"id":3653},"599102fc-0b91-4c31-b1c0-50a9f1e8b7d3",{"id":1038,"status":4,"featured":227,"name":3638,"link":3655,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3656,"industries":3658},"https:\u002F\u002Fwww.smoobu.com\u002Fen\u002F",{"id":3657},"3af86fa6-2198-4a4a-80e6-18760261a8dc",[],[3660],{"id":29,"languages_code":925,"name":3053},[3662,3663,3664],{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":99,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2633,"alternative_name":8,"short_description":2634,"alternative_description":8,"value":8,"sort":99,"status":4,"subtitle":2635,"longer_description":8,"docs_link":8},[3666],{"id":518,"status":4,"name":738,"slug":737,"description":8,"docs_link":1761,"meta_title":8,"meta_description":8,"icon":3667},{"id":740},[],[],[],[3672],{"id":637,"case_study_id":338,"languages_code":925,"title":3673,"slug":8,"challenge_title":3674,"solution_title":3675,"benefits_title":3676,"benefits_btn_label":2453,"result_title":3677,"challenge_description":3678,"solution_description":3679,"benefits_description":3680,"result_description":3681,"description":3682,"benefits_btn_link":2357},"Smoobu dropped Google Sheets to make localization faster and easier","More efficient translation management","Scalable and collaboration-friendly tool","No more outdated UI copies","Traveling light to global reach","\u003Cp>Before Localazy, Smoobu&rsquo;s localization process was slow and manual. UI text was managed in Google Sheets with little context, and designers had to copy content from Figma by hand. Sync issues and missing approvals often delayed releases and hurt consistency. The process was error-prone, time-consuming, and hard to scale for new languages.\u003C\u002Fp>","\u003Cp>Smoobu replaced its manual workflows with Localazy, integrating the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Ffigma-localization-plugin\" target=\"_blank\" rel=\"noopener\">Figma plugin\u003C\u002Fa> so designers could send strings directly to the platform&mdash;eliminating copy-paste and sync issues. Engineers pulled translations from Localazy, while product managers coordinated multilingual tasks with ease.\u003C\u002Fp>\n\u003Cp>Localization became faster, more consistent, and easier to scale. With Localazy&rsquo;s \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcontinuous-localization-team\" target=\"_blank\" rel=\"noopener\">Continuous Localization Services\u003C\u002Fa>, Smoobu quickly launched Polish and improved overall translation quality through centralized management.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Direct integration between Figma and development.\u003C\u002Fli>\n\u003Cli>Clear workflows across teams and roles.\u003C\u002Fli>\n\u003Cli>Faster language launches with help from CLT.\u003C\u002Fli>\n\u003Cli>Centralized component management for consistency.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>With Localazy, Smoobu has sped up and streamlined localization across 10 languages, including Dutch, French, German, Greek, Italian, Polish, Portuguese, Russian, and Spanish. The team has reduced time-to-market for new languages and improved translation quality and consistency. As Smoobu expands into South America, the Baltics, Eastern Europe, and Scandinavia, multilingual support continues to fuel their growth.\u003C\u002Fp>","\u003Cp>Smoobu is a vacation rental management platform helping property owners manage listings across channels like Airbnb and Booking.com. Founded in 2014, it now supports thousands of hosts worldwide with a team of over 90 people.\u003C\u002Fp>",{"id":461,"status":4,"name":3684,"slug":3685,"date_created":3686,"meta_title":8,"meta_description":8,"logo":3687,"featured_image":3689,"internal_tag":8,"banner":3691,"cta":3693,"testimonials":3694,"brand":3700,"client_industry":3711,"features":3712,"integrations":3718,"blog_articles":3729,"roles":3730,"industries":3731,"translations":3732,"case_study_id":461,"title":3734,"challenge_title":3735,"solution_title":3736,"benefits_title":3737,"benefits_btn_label":2453,"result_title":3738,"challenge_description":3739,"solution_description":3740,"benefits_description":3741,"result_description":3742,"description":3743,"benefits_btn_link":2357},"Digismoothie","digismoothie","2025-10-21T21:32:45.000Z",{"id":3688},"acc60787-1d65-4b69-8ccf-69d52628c9c0",{"id":3690},"c1ca7ae4-387d-452d-bd13-c59f1b578f12",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3692},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":285,"status":568,"sort":8,"title":3684,"content":3695,"user_name":3696,"user_role":3697,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3698},"\"We appreciate the freedom Localazy gives us, as we can use MT and professional translation services, as well as our own translators.\"","Martin Zima","Senior Product Manager",{"id":3699},"9764d243-0af7-4835-abab-3f09fc8f47c6",{"id":3701,"status":568,"featured":227,"name":3684,"link":3702,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3703,"industries":3704},95,"https:\u002F\u002Fwww.digismoothie.com",{"id":3452},[3705,3708],{"id":174,"status":4,"sort":8,"translations":3706,"name":3390},[3707],{"id":166,"languages_code":925,"name":3390},{"id":333,"status":568,"sort":8,"translations":3709,"name":369},[3710],{"id":319,"languages_code":925,"name":369},[],[3713,3714,3715,3716,3717],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":99,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2633,"alternative_name":8,"short_description":2634,"alternative_description":8,"value":8,"sort":99,"status":4,"subtitle":2635,"longer_description":8,"docs_link":8},{"id":3278,"created_on":3279,"is_released":229,"is_beta":227,"is_popular":227,"name":3280,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":3222,"created_on":3223,"is_released":229,"is_beta":227,"is_popular":227,"name":3224,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},{"id":2564,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":229,"name":560,"alternative_name":2565,"short_description":2566,"alternative_description":2566,"value":1974,"sort":959,"status":4,"subtitle":2567,"longer_description":2566,"docs_link":2568},[3719,3723],{"id":751,"status":4,"name":753,"slug":752,"description":3720,"docs_link":3721,"meta_title":8,"meta_description":8,"icon":3722},"Setup fully automated localization for your project once and forget about all the hassle forever. It’s fun with Github Actions!","\u002Fblog\u002Fautomated-localization-github-actions-localazy",{"id":755},{"id":3701,"status":4,"name":3724,"slug":3725,"description":3726,"docs_link":8,"meta_title":8,"meta_description":8,"icon":3727},"Intercom","intercom","Enjoy seamless integration of Intercom & Localazy and translate your help center articles efficiently. Translatable texts from articles, collections, and sections are transformed into translation keys and imported into the Localazy project. After translation, all texts are exported back to Intercom.",{"id":3728},"d45f4459-b7a8-4a10-82a3-45028af57f76",[],[],[],[3733],{"id":490,"case_study_id":461,"languages_code":925,"title":3734,"slug":8,"challenge_title":3735,"solution_title":3736,"benefits_title":3737,"benefits_btn_label":2453,"result_title":3738,"challenge_description":3739,"solution_description":3740,"benefits_description":3741,"result_description":3742,"description":3743,"benefits_btn_link":2357},"Digismoothie found the perfect recipe for translating their Shopify apps","Retaining translation context between updates","Automated translation & human oversight","Multiple channels, consistent quality","Automated localization for 10+ languages","\u003Cp>The Candy Rack team wanted to accelerate market expansion by allowing Shopify merchants to use the app in their preferred language. Before Localazy, they used POEditor, which couldn&rsquo;t handle automated pushes and lacked proper GitHub integration. These limitations slowed down development and added unnecessary workflow overhead, making each update labor-intensive and prone to losing translation context.\u003C\u002Fp>","\u003Cp>Digismoothie set up their localization workflow using Localazy and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fautomated-localization-github-actions-localazy\" target=\"_blank\" rel=\"noopener\">GitHub Actions\u003C\u002Fa>. Translation files now sync automatically, so the team no longer needs to handle them manually. Two product managers oversee the process, combining \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fmachine-translation\" target=\"_blank\" rel=\"noopener\">machine translation\u003C\u002Fa> for quick drafts with Localazy&rsquo;s \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcontinuous-localization-team\" target=\"_blank\" rel=\"noopener\">Continuous Localization Services\u003C\u002Fa> for top-quality results.\u003C\u002Fp>\n\u003Cp>They initially ran into challenges connecting their Intercom, since their&nbsp;\u003Ca href=\"\u002Fuse-cases\u002Fhelp-and-docs-localization\" target=\"_blank\" rel=\"noopener\">Help Center is also localized through Localazy\u003C\u002Fa>. With help from Localazy&rsquo;s support team, everything runs smoothly now, and they manage translations for all channels from one place.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Automated workflows to save time.\u003C\u002Fli>\n\u003Cli>Higher productivity for managers and developers.\u003C\u002Fli>\n\u003Cli>Centralized solution for all translations.\u003C\u002Fli>\n\u003Cli>Flexible mix of MT, professional, and in-house translators.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Digismoothie translates 15 projects with Localazy. Their most popular app, Candy Rack, is now available in 10+ languages, including Danish, Brazilian Portuguese, Dutch, French, Japanese, and Spanish. Automatic sync ensures updates without manual intervention, freeing their teams to focus on app improvement.\u003C\u002Fp>","\u003Cp>Digismoothie is a Czech e-commerce agency behind Candy Rack, a smart Shopify app designed to boost store performance and increase average order value through strategic upsells and cross-sells across the entire purchase journey.\u003C\u002Fp>",{"id":531,"status":4,"name":3745,"slug":3746,"date_created":3747,"meta_title":8,"meta_description":8,"logo":3748,"featured_image":3750,"internal_tag":8,"banner":3752,"cta":3754,"testimonials":3755,"brand":3761,"client_industry":3776,"features":3777,"integrations":3781,"blog_articles":3791,"roles":3792,"industries":3793,"translations":3794,"case_study_id":531,"title":3796,"challenge_title":3797,"solution_title":3798,"benefits_title":3799,"benefits_btn_label":2453,"result_title":3800,"challenge_description":3801,"solution_description":3802,"benefits_description":3803,"result_description":3804,"description":3805,"benefits_btn_link":2357},"Mindnow","mindnow","2025-10-22T07:57:38.000Z",{"id":3749},"41f38dd1-62b4-4cfe-97ed-a42ef7f94259",{"id":3751},"71324b7f-fddc-49fa-8cab-cf1e93d2bf93",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3753},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":274,"status":568,"sort":8,"title":3745,"content":3756,"user_name":3757,"user_role":3758,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3759},"\"Localazy has simplified our localization workflows and helped us deliver a consistent, high-quality user experience across multiple languages.\"","Carina Felsberger","Senior UX Writer",{"id":3760},"0ea28ee0-292f-435a-867d-8e1449c5d00c",{"id":551,"status":4,"featured":227,"name":3745,"link":3762,"country":3763,"region":2548,"email":3764,"competencies":3765,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3766,"industries":3768},"https:\u002F\u002Fmindnow.io\u002Fen","Switzerland","jakob@mindnow.io",[3388,3389,369],{"id":3767},"4413f829-8ecd-4294-82a4-2cd604eb0b9e",[3769,3773],{"id":319,"status":568,"sort":8,"translations":3770,"name":3772},[3771],{"id":314,"languages_code":925,"name":3772},"Finance",{"id":174,"status":4,"sort":8,"translations":3774,"name":3390},[3775],{"id":166,"languages_code":925,"name":3390},[],[3778,3779,3780],{"id":36,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2383,"alternative_name":8,"short_description":2384,"alternative_description":8,"value":8,"sort":36,"status":4,"subtitle":2385,"longer_description":8,"docs_link":8},{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},{"id":3222,"created_on":3223,"is_released":229,"is_beta":227,"is_popular":227,"name":3224,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":4,"subtitle":8,"longer_description":8,"docs_link":8},[3782,3784,3786],{"id":57,"status":4,"name":660,"slug":659,"description":2638,"docs_link":2639,"meta_title":8,"meta_description":8,"icon":3783},{"id":662},{"id":62,"status":4,"name":667,"slug":666,"description":2642,"docs_link":2643,"meta_title":8,"meta_description":8,"icon":3785},{"id":669},{"id":1250,"status":4,"name":3161,"slug":3787,"description":8,"docs_link":3788,"meta_title":8,"meta_description":8,"icon":3789},"rest-api","\u002Fdocs\u002Fintegrations\u002Fquick-start-api",{"id":3790},"a2e591d1-903f-4a0d-a583-f81bb1f3a36e",[],[],[],[3795],{"id":274,"case_study_id":531,"languages_code":925,"title":3796,"slug":8,"challenge_title":3797,"solution_title":3798,"benefits_title":3799,"benefits_btn_label":2453,"result_title":3800,"challenge_description":3801,"solution_description":3802,"benefits_description":3803,"result_description":3804,"description":3805,"benefits_btn_link":2357},"Mindnow delivered a multilingual digital banking experience for Swiss families","Adapting to a diverse user base","l10n efficiency with zero compromise","Smoother operations that drive progress","A product that speaks the family language","\u003Cp>Mindnow wanted to make the Clanq app user-friendly and accessible to its multilingual audience in Switzerland, aligning it with local norms and expectations. To ensure a personalized and intuitive experience for every Swiss family, they needed a lightweight localization tool with a clean UI for their team. They were also looking for features that wouldn't disrupt the parallel workflows going on in product and development.\u003C\u002Fp>","\u003Cp>Mindnow adopted \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa> to keep all translations constantly updated across languages, ensuring consistent messaging throughout the app. The clear roles and simplified content management facilitated collaboration. Built-in automations eliminated manual work and helped minimize errors, letting the teams focus on delivering a high-quality, user-friendly product.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Streamlined translation workflow.\u003C\u002Fli>\n\u003Cli>Easy collaboration across teams.\u003C\u002Fli>\n\u003Cli>Efficient scalability when needs grow.\u003C\u002Fli>\n\u003Cli>Machine translation to speed up the process.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp dir=\"ltr\">Clanq now supports three of the country's official languages: German, Italian, and French, plus English. With Localazy, Mindnow can keep adding new features to the app without huge translation overhauls, meeting Corn&egrave;r Bank&rsquo;s high standards as well as the demands of the Swiss financial landscape.\u003C\u002Fp>","\u003Cp>Mindnow is a Swiss digital agency specializing in agile development and end-to-end digital solutions. They partnered with Corn&egrave;r Bank to design Clanq, a banking app that helps families manage finances and improve their children&rsquo;s financial literacy.\u003C\u002Fp>",{"id":285,"status":4,"name":3807,"slug":3808,"date_created":3809,"meta_title":8,"meta_description":8,"logo":3810,"featured_image":3812,"internal_tag":8,"banner":3814,"cta":3816,"testimonials":3817,"brand":3823,"client_industry":3835,"features":3836,"integrations":3847,"blog_articles":3855,"roles":3856,"industries":3857,"translations":3858,"case_study_id":285,"title":3860,"challenge_title":3861,"solution_title":3862,"benefits_title":3863,"benefits_btn_label":2453,"result_title":3864,"challenge_description":3865,"solution_description":3866,"benefits_description":3867,"result_description":3868,"description":3869,"benefits_btn_link":2357},"TICGal","ticgal","2025-10-31T08:49:11.000Z",{"id":3811},"e1ea82fb-71a8-45ae-b087-ea31195de17e",{"id":3813},"c5b5f03e-71b7-4c06-9626-40644559273b",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3815},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":959,"status":568,"sort":8,"title":3807,"content":3818,"user_name":3819,"user_role":3820,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":8,"user_avatar":3821},"\"Translation with Localazy is so easy. You have connected projects that help share the lingo. It's a great idea that I haven’t seen in other translation tools.\"","Óscar Beiro","Owner & CEO",{"id":3822},"7f780a92-67f0-4b40-bc84-d09adac44839",{"id":2564,"status":568,"featured":227,"name":3824,"link":3825,"country":8,"region":8,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":8,"github":8,"image":3826,"industries":3828},"Ticgal","https:\u002F\u002Ftic.gal\u002F",{"id":3827},"789ed864-31f9-4639-be85-ae0987291345",[3829,3832],{"id":29,"status":4,"sort":8,"translations":3830,"name":2778},[3831],{"id":67,"languages_code":925,"name":2778},{"id":50,"status":4,"sort":8,"translations":3833,"name":2712},[3834],{"id":7,"languages_code":925,"name":2712},[],[3837,3843,3844],{"id":637,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":462,"alternative_name":462,"short_description":3838,"alternative_description":3839,"value":1974,"sort":637,"status":4,"subtitle":3840,"longer_description":3841,"docs_link":3842},"Share translation memories and glossary terms across multiple projects. ","Translate your content only once! Use the Connected Projects feature to share translation memories and glossary terms across multiple projects. ","Connect Your Projects","Translate your content only once! Use the Connected Projects feature to share translation memories and glossary terms across multiple projects. \n","\u002Ffeatures\u002Fconnected-projects",{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},{"id":3845,"created_on":3846,"is_released":229,"is_beta":227,"is_popular":227,"name":499,"alternative_name":8,"short_description":8,"alternative_description":8,"value":8,"sort":8,"status":568,"subtitle":8,"longer_description":8,"docs_link":8},212,"2025-10-31T08:48:43.000Z",[3848],{"id":951,"status":4,"name":3849,"slug":3850,"description":3851,"docs_link":3852,"meta_title":8,"meta_description":8,"icon":3853},"GitLab CI\u002FCD","gitlab-cicd","Fully automated uploads of strings and downloads of translations for your project. Easy with GitLab’s CI\u002FCD!","\u002Fblog\u002Fautomated-localization-gitlab-cicd-localazy",{"id":3854},"5efb451c-fa47-4e53-9daf-fe5de1087811",[],[],[],[3859],{"id":959,"case_study_id":285,"languages_code":925,"title":3860,"slug":8,"challenge_title":3861,"solution_title":3862,"benefits_title":3863,"benefits_btn_label":2453,"result_title":3864,"challenge_description":3865,"solution_description":3866,"benefits_description":3867,"result_description":3868,"description":3869,"benefits_btn_link":2357},"TICGAL propelled their mobile app for GLPI with a scalable translation flow","Scaling languages while staying sane","Localazy as the ultimate source of truth","Organization and clarity over chaos","Multilingual management tamed for good","\u003Cp>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Finterview-making-it-service-management-breeze-with-gapp-ticgal\u002F\" target=\"_blank\" rel=\"noopener\">TICGal&rsquo;s Gapp\u003C\u002Fa> was designed to lift the workload off technicians&rsquo; shoulders and let users open and track mobile help requests. As GLPI&rsquo;s first Spanish partner, the company wanted to expand globally, but managing translations across 20+ projects proved challenging. Traditional tools were costly or lacked user-friendly integrations, making localization a bottleneck that they needed to clear.\u003C\u002Fp>","\u003Cp>TICGal integrated Localazy into their CI pipeline via GitLab, streamlining the localization workflow and language updates. They also used Localazy&rsquo;s crowdsourced translation feature to involve the GLPI community in contributing translations for Gapp. With this collaborative approach, they saved time and ensured the app truly resonated with users in their native languages.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Unlimited languages across all projects.\u003C\u002Fli>\n\u003Cli>Crowdsourced by the community.\u003C\u002Fli>\n\u003Cli>Effortless GitLab workflow integration.\u003C\u002Fli>\n\u003Cli>Connected projects for consistent terminology.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Gapp is now available in 24 languages, with community-driven translations that continue to expand its reach. The app has been adopted by organizations such the Spanish Ministry of Science and Innovation, the University of La Rioja (UNIR) and RCS Angola, which uses Gapp to manage over 100 field technicians.\u003C\u002Fp>","\u003Cp>TICGAL is a Spanish IT management company with 250+ global clients. Their main product, Gapp, lets IT teams manage helpdesk tickets, tasks, and check-ins from their phones while using officially GLPI-supported plugins and integrations.\u003C\u002Fp>",{"id":358,"status":4,"name":3871,"slug":3872,"date_created":3873,"meta_title":8,"meta_description":8,"logo":3874,"featured_image":3876,"internal_tag":8,"banner":3878,"cta":3880,"testimonials":3881,"brand":3889,"client_industry":3900,"features":3901,"integrations":3916,"blog_articles":3917,"roles":3918,"industries":3919,"translations":3920,"case_study_id":358,"title":3922,"challenge_title":3923,"solution_title":3924,"benefits_title":3925,"benefits_btn_label":2453,"result_title":3926,"challenge_description":3927,"solution_description":3928,"benefits_description":3929,"result_description":3930,"description":3931,"benefits_btn_link":2357},"Readmio","readmio","2025-11-03T09:30:20.000Z",{"id":3875},"b79dd56e-b805-4fb7-9703-890f95b39add",{"id":3877},"97356b16-466d-4d1f-ba9b-ea6fc2d3a995",{"id":7,"sort":8,"created_on":2531,"name":2532,"cta_link":2533,"banner_image":3879},{"id":2535},{"id":7,"status":4,"created_on":2232,"modified_on":2757,"icon":2353,"header":2758,"description":2759,"button_label":2760,"link":2761},{"id":2564,"status":568,"sort":8,"title":3871,"content":3882,"user_name":3883,"user_role":3884,"case_study_url":8,"button_text":8,"company_logo_link":8,"company_logo":3885,"user_avatar":3887},"\"As we added more languages, managing translations and coordinating the team became a headache. We chose Localazy for its startup-friendly pricing and features designed precisely for our needs.\"","Jozef Šimko","Co-Founder & CEO",{"id":3886},"6dc81633-65b4-4084-ade2-832221c721f3",{"id":3888},"bb72bdef-d0db-4173-8565-8221b87306c1",{"id":759,"status":568,"featured":227,"name":3871,"link":3890,"country":2483,"region":2548,"email":8,"competencies":8,"facebook":8,"twitter":8,"linkedin":3891,"github":8,"image":3892,"industries":3893},"https:\u002F\u002Fwww.readmio.com\u002F","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Freadmio\u002F",{"id":3886},[3894,3897],{"id":174,"status":4,"sort":8,"translations":3895,"name":3390},[3896],{"id":166,"languages_code":925,"name":3390},{"id":398,"status":4,"sort":8,"translations":3898,"name":3503},[3899],{"id":174,"languages_code":925,"name":3503},[],[3902,3907,3912],{"id":174,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":3903,"alternative_description":3904,"value":1974,"sort":174,"status":4,"subtitle":3905,"longer_description":3906,"docs_link":128},"Use machine translations in free plan.","Every text you add is translated to your target language by Google Translate and available in suggestions to help you with translation.","Free machine translations","Localazy provides you and your contributors with suggestions from the Google Translate machine translation engine. Every text you add is translated to your target language by this MT engine and is available in translation suggestions to boost your translation speed.",{"id":57,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":3908,"alternative_name":3908,"short_description":3909,"alternative_description":3909,"value":1974,"sort":57,"status":4,"subtitle":3910,"longer_description":3911,"docs_link":457},"Review process","Catch translation problems before they go live. Now with backwards machine translation.","Check before publishing","The review screen lets you catch translation problems before they go live. You can edit text directly, compare multiple versions, and see context through tabs showing translation suggestions, similar strings, screenshots, and comments. Use bulk approve to handle multiple translations at once or flag specific ones that need fixes.",{"id":150,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":3913,"alternative_name":8,"short_description":3914,"alternative_description":8,"value":8,"sort":150,"status":4,"subtitle":3915,"longer_description":8,"docs_link":8},"Contributor control","Support heroes and punish bad boys.","Full control over team members",[],[],[],[],[3921],{"id":2564,"case_study_id":358,"languages_code":925,"title":3922,"slug":8,"challenge_title":3923,"solution_title":3924,"benefits_title":3925,"benefits_btn_label":2453,"result_title":3926,"challenge_description":3927,"solution_description":3928,"benefits_description":3929,"result_description":3930,"description":3931,"benefits_btn_link":2357},"Readmio automated their localization workflow to deliver magic to every story","Hardcoded hassle for a booming audience","Automated story workflows","Effortless scaling into new markets","Bedtime tales without borders","\u003Cp>Readmio initially offered stories only in Czech and Slovak. As demand for more languages grew, hardcoded strings, endless update requests to developers, and manual progress tracking became unsustainable. With plans to expand into larger markets like Brazil, the team needed a scalable way to manage translations without delaying story releases.\u003C\u002Fp>","\u003Cp>The team adopted \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcli\" target=\"_blank\" rel=\"noopener\">Localazy CLI\u003C\u002Fa> to automate translation sync with their codebase, replacing manual file updates. By inviting external translators and native speakers into the platform, strings could be edited directly. Localazy&rsquo;s automatic translation suggestions were used for quick drafts, reviewed and refined by translators, and automatically pushed to the app after approval.\u003C\u002Fp>","\u003Cul>\n\u003Cli>Faster releases with automated translation sync.\u003C\u002Fli>\n\u003Cli>Simplified workflow for translators and linguists.\u003C\u002Fli>\n\u003Cli>Scalable expansion with minimal developer effort.\u003C\u002Fli>\n\u003Cli>Reduced costs through efficient localization.\u003C\u002Fli>\n\u003C\u002Ful>","\u003Cp>Using Localazy, Readmio made the localization process easier for both developers and translators, reaching families in 135 countries.&nbsp;\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Freadmio-screen-free-stories-for-children\u002F\" target=\"_blank\" rel=\"noopener\">The expansion \u003C\u002Fa>from 2 to 9 languages went smoothly, and more are already in the pipeline (French, Mandarin and other Asian languages). With translations running seamlessly, the team can now focus on adding new stories instead of fixing localization issues.\u003C\u002Fp>","\u003Cp>Readmio is a Czech digital publisher creating a no-screen app for bedtime stories. With over 2M downloads and more than 6M tales already read, they offer over 3,000 stories children and adults can enjoy together offline in their native languages.\u003C\u002Fp>",[3933,3942,3950,3957,3964,3970,3977,3984,3989,3995,4003,4011,4016,4023,4031,4037,4043,4047,4055,4062,4068,4073],{"id":107,"status":4,"feature_name":462,"type":3934,"title":3935,"content":3936,"button_style":3937,"button_label":3938,"button_link":3939,"background_color":8,"add_file_padding":229,"video_source":8,"file":3940},"image","Connected glossary in a few clicks 🖱️","\u003Cp>Ensure consistent terminology is used in all your projects. Create a centralized glossary and share it among all connected projects.&nbsp;\u003C\u002Fp>","primary","How it works","\u002Fdocs\u002Fgeneral\u002Fconnected-projects",{"id":3941},"6ea54fc8-08c8-46a5-890a-b6025b6fb79d",{"id":50,"status":4,"feature_name":462,"type":3934,"title":3943,"content":3944,"button_style":3945,"button_label":3946,"button_link":2357,"background_color":3947,"add_file_padding":229,"video_source":8,"file":3948},"Cross-project shared translation memory 🧩","\u003Cp>Connect your projects to create a shared translation memory. Up to 5 additional projects can be connected as the source for your translation memory, ensuring consistency and saving time.\u003C\u002Fp>","secondary","Try it now","accent",{"id":3949},"26f033de-e6c4-46fc-8370-5b989df8369a",{"id":576,"status":4,"feature_name":3951,"type":3952,"title":3953,"content":3954,"button_style":8,"button_label":3955,"button_link":2357,"background_color":8,"add_file_padding":8,"video_source":3956,"file":8},"Continuous Localization","video","Watch the video guide 🎥","\u003Cp>Learn how to set up professional translation services at Localazy with Petr from our marketing team.\u003C\u002Fp>","Start now","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=UzzSinAG7ik",{"id":632,"status":4,"feature_name":3958,"type":3952,"title":3959,"content":3960,"button_style":3937,"button_label":3961,"button_link":3962,"background_color":8,"add_file_padding":8,"video_source":3963,"file":8},"Strapi Localization","Watch the video guide 🎞️","\u003Cp>Learn how to fully automate the localization of your Strapi project in this video.\u003C\u002Fp>","Get the plugin","https:\u002F\u002Fmarket.strapi.io\u002Fplugins\u002F@localazy-strapi-plugin","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=BXvQXjVXMV0",{"id":518,"status":4,"feature_name":3965,"type":3934,"title":3966,"content":3967,"button_style":8,"button_label":8,"button_link":8,"background_color":3947,"add_file_padding":229,"video_source":8,"file":3968},"Intercom localization","Connect & translate your help articles","\u003Cp>Start by connecting your Intercom account to a Localazy project - no code required!\u003C\u002Fp>\n\u003Cp>Translate your help articles into multiple languages with the help of AI, machine translation or professional translators using an interface designed for translation management.&nbsp;\u003C\u002Fp>",{"id":3969},"18c00d0b-75fa-4a95-924d-839229d9f9bc",{"id":526,"status":4,"feature_name":3971,"type":3934,"title":3972,"content":3973,"button_style":8,"button_label":3955,"button_link":2357,"background_color":3974,"add_file_padding":229,"video_source":8,"file":3975},"Intercom Localization","Publish new languages faster","\u003Cp>Streamline the translation management of your Intercom knowledgebase today. With Localazy, you can track progress, see changes and publish new translations with ease.\u003C\u002Fp>\n\u003Cp>And whenever you want to add a new language, you can do it with just a few clicks.\u003C\u002Fp>","success",{"id":3976},"9d263a41-6cb2-48c3-b51a-e58124cd9da2",{"id":469,"status":4,"feature_name":3978,"type":3934,"title":3979,"content":3980,"button_style":8,"button_label":3946,"button_link":2357,"background_color":3981,"add_file_padding":229,"video_source":8,"file":3982},"Project Branching","Develop, translate & collaborate without conflicts! 🤝","\u003Cp>Branching enables you to manage and merge multiple project branches, streamlining workflows for multiple teams working concurrently and preventing conflicts.\u003C\u002Fp>\n\u003Cp>Work on translations before the developers are done. Speed up delivery and shorten release cycles while ensuring high-quality translations!\u003C\u002Fp>","warning",{"id":3983},"78820848-dbda-4686-9e8d-9f3e5dc9fd20",{"id":478,"status":4,"feature_name":3985,"type":3952,"title":3986,"content":3987,"button_style":8,"button_label":3946,"button_link":2357,"background_color":8,"add_file_padding":8,"video_source":3988,"file":8},"Webflow localization","🎥 Watch the 3-minute guide","\u003Cp>Learn how to connect your Webflow project with Localazy. Petr will show you how to make your first translations with the help of machine translations and export them into Webflow.&nbsp;\u003C\u002Fp>","https:\u002F\u002Fyoutu.be\u002FeEH0EKC1kmU",{"id":751,"status":4,"feature_name":3285,"type":3934,"title":3990,"content":3991,"button_style":8,"button_label":3992,"button_link":2357,"background_color":3947,"add_file_padding":227,"video_source":8,"file":3993},"Your glossary and style guide finally matter 📖","\u003Cp>Traditional machine translation often falls short because it lacks the most important element: context. Define your terminology once in the \u003Ca href=\"\u002Ffeatures\u002Fglossary\" target=\"_blank\" rel=\"noopener\">glossary\u003C\u002Fa> and set your tone in the \u003Ca href=\"\u002Ffeatures\u002Fstyle-guide\" target=\"_blank\" rel=\"noopener\">style guide\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Localazy AI will follow your instructions during translation to ensure that technical terms remain consistent and the tone aligns with your brand voice.\u003C\u002Fp>","Try it now!",{"id":3994},"7eabc780-8eb2-49dc-ac44-c1241e92a785",{"id":1250,"status":4,"feature_name":3996,"type":3934,"title":3997,"content":3998,"button_style":8,"button_label":3999,"button_link":4000,"background_color":3974,"add_file_padding":227,"video_source":8,"file":4001},"Code & Placeholders ","Protect your code during translation 🛡️","\u003Cp class=\"whitespace-pre-wrap break-words\">Localazy automatically identifies and highlights HTML\u002FXML tags, programming variables, and placeholders commonly used in i18n libraries. Localazy helps you keep your code intact.\u003C\u002Fp>\n\u003Cp>Whether you decide to crowdsource, hire professional translators, or use machine translations, code elements inside your strings stay protected to prevent software errors. Issues are caught before they make it to production.\u003C\u002Fp>","Try it ","https:\u002F\u002Flocalazy.com\u002Fregister",{"id":4002},"65960728-aaa4-42aa-8fce-4ac2f1ccd698",{"id":4004,"status":4,"feature_name":4005,"type":3934,"title":4006,"content":4007,"button_style":8,"button_label":4008,"button_link":4000,"background_color":3947,"add_file_padding":227,"video_source":8,"file":4009},69,"Code & Placeholders","Collapse HTML tags for cleaner interface 🧹","\u003Cp dir=\"ltr\">We make translating code-heavy strings easy. Translators can collapse HTML and XML markup by just clicking a button. They get a clean, focused interface that highlights only the translatable content, keeping productivity high and errors low.\u003C\u002Fp>","Get started",{"id":4010},"b81a52d5-2aa3-48cc-bafe-70f9b0fbb6c7",{"id":1253,"status":4,"feature_name":633,"type":3934,"title":4012,"content":4013,"button_style":3945,"button_label":8,"button_link":8,"background_color":3974,"add_file_padding":227,"video_source":8,"file":4014},"Trigger custom workflows on key project events 🔔","\u003Cp>Receive instant notifications when new comments are added, new content is imported, project changes are published, and other helpful events. \u003Cbr>\u003Cbr>Automatically trigger internal workflows, save time, and keep the translation process going without unnecessary manual supervision.\u003C\u002Fp>\n\u003Cp>\u003Cbr>\u003Cbr>\u003C\u002Fp>",{"id":4015},"e6cfcc66-17b2-4e98-8036-a928b04d86f5",{"id":4017,"status":4,"feature_name":633,"type":3934,"title":4018,"content":4019,"button_style":3945,"button_label":4020,"button_link":2357,"background_color":3947,"add_file_padding":227,"video_source":8,"file":4021},71,"Manage your webhooks via Localazy API ⌛","\u003Cp>Use the \u003Ca href=\"\u002Ffeatures\u002Ftranslation-api\" target=\"_self\">Localazy API\u003C\u002Fa> to manage your webhooks configuration programmatically &amp; set up custom workflows for each project without hassle. Configure everything to match your needs, and lose nothing in the automated process.&nbsp;\u003C\u002Fp>","Sign up now",{"id":4022},"1dacd294-1ec3-4910-85d4-a1e4e038c89d",{"id":728,"status":4,"feature_name":4024,"type":3934,"title":4025,"content":4026,"button_style":3945,"button_label":4027,"button_link":4028,"background_color":3947,"add_file_padding":227,"video_source":8,"file":4029},"Plurals","Dynamic translation interface & automated plural handling 🔢","\u003Cp>Languages have different rules for handling quantities. While English has just two forms (one apple, two apples), other languages can have up to six different forms. Localazy handles these rules automatically, so you don't have to.\u003C\u002Fp>\n\u003Cp>The translation interface adapts to show only the relevant categories for each language. Translators see precisely the correct plural form fields for each language they're working on, so there is no confusion about which plural form to use.\u003C\u002Fp>","Learn how","\u002Fdocs\u002Fgeneral\u002Ftranslating-strings#plurals",{"id":4030},"7bb14d19-206d-428d-953a-5dbc6dd4c0f2",{"id":1677,"status":4,"feature_name":4024,"type":3934,"title":4032,"content":4033,"button_style":3937,"button_label":4034,"button_link":2357,"background_color":3974,"add_file_padding":227,"video_source":8,"file":4035},"Standardized, but customizable when you need it! ⚙️","\u003Cp>Our plural form handling follows the Unicode CLDR standard, supporting the correct plural rules for all world languages.\u003C\u002Fp>\n\u003Cp>Do you need to customize plural rules for specific languages to match your i18n library? You can also define custom plural forms per language, ensuring perfect compatibility with your implementation.&nbsp;\u003C\u002Fp>","Try it today ",{"id":4036},"60ab2bb4-7619-46fc-8e36-b833c09fcaa0",{"id":1038,"status":4,"feature_name":4038,"type":3934,"title":4039,"content":4040,"button_style":3945,"button_label":8,"button_link":8,"background_color":3981,"add_file_padding":229,"video_source":8,"file":4041},"OTA Updates","Instant translation updates without app releases⚡","\u003Cp dir=\"ltr\">Deliver new translations to your mobile apps without requiring users to download a new version. When you fix a translation mistake or add support for a new language, your users get the changes immediately.&nbsp;\u003C\u002Fp>\n\u003Cp dir=\"ltr\">Fast-moving teams benefit most from OTA updates. Instead of waiting for the next app release cycle to fix a confusing translation, you can address issues immediately. This makes expanding to new markets faster and less risky.\u003C\u002Fp>",{"id":4042},"fb6eee3f-db0a-4423-9886-bc35965337a9",{"id":4044,"status":4,"feature_name":4038,"type":3934,"title":4045,"content":4046,"button_style":3937,"button_label":3955,"button_link":2357,"background_color":3974,"add_file_padding":229,"video_source":8,"file":8},77,"Simple SDK integration for Android and iOS 📲","\u003Cp dir=\"ltr\">Adding OTA updates to your app takes just minutes with our Android and iOS SDKs. The integration requires minimal code changes and works alongside your existing localization setup. Once integrated, you can manage everything directly from the Localazy platform.\u003C\u002Fp>",{"id":4048,"status":4,"feature_name":130,"type":3934,"title":4049,"content":4050,"button_style":3945,"button_label":4051,"button_link":4052,"background_color":3947,"add_file_padding":8,"video_source":8,"file":4053},82,"@localazy\u002Fapi-client 💾 ","\u003Cp>Get our Node.js module, which allows you to interact with the Localazy API easily.&nbsp;\u003C\u002Fp>\n\u003Cp>The Localazy API Client is written in TypeScript and supports TS, ESM, CommonJS, and UMD.\u003C\u002Fp>\n\u003Cpre>npm install @localazy\u002Fapi-client\u003C\u002Fpre>","Visit GitHub ","https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fapi-client#readme",{"id":4054},"a693251e-455d-4f9c-a303-fb04d779fe50",{"id":2075,"status":4,"feature_name":610,"type":3934,"title":4056,"content":4057,"button_style":3937,"button_label":4058,"button_link":4059,"background_color":3947,"add_file_padding":8,"video_source":8,"file":4060},"💾 @localazy\u002Fcdn-client","\u003Cp>The Localazy CDN Client is a Node.js library that offers functionalities to fetch translation strings from JSON files published on the Localazy CDN.\u003C\u002Fp>\n\u003Cp>You simply select files and languages you want to fetch and the CDN Client does the rest.\u003C\u002Fp>\n\u003Cpre>npm install @localazy\u002Fcdn-client\u003C\u002Fpre>","Visit GitHub","https:\u002F\u002Fgithub.com\u002Flocalazy\u002Fcdn-client",{"id":4061},"789ed3e5-2507-4583-9472-53c9a920548d",{"id":1688,"status":4,"feature_name":4063,"type":3934,"title":4064,"content":4065,"button_style":8,"button_label":8,"button_link":8,"background_color":3947,"add_file_padding":229,"video_source":8,"file":4066},"Zendesk Localization","Translate your help center 🎧","\u003Cp>Import your Zendesk articles and collections into Localazy with one click. Translate them with machine translation, hire professionals on the platform, or invite your team to collaborate.\u003C\u002Fp>",{"id":4067},"b8422bfe-64e3-4b99-83e6-4a8cbe1d0667",{"id":3332,"status":4,"feature_name":4063,"type":3934,"title":4069,"content":4070,"button_style":3937,"button_label":3946,"button_link":2357,"background_color":8,"add_file_padding":229,"video_source":8,"file":4071},"Get new languages live in minutes ⚡","\u003Cp>Export finished translations back to Zendesk as drafts for review or publish them directly. Your support team focuses on helping customers instead of managing translation workflows.\u003C\u002Fp>\n\u003Cp>The integration handles the heavy lifting between Zendesk and Localazy. When you update an article, just re-import the changes, translate them, and export again in minutes.\u003C\u002Fp>",{"id":4072},"5eaa7336-03c0-4042-a198-96b7c6971688",{"id":4074,"status":4,"feature_name":130,"type":3934,"title":4075,"content":4076,"button_style":8,"button_label":4077,"button_link":4078,"background_color":3947,"add_file_padding":227,"video_source":8,"file":4079},96,"Get in-context translations in seconds 🎈","\u003Cdiv data-mobiledoc=\"{&quot;version&quot;:&quot;0.3.2&quot;,&quot;atoms&quot;:[],&quot;cards&quot;:[],&quot;markups&quot;:[],&quot;sections&quot;:[[1,&quot;p&quot;,[[0,[],0,&quot;send a POST request with your source content, specify the source and target language, and get back translations in the response &mdash; no file uploads, no project sync, no waiting.&quot;]]]]}\">\n\u003Cdiv>\n\u003Cp>Send a POST request with your source content, specify the source and target language, and get back in-context translations in the response &mdash; no file uploads, no project sync, no waiting. Your text is translated by Localazy AI using the context of your Localazy project.&nbsp;\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>","More about Localazy AI","\u002Fblog\u002Fa-practical-guide-to-translating-with-localazy-ai",{"id":4080},"098a509b-7230-4f4d-b643-ecbebe464a1d",[4082,4099,4110,4115,4121,4128,4134,4143,4159,4171,4179,4191,4196,4203,4223,4229,4241,4247,4263,4275,4291,4297,4307,4315,4322,4330,4338,4353,4366,4379,4387,4395,4406,4412,4425,4436,4450,4458,4471,4484,4497,4510,4517,4529,4544,4551,4565,4577,4584,4595,4606,4616,4628,4643,4654,4663,4672,4678,4683,4696,4707,4720,4731,4743,4754,4759,4770,4781,4794,4806,4818,4828,4836,4847],{"id":7,"status":4,"sort":22,"created_on":4083,"modified_on":4084,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":22,"backend_parameter":8,"feature":4085,"pricing_plan":4090,"feature_section":4096},"2022-03-17T12:23:50.000Z","2025-07-25T10:01:14.000Z",{"id":297,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4086,"alternative_name":4086,"short_description":4087,"alternative_description":4087,"value":2786,"sort":297,"status":4,"subtitle":4088,"longer_description":4089,"docs_link":8},"Project languages & words","We don’t limit the number of languages and translations you add to your project.","Translate everything","We don’t limit the number of words, languages and translations you can add to your project. Translating your project to more languages does not affect the number of source keys used. ",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},"2022-03-17T12:23:48.000Z","Free","free","\u002Ftiers\u002Ffree","Start for free – automated l10n & translation solution",{"id":7,"name":4097,"comparison_name":4097,"sort":7,"status":4,"created_on":4098},"Profile limits","2022-03-17T12:23:10.000Z",{"id":16,"status":4,"sort":16,"created_on":4083,"modified_on":4100,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":16,"backend_parameter":8,"feature":4101,"pricing_plan":4108,"feature_section":4109},"2025-07-22T09:19:29.000Z",{"id":333,"created_on":4102,"is_released":229,"is_beta":227,"is_popular":227,"name":4103,"alternative_name":4103,"short_description":4104,"alternative_description":4105,"value":2786,"sort":333,"status":4,"subtitle":4106,"longer_description":4107,"docs_link":8},"2026-05-12T07:09:29.000Z","Project count","We don’t limit the number of projects that you integrate with your account.","Create and integrate an unlimited number of projects.","Integrate all you need","We don’t limit the number of projects that you integrate with your account. Feel free to add as many as you need 😃 ",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":7,"name":4097,"comparison_name":4097,"sort":7,"status":4,"created_on":4098},{"id":22,"status":4,"sort":7,"created_on":4083,"modified_on":4111,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":7,"backend_parameter":8,"feature":4112,"pricing_plan":4113,"feature_section":4114},"2025-07-22T09:19:22.000Z",{"id":338,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2783,"alternative_name":2783,"short_description":2784,"alternative_description":2785,"value":2786,"sort":338,"status":4,"subtitle":2787,"longer_description":2788,"docs_link":8},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":7,"name":4097,"comparison_name":4097,"sort":7,"status":4,"created_on":4098},{"id":107,"status":4,"sort":1528,"created_on":4083,"modified_on":4116,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":1528,"backend_parameter":8,"feature":4117,"pricing_plan":4118,"feature_section":4119},"2025-07-29T10:35:29.000Z",{"id":57,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":3908,"alternative_name":3908,"short_description":3909,"alternative_description":3909,"value":1974,"sort":57,"status":4,"subtitle":3910,"longer_description":3911,"docs_link":457},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},"2025-07-17T07:22:34.000Z",{"id":50,"status":4,"sort":50,"created_on":4083,"modified_on":4122,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":50,"backend_parameter":454,"feature":4123,"pricing_plan":4124,"feature_section":4125},"2026-02-11T14:47:39.000Z",{"id":50,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":450,"alternative_name":2862,"short_description":2863,"alternative_description":2864,"value":1974,"sort":50,"status":4,"subtitle":2865,"longer_description":2866,"docs_link":2867},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":67,"name":4126,"comparison_name":4126,"sort":50,"status":4,"created_on":4127},"Context","2025-07-17T07:24:14.000Z",{"id":57,"status":4,"sort":1611,"created_on":4083,"modified_on":4129,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":1611,"backend_parameter":8,"feature":4130,"pricing_plan":4131,"feature_section":4132},"2025-07-17T15:46:59.000Z",{"id":290,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2392,"alternative_name":2393,"short_description":53,"alternative_description":2394,"value":1974,"sort":290,"status":4,"subtitle":53,"longer_description":2395,"docs_link":134},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":16,"name":4133,"comparison_name":415,"sort":398,"status":4,"created_on":4098},"Elementary features",{"id":62,"status":4,"sort":4135,"created_on":4083,"modified_on":4136,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4135,"backend_parameter":4137,"feature":4138,"pricing_plan":4139,"feature_section":4140},105,"2026-02-11T14:50:19.000Z","basicMt",{"id":174,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2858,"alternative_name":2858,"short_description":3903,"alternative_description":3904,"value":1974,"sort":174,"status":4,"subtitle":3905,"longer_description":3906,"docs_link":128},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":77,"name":4141,"comparison_name":4141,"sort":62,"status":4,"created_on":4142},"Machine translation","2025-07-17T07:24:56.000Z",{"id":67,"status":4,"sort":3222,"created_on":4083,"modified_on":4144,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":3222,"backend_parameter":621,"feature":4145,"pricing_plan":4150,"feature_section":4156},"2026-02-11T14:44:06.000Z",{"id":398,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":617,"alternative_name":617,"short_description":4146,"alternative_description":4146,"value":1974,"sort":398,"status":4,"subtitle":4147,"longer_description":4148,"docs_link":4149},"The Releases feature allows you to create multiple versions of your translations","Release translations iteratively","Create and manage releases for your translations and publish updated translations iteratively when you need.","\u002Ffeatures\u002Freleases",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},"Professional","professional","\u002Ftiers\u002Fprofessional","Localazy Professional Plan – automated l10n & translation solution","Localazy Professional is an internationalization platform and localization management system with basic computer assisted translation features included. Simply enable Localazy Professional to manage your multilingual content.",{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},"For developers","2025-07-17T07:22:09.000Z",{"id":72,"status":4,"sort":4160,"created_on":4083,"modified_on":4161,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4160,"backend_parameter":4162,"feature":4163,"pricing_plan":4169,"feature_section":4170},211,"2026-02-11T14:44:28.000Z","conversions",{"id":319,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":625,"alternative_name":625,"short_description":4164,"alternative_description":4165,"value":1974,"sort":319,"status":4,"subtitle":4166,"longer_description":4167,"docs_link":4168},"Convert translated files between different formats easily and automatically.","With Format Conversions, you can convert translated files between different formats.","Multiplatform localization","With the Format Conversions feature, you can convert translated files between different formats.\nPerfect for using your translations on multiple platforms.","\u002Ffeatures\u002Fformat-conversions",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":77,"status":4,"sort":3278,"created_on":4083,"modified_on":4172,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":3278,"backend_parameter":4173,"feature":4174,"pricing_plan":4175,"feature_section":4176},"2026-02-11T14:44:58.000Z","connectedProjects",{"id":637,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":462,"alternative_name":462,"short_description":3838,"alternative_description":3839,"value":1974,"sort":637,"status":4,"subtitle":3840,"longer_description":3841,"docs_link":3842},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},"Advanced features","Advanced Features",{"id":36,"status":4,"sort":4180,"created_on":4083,"modified_on":4181,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4180,"backend_parameter":4182,"feature":4183,"pricing_plan":4189,"feature_section":4190},207,"2026-02-11T14:45:10.000Z","screenshots",{"id":474,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4184,"alternative_name":4184,"short_description":4185,"alternative_description":4185,"value":1974,"sort":474,"status":4,"subtitle":4186,"longer_description":4187,"docs_link":4188},"Screenshots (with OCR)","Provide contextual screenshots from your project to get more accurate translations.","Context is king","Context Screenshots allow you to attach screenshots from your project to your source keys, so translators and reviewers will make more accurate translations.","\u002Ffeatures\u002Fcontext-screenshots-ocr",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":67,"name":4126,"comparison_name":4126,"sort":50,"status":4,"created_on":4127},{"id":162,"status":4,"sort":4192,"created_on":4083,"modified_on":4193,"show_in_preview":227,"show_in_plan_page":227,"comparison_sort":4192,"backend_parameter":8,"feature":4194,"pricing_plan":4195,"feature_section":8},192,"2024-01-02T18:03:13.000Z",{"id":290,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2392,"alternative_name":2393,"short_description":53,"alternative_description":2394,"value":1974,"sort":290,"status":4,"subtitle":53,"longer_description":2395,"docs_link":134},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":170,"status":4,"sort":4197,"created_on":4083,"modified_on":4198,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4197,"backend_parameter":4199,"feature":4200,"pricing_plan":4201,"feature_section":4202},206,"2026-02-11T15:07:04.000Z","multipleMt",{"id":602,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":2494,"alternative_name":2495,"short_description":2496,"alternative_description":2497,"value":1974,"sort":602,"status":4,"subtitle":2498,"longer_description":2497,"docs_link":128},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":77,"name":4141,"comparison_name":4141,"sort":62,"status":4,"created_on":4142},{"id":99,"status":4,"sort":4204,"created_on":4083,"modified_on":4205,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4204,"backend_parameter":4206,"feature":4207,"pricing_plan":4214,"feature_section":4220},302,"2026-02-11T14:46:20.000Z","advancedMt",{"id":531,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4208,"alternative_name":4208,"short_description":4209,"alternative_description":4210,"value":1974,"sort":531,"status":4,"subtitle":4211,"longer_description":4212,"docs_link":4213},"DeepL ","Get the best MT suggestions from DeepL and OpenAI.","Get the best MT suggestions from DeepL.","Best MT's on the market","Enjoy translations from DeepL in addition to Amazon Translate and Google Translate, and compare them directly in our UI.","\u002Fdocs\u002Fgeneral\u002Fmachine-translations#overview-of-mt-engines-available",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},"Autopilot","autopilot","\u002Ftiers\u002Fautopilot","Localazy Autopilot Plan – automated l10n & translation solution","Localazy Autopilot is an internationalization platform and localization management system with professional translation services and automations included. Simply enable Localazy Autopilot to manage your multilingual content.",{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},"Machine translation providers","2025-07-17T07:25:51.000Z",{"id":398,"status":4,"sort":4224,"created_on":4083,"modified_on":4225,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4224,"backend_parameter":638,"feature":4226,"pricing_plan":4227,"feature_section":4228},314,"2025-07-17T18:49:24.000Z",{"id":490,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":633,"alternative_name":633,"short_description":8,"alternative_description":2932,"value":1974,"sort":423,"status":4,"subtitle":8,"longer_description":2932,"docs_link":2933},{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":347,"status":4,"sort":1914,"created_on":4083,"modified_on":4230,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":1914,"backend_parameter":8,"feature":4231,"pricing_plan":4237,"feature_section":4238},"2025-07-17T20:07:58.000Z",{"id":274,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4232,"alternative_name":4233,"short_description":8,"alternative_description":4234,"value":1974,"sort":1721,"status":4,"subtitle":8,"longer_description":4235,"docs_link":4236},"Zapier integration","Zapier","Get notified about comments, new languages, imports, or your general project activity via Zapier integration.","Connect Localazy with any tool available in Zapier and send events into your favorite apps. Get custom notifications to your communication channels, export data and so on.","\u002Ffeatures\u002Fzapier-integration",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},"3rd party integrations","2025-07-17T07:26:16.000Z",{"id":314,"status":4,"sort":4242,"created_on":4083,"modified_on":4243,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4242,"backend_parameter":737,"feature":4244,"pricing_plan":4245,"feature_section":4246},306,"2026-02-11T14:45:57.000Z",{"id":285,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":3058,"alternative_name":738,"short_description":3059,"alternative_description":3059,"value":1974,"sort":274,"status":4,"subtitle":330,"longer_description":3059,"docs_link":3060},{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":324,"status":4,"sort":4248,"created_on":4083,"modified_on":4249,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4248,"backend_parameter":4250,"feature":4251,"pricing_plan":4254,"feature_section":4260},405,"2026-02-11T14:46:28.000Z","reporting",{"id":358,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":589,"alternative_name":589,"short_description":8,"alternative_description":4252,"value":1974,"sort":285,"status":4,"subtitle":8,"longer_description":4252,"docs_link":4253},"With basic performance reports, you will be able to keep track of everything happening in your projects, and make better-informed decisions.","\u002Fdocs\u002Fgeneral\u002Flanguage-statistics",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},"Business","agency","\u002Ftiers\u002Fbusiness","Localazy Business Plan – automated l10n & translation solution","Localazy is an internationalization platform and localization management system with professional translation services and automations included. Simply enable Localazy Agency to manage your multilingual content on agency level.",{"id":36,"name":4261,"comparison_name":4261,"sort":67,"status":4,"created_on":4262},"Team management","2025-07-17T07:25:18.000Z",{"id":319,"status":4,"sort":4264,"created_on":4083,"modified_on":4265,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4264,"backend_parameter":4266,"feature":4267,"pricing_plan":4273,"feature_section":4274},408,"2026-02-11T14:46:35.000Z","secretProjects",{"id":959,"created_on":4102,"is_released":229,"is_beta":227,"is_popular":227,"name":4268,"alternative_name":4268,"short_description":4269,"alternative_description":4270,"value":1974,"sort":358,"status":4,"subtitle":4271,"longer_description":4270,"docs_link":4272},"Secret Projects","Hide your projects and invite only trusted users.","Secret projects are not indexed, users without permission are not able to find and join them, and the project is not included in the list of contributors’ projects.","Keep it under wraps 🤫","\u002Ffeatures\u002Fsecret-projects",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":333,"status":4,"sort":4276,"created_on":4083,"modified_on":4277,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4276,"backend_parameter":4278,"feature":4279,"pricing_plan":4284,"feature_section":4288},502,"2026-02-11T14:46:44.000Z","prioritySupport",{"id":1777,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4280,"alternative_name":4280,"short_description":4281,"alternative_description":4282,"value":1974,"sort":2564,"status":4,"subtitle":4283,"longer_description":4282,"docs_link":8},"SLA \u002F Priority support","Stellar customer support at your service. ","Please contact us at team@localazy.com if you want to discuss the terms and conditions of the SLA or should you require a legally binding contract.","We got your back!",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},"Enterprise","enterprise","\u002Ftiers\u002Fenterprise",{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},"Enterprise perks","2025-07-30T11:24:28.000Z",{"id":474,"status":4,"sort":4292,"created_on":4083,"modified_on":4293,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4292,"backend_parameter":8,"feature":4294,"pricing_plan":4295,"feature_section":4296},102,"2025-07-17T14:26:31.000Z",{"id":158,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":527,"alternative_name":527,"short_description":3226,"alternative_description":3227,"value":1974,"sort":158,"status":4,"subtitle":3228,"longer_description":53,"docs_link":3229},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":602,"status":4,"sort":4298,"created_on":4083,"modified_on":4299,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4298,"backend_parameter":8,"feature":4300,"pricing_plan":4305,"feature_section":4306},406,"2026-02-13T10:19:57.000Z",{"id":441,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4301,"alternative_name":585,"short_description":8,"alternative_description":4302,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4303,"docs_link":4304},"Single Sign-On (SAML-based)","Implement SSO to get improved security and easier permission management.","Single Sign-On will allow your employees to authenticate with Localazy via internal company credentials. The advantage of SSO is improved security and easier permission management.","\u002Fdocs\u002Fgeneral\u002Fsso-configuration",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":531,"status":4,"sort":4308,"created_on":4083,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4308,"backend_parameter":8,"feature":4310,"pricing_plan":4313,"feature_section":4314},503,"2025-07-30T11:25:23.000Z",{"id":449,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":298,"alternative_name":298,"short_description":8,"alternative_description":4311,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4312,"docs_link":8},"The Localization Manager will manage your translation project's success and help you with style guide preparation, glossary management, etc.","Get a PRINCE2 certified Localization Manager who will manage your translation project's success. The Localization Manager will help you with style guide preparation, glossary management, translator management and keeping an eye on deadlines.",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":490,"status":4,"sort":4316,"created_on":4083,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4316,"backend_parameter":8,"feature":4317,"pricing_plan":4320,"feature_section":4321},505,{"id":1780,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4318,"alternative_name":4318,"short_description":8,"alternative_description":4319,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4319,"docs_link":8},"Custom Integrations","Do you have a specific tech stack? Don't worry; we can help you connect any project with Localazy or make specific adjustments to tailor everything to your needs.",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":274,"status":4,"sort":4323,"created_on":4083,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4323,"backend_parameter":8,"feature":4324,"pricing_plan":4328,"feature_section":4329},504,{"id":849,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4325,"alternative_name":4325,"short_description":8,"alternative_description":4326,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4327,"docs_link":8},"Initial Setup & Configuration","Our support team will help you set everything up and walk you through the configuration of your project.","Our support team will help you set everything up and walk you through the configuration of your project. ",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":358,"status":4,"sort":4331,"created_on":4083,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4331,"backend_parameter":8,"feature":4332,"pricing_plan":4336,"feature_section":4337},508,{"id":498,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4333,"alternative_name":4333,"short_description":8,"alternative_description":4334,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4335,"docs_link":8},"Audit Logs","Get advanced reports on the progress of your projects — filter by language, date, user, and more.","A complete analytics tool that helps you keep track of everything that happens in Localazy. Get advanced reports on the progress of your projects — filter by language, date, user, and more.",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":959,"status":4,"sort":4339,"created_on":4340,"modified_on":4341,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4339,"backend_parameter":8,"feature":4342,"pricing_plan":4351,"feature_section":4352},307,"2022-06-02T22:41:10.000Z","2025-07-17T19:39:06.000Z",{"id":729,"created_on":4343,"is_released":229,"is_beta":227,"is_popular":227,"name":4344,"alternative_name":4345,"short_description":4346,"alternative_description":4347,"value":1974,"sort":474,"status":4,"subtitle":4348,"longer_description":4349,"docs_link":4350},"2022-06-02T22:37:01.000Z","Figma screenshots","Figma Screenshots","Automatically create contextual screenshots from your Figma design and link keys in Localazy.","Generate contextual screenshots from Figma to get more accurate translations.","Context Screenshots from Figma","Figma Screenshots allow you to automatically generate and send screenshots from your Figma Design to Localazy.","\u002Fdocs\u002Ffigma\u002Fcontext-screenshots",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":67,"name":4126,"comparison_name":4126,"sort":50,"status":4,"created_on":4127},{"id":2564,"status":4,"sort":4354,"created_on":4355,"modified_on":4356,"show_in_preview":227,"show_in_plan_page":227,"comparison_sort":4354,"backend_parameter":8,"feature":4357,"pricing_plan":4364,"feature_section":4365},311,"2022-08-09T11:00:03.000Z","2025-07-17T14:40:56.000Z",{"id":510,"created_on":4358,"is_released":229,"is_beta":227,"is_popular":227,"name":4359,"alternative_name":4360,"short_description":4361,"alternative_description":4361,"value":1974,"sort":8,"status":4,"subtitle":4362,"longer_description":4361,"docs_link":4363},"2022-08-09T10:59:26.000Z","E-commerce integrations","Shopify integration","Integrate your Shopify store with Localazy and automate the localization of your e-commerce business.","E-commerce localization plugin","\u002Fintegrations\u002Fshopify",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":1777,"status":4,"sort":4367,"created_on":4368,"modified_on":4369,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4367,"backend_parameter":8,"feature":4370,"pricing_plan":4377,"feature_section":4378},308,"2022-08-09T11:03:28.000Z","2025-07-17T19:39:54.000Z",{"id":1004,"created_on":4371,"is_released":229,"is_beta":227,"is_popular":227,"name":4372,"alternative_name":731,"short_description":4373,"alternative_description":4373,"value":1974,"sort":8,"status":4,"subtitle":4374,"longer_description":4375,"docs_link":4376},"2022-08-09T11:03:00.000Z","Strapi integration","The Strapi localization plugin by Localazy allows you to sync your content with Localazy and translate it with available tools.","Unleash multilingual content","The Strapi localization plugin by Localazy allows you to sync your content with Localazy and translate it with available tools. You can manage your language versions separately in Localazy and import new content for translation as you add it seamlessly without manual copypasting or file importing.","\u002Fintegrations\u002Fstrapi",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":1721,"status":4,"sort":4380,"created_on":4381,"modified_on":4382,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4380,"backend_parameter":4383,"feature":4384,"pricing_plan":4385,"feature_section":4386},404,"2022-10-18T11:15:37.000Z","2026-02-11T14:51:22.000Z","languagePermissions",{"id":2564,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":229,"name":560,"alternative_name":2565,"short_description":2566,"alternative_description":2566,"value":1974,"sort":959,"status":4,"subtitle":2567,"longer_description":2566,"docs_link":2568},{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":36,"name":4261,"comparison_name":4261,"sort":67,"status":4,"created_on":4262},{"id":423,"status":4,"sort":4388,"created_on":4389,"modified_on":4390,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4388,"backend_parameter":4391,"feature":4392,"pricing_plan":4393,"feature_section":4394},401,"2022-10-18T11:21:17.000Z","2026-02-11T14:51:00.000Z","duplicates",{"id":624,"created_on":3215,"is_released":229,"is_beta":227,"is_popular":229,"name":552,"alternative_name":552,"short_description":3216,"alternative_description":3216,"value":1974,"sort":8,"status":4,"subtitle":3217,"longer_description":3216,"docs_link":3218},{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":432,"status":4,"sort":4396,"created_on":4397,"modified_on":4398,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4396,"backend_parameter":4399,"feature":4400,"pricing_plan":4404,"feature_section":4405},409,"2022-10-18T11:24:15.000Z","2026-02-11T14:50:03.000Z","styleguides",{"id":567,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4401,"alternative_name":4401,"short_description":8,"alternative_description":4402,"value":1974,"sort":8,"status":4,"subtitle":8,"longer_description":4403,"docs_link":8},"Style Guide","Define how your project should sound across languages. Set clear expectations for tone, formality, and brand voice so both AI and human translators deliver consistent results.","Define how your project should sound across languages. Set clear expectations for tone, formality, and brand voice so both AI and human translators deliver consistent results.\n\n",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":67,"name":4126,"comparison_name":4126,"sort":50,"status":4,"created_on":4127},{"id":441,"status":4,"sort":4407,"created_on":4408,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4407,"backend_parameter":8,"feature":4409,"pricing_plan":4410,"feature_section":4411},506,"2022-10-21T11:41:49.000Z",{"id":632,"created_on":2939,"is_released":229,"is_beta":227,"is_popular":227,"name":2940,"alternative_name":2940,"short_description":2941,"alternative_description":2941,"value":1974,"sort":8,"status":4,"subtitle":2942,"longer_description":2941,"docs_link":8},{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":449,"status":4,"sort":4413,"created_on":4414,"modified_on":4415,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4413,"backend_parameter":8,"feature":4416,"pricing_plan":4423,"feature_section":4424},309,"2022-12-08T10:14:20.000Z","2025-07-17T19:42:44.000Z",{"id":518,"created_on":4417,"is_released":229,"is_beta":227,"is_popular":227,"name":4418,"alternative_name":4419,"short_description":4420,"alternative_description":4420,"value":1974,"sort":8,"status":4,"subtitle":4421,"longer_description":4420,"docs_link":4422},"2022-12-08T10:11:18.000Z","Storyblok integration","Storyblok","Translate your Storyblok website with the Localazy plugin.","Localized Stories","\u002Fintegrations\u002Fstoryblok",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":498,"status":4,"sort":4426,"created_on":4427,"modified_on":4428,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4426,"backend_parameter":581,"feature":4429,"pricing_plan":4434,"feature_section":4435},402,"2023-05-19T11:21:53.000Z","2026-02-11T14:49:41.000Z",{"id":526,"created_on":4427,"is_released":229,"is_beta":227,"is_popular":227,"name":577,"alternative_name":577,"short_description":4430,"alternative_description":4430,"value":1974,"sort":8,"status":4,"subtitle":4431,"longer_description":4432,"docs_link":4433},"Create branches of your projects to ensure multiple teams won't overwrite each other's work.","Robust translation management","Create branches of your projects to ensure multiple teams won't overwrite each other's work. After your development cycle is complete, merge branches and solve potential conflicts without affecting production translations.","\u002Ffeatures\u002Fbranching",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":849,"status":4,"sort":4437,"created_on":4438,"modified_on":4439,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4437,"backend_parameter":4440,"feature":4441,"pricing_plan":4448,"feature_section":4449},403,"2023-06-16T21:17:41.000Z","2026-02-11T14:48:14.000Z","aliases",{"id":535,"created_on":4442,"is_released":229,"is_beta":227,"is_popular":227,"name":4443,"alternative_name":4443,"short_description":4444,"alternative_description":4445,"value":1974,"sort":8,"status":4,"subtitle":642,"longer_description":4446,"docs_link":4447},"2023-06-16T21:01:05.000Z","File & Key Aliases","Define aliases for your source keys and reuse translations under various key names in several files, even for different platforms. ","Define aliases for your source keys and reuse translations under various key names in several files, even for different platforms.","Define aliases for your source keys and reuse translations under various key names in several files, even for different platforms. Perfect for syncing translation with Figma and allowing developers to choose where and how they want them exported for use in their project.","\u002Ffeatures\u002Fexport-aliases",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":551,"status":4,"sort":4451,"created_on":4452,"modified_on":4453,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4451,"backend_parameter":4454,"feature":4455,"pricing_plan":4456,"feature_section":4457},304,"2023-06-16T21:18:13.000Z","2026-02-11T14:48:45.000Z","workflows",{"id":469,"created_on":2790,"is_released":229,"is_beta":227,"is_popular":227,"name":569,"alternative_name":569,"short_description":2791,"alternative_description":2791,"value":1974,"sort":8,"status":4,"subtitle":2792,"longer_description":2793,"docs_link":2794},{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":559,"status":4,"sort":4459,"created_on":4460,"modified_on":4461,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4459,"backend_parameter":4454,"feature":4462,"pricing_plan":4469,"feature_section":4470},303,"2023-06-16T21:18:36.000Z","2026-02-11T14:49:17.000Z",{"id":478,"created_on":4463,"is_released":229,"is_beta":227,"is_popular":227,"name":4464,"alternative_name":4465,"short_description":4466,"alternative_description":4467,"value":1974,"sort":8,"status":4,"subtitle":4468,"longer_description":4467,"docs_link":2794},"2023-06-16T21:03:07.000Z","Auto MT Pre-translate","Automated machine translation","Pre-translate your new keys to selected languages automatically without visiting the Localazy platform.","Pre-translate your new keys to selected languages automatically without visiting the Localazy platform after each upload. Speed up your turnaround times and ship new localizations more quickly.","Automated machine translations",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":77,"name":4141,"comparison_name":4141,"sort":62,"status":4,"created_on":4142},{"id":567,"status":4,"sort":4472,"created_on":4473,"modified_on":4474,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4472,"backend_parameter":4475,"feature":4476,"pricing_plan":4482,"feature_section":4483},407,"2023-08-23T11:26:47.000Z","2026-02-11T14:50:38.000Z","importExport",{"id":751,"created_on":4477,"is_released":229,"is_beta":227,"is_popular":227,"name":4478,"alternative_name":4478,"short_description":4479,"alternative_description":4479,"value":1974,"sort":8,"status":4,"subtitle":4480,"longer_description":4479,"docs_link":4481},"2023-08-23T11:26:12.000Z","CSV Export & Import","Hand off your translations in a CSV format to your favorite translation agency and import their work back into Localazy easily.","Easily Import & Export translations in CSV format.","\u002Fdocs\u002Fgeneral\u002Fcsv-import-export",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":729,"status":4,"sort":4485,"created_on":4486,"modified_on":4487,"show_in_preview":227,"show_in_plan_page":227,"comparison_sort":4485,"backend_parameter":8,"feature":4488,"pricing_plan":4495,"feature_section":4496},310,"2023-10-04T15:31:34.000Z","2025-07-17T15:27:51.000Z",{"id":951,"created_on":4489,"is_released":229,"is_beta":227,"is_popular":227,"name":4490,"alternative_name":4491,"short_description":8,"alternative_description":4492,"value":1974,"sort":8,"status":4,"subtitle":4493,"longer_description":4492,"docs_link":4494},"2023-10-04T15:22:32.000Z","Directus integration","Directus","The Directus localization plugin by Localazy allows you to synchronize your content with Localazy and translate it with available tools.","Translate Directus Websites","\u002Ffeatures\u002Fdirectus-localization-plugin",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":510,"status":4,"sort":4498,"created_on":4499,"modified_on":4500,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4498,"backend_parameter":4501,"feature":4502,"pricing_plan":4508,"feature_section":4509},312,"2023-10-04T15:35:55.000Z","2026-02-11T14:49:07.000Z","integrations1",{"id":1250,"created_on":4503,"is_released":229,"is_beta":227,"is_popular":227,"name":4504,"alternative_name":4505,"short_description":4506,"alternative_description":4506,"value":1974,"sort":8,"status":4,"subtitle":4507,"longer_description":4506,"docs_link":8},"2023-10-04T15:22:47.000Z","Intercom & Zendesk Integration","Intercom & Zendesk","Sync your Intercom or Zendesk Help articles with Localazy and translate their content.","Multilingual Help centers",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":1004,"status":4,"sort":4511,"created_on":4512,"modified_on":4513,"show_in_preview":227,"show_in_plan_page":227,"comparison_sort":4511,"backend_parameter":8,"feature":4514,"pricing_plan":4515,"feature_section":4516},204,"2024-01-02T10:03:04.000Z","2025-07-17T20:00:10.000Z",{"id":50,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":450,"alternative_name":2862,"short_description":2863,"alternative_description":2864,"value":1974,"sort":50,"status":4,"subtitle":2865,"longer_description":2866,"docs_link":2867},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":67,"name":4126,"comparison_name":4126,"sort":50,"status":4,"created_on":4127},{"id":624,"status":4,"sort":3291,"created_on":4518,"modified_on":4519,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":3291,"backend_parameter":4520,"feature":4521,"pricing_plan":4527,"feature_section":4528},"2024-01-02T10:21:14.000Z","2026-02-11T14:47:14.000Z","customPlurals",{"id":2113,"created_on":4522,"is_released":229,"is_beta":227,"is_popular":227,"name":4523,"alternative_name":4523,"short_description":4524,"alternative_description":4524,"value":1974,"sort":8,"status":4,"subtitle":4525,"longer_description":4524,"docs_link":4526},"2024-01-02T10:20:52.000Z","Custom Plurals","Define custom plural forms per language to ensure compatibility with your i18n library.","Define custom plural forms","\u002Ffeatures\u002Fplurals",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":576,"status":4,"sort":4530,"created_on":4531,"modified_on":4532,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4530,"backend_parameter":8,"feature":4533,"pricing_plan":4542,"feature_section":4543},104,"2024-01-02T10:27:31.000Z","2025-07-30T12:37:46.000Z",{"id":4534,"created_on":4535,"is_released":229,"is_beta":227,"is_popular":227,"name":4536,"alternative_name":4537,"short_description":4538,"alternative_description":4539,"value":1974,"sort":8,"status":4,"subtitle":4540,"longer_description":4539,"docs_link":4541},172,"2024-01-02T10:26:52.000Z","Translation History","Translation history","See the history of each translation.","Keep track of all versions in the history of your translations.","Translation revision tracking","\u002Fdocs\u002Fgeneral\u002Ftranslating-strings#context-tabs",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":632,"status":4,"sort":4545,"created_on":4546,"modified_on":4547,"show_in_preview":227,"show_in_plan_page":227,"comparison_sort":4545,"backend_parameter":8,"feature":4548,"pricing_plan":4549,"feature_section":4550},203,"2024-01-02T10:28:02.000Z","2024-12-09T14:12:32.000Z",{"id":4534,"created_on":4535,"is_released":229,"is_beta":227,"is_popular":227,"name":4536,"alternative_name":4537,"short_description":4538,"alternative_description":4539,"value":1974,"sort":8,"status":4,"subtitle":4540,"longer_description":4539,"docs_link":4541},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":16,"name":4133,"comparison_name":415,"sort":398,"status":4,"created_on":4098},{"id":526,"status":4,"sort":4552,"created_on":4553,"modified_on":4554,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4552,"backend_parameter":4199,"feature":4555,"pricing_plan":4563,"feature_section":4564},205,"2024-01-02T10:44:54.000Z","2026-02-11T15:06:58.000Z",{"id":4556,"created_on":4557,"is_released":229,"is_beta":227,"is_popular":227,"name":4558,"alternative_name":4559,"short_description":4560,"alternative_description":4560,"value":1974,"sort":8,"status":4,"subtitle":4561,"longer_description":4562,"docs_link":4213},173,"2024-01-02T10:41:14.000Z","Amazon & Google Translate","Amazon & Google","Use Amazon's or Google's machine translation in automations, suggestions or the bulk translate option.","Built-in machine translation","Use Amazon's or Google's machine translation suggestions or the bulk translate option.",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},{"id":641,"status":4,"sort":4367,"created_on":4566,"modified_on":4567,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4367,"backend_parameter":4501,"feature":4568,"pricing_plan":4575,"feature_section":4576},"2024-01-02T10:49:48.000Z","2026-02-11T14:49:33.000Z",{"id":4569,"created_on":4570,"is_released":229,"is_beta":227,"is_popular":227,"name":4571,"alternative_name":4571,"short_description":4572,"alternative_description":4572,"value":1974,"sort":8,"status":4,"subtitle":4573,"longer_description":4572,"docs_link":4574},174,"2024-01-02T10:49:28.000Z","All CMS integrations","Connect your Strapi, Storyblok, Webflow, or Directus CMS with dedicated localization plugins.","CMS Localization Plugins","\u002Fdocs\u002Fgeneral\u002Fimporting-localization-files#native-integrations",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":535,"status":4,"sort":4578,"created_on":4579,"modified_on":4580,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4578,"backend_parameter":1830,"feature":4581,"pricing_plan":4582,"feature_section":4583},301,"2024-01-02T11:05:55.000Z","2026-02-11T14:49:55.000Z",{"id":3283,"created_on":3284,"is_released":229,"is_beta":227,"is_popular":229,"name":3285,"alternative_name":3285,"short_description":3286,"alternative_description":3287,"value":1974,"sort":8,"status":4,"subtitle":3288,"longer_description":3287,"docs_link":3289},{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":77,"name":4141,"comparison_name":4141,"sort":62,"status":4,"created_on":4142},{"id":478,"status":4,"sort":4585,"created_on":4586,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4585,"backend_parameter":8,"feature":4587,"pricing_plan":4593,"feature_section":4594},501,"2024-01-02T15:05:19.000Z",{"id":4588,"created_on":4589,"is_released":229,"is_beta":227,"is_popular":227,"name":4590,"alternative_name":4590,"short_description":4591,"alternative_description":4591,"value":1974,"sort":8,"status":4,"subtitle":4592,"longer_description":4591,"docs_link":8},177,"2024-01-02T15:02:13.000Z","High-Volume Translation Services","Our professional localization team is at your service, no matter the scope of your projects.","Professional Translations",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":751,"status":4,"sort":4596,"created_on":4597,"modified_on":4309,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4596,"backend_parameter":8,"feature":4598,"pricing_plan":4604,"feature_section":4605},507,"2024-01-02T15:59:20.000Z",{"id":4599,"created_on":4600,"is_released":229,"is_beta":227,"is_popular":227,"name":4601,"alternative_name":4601,"short_description":4602,"alternative_description":4602,"value":1974,"sort":8,"status":4,"subtitle":4603,"longer_description":4602,"docs_link":8},178,"2024-01-02T15:41:08.000Z","Backup & Restore","Set up automated backups of your data to minimize the risk of accidentally overwriting your work.","Accident recovery",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":154,"name":4289,"comparison_name":4289,"sort":174,"status":568,"created_on":4290},{"id":1250,"status":4,"sort":4607,"created_on":4608,"modified_on":4609,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4607,"backend_parameter":8,"feature":4610,"pricing_plan":4614,"feature_section":4615},1000,"2024-03-28T11:13:44.000Z","2024-05-21T08:42:50.000Z",{"id":4611,"created_on":4608,"is_released":229,"is_beta":227,"is_popular":227,"name":4612,"alternative_name":4612,"short_description":4613,"alternative_description":4613,"value":1974,"sort":8,"status":568,"subtitle":4613,"longer_description":4613,"docs_link":8},183,"ISO 27001 Certification","Localazy is an ISO27001 certified company.",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":4004,"status":4,"sort":4607,"created_on":4617,"modified_on":4618,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":4607,"backend_parameter":8,"feature":4619,"pricing_plan":4626,"feature_section":4627},"2024-05-21T09:26:25.000Z","2024-05-21T09:33:10.000Z",{"id":4620,"created_on":4621,"is_released":229,"is_beta":227,"is_popular":227,"name":4622,"alternative_name":4622,"short_description":4623,"alternative_description":4623,"value":1974,"sort":8,"status":4,"subtitle":4624,"longer_description":4623,"docs_link":4625},184,"2024-05-21T09:23:06.000Z","SOC2 Certification","Localazy is an SOC2 certified company.","Secure, trusted and certified.","https:\u002F\u002Flocalazy.trustcenter.sprinto.com\u002F",{"id":50,"created_on":4091,"name":4285,"status":4,"stripe_name":4286,"docs_link":4287,"meta_title":8,"feed_description":8,"has_trial":227,"show_price":227,"includes_plan":107},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":728,"status":4,"sort":4629,"created_on":4630,"modified_on":4631,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4629,"backend_parameter":4632,"feature":4633,"pricing_plan":4641,"feature_section":4642},305,"2024-11-01T16:16:52.000Z","2026-02-11T14:48:53.000Z","tags",{"id":4634,"created_on":4635,"is_released":229,"is_beta":227,"is_popular":227,"name":4636,"alternative_name":4637,"short_description":4638,"alternative_description":4638,"value":1974,"sort":8,"status":4,"subtitle":4639,"longer_description":4638,"docs_link":4640},185,"2024-11-01T16:16:06.000Z","Translation tagging","Priority & source key tags","Assign priorities and organize source keys using tags to streamline translation management","Priority and context tags","\u002Fdocs\u002Fgeneral\u002Fpriority-and-tags",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":2073,"status":4,"sort":50,"created_on":4644,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":50,"backend_parameter":8,"feature":4646,"pricing_plan":4652,"feature_section":4653},"2025-07-29T07:51:48.000Z","2026-04-26T03:12:35.000Z",{"id":4647,"created_on":4644,"is_released":229,"is_beta":227,"is_popular":227,"name":4648,"alternative_name":4648,"short_description":4649,"alternative_description":4649,"value":1974,"sort":8,"status":4,"subtitle":4650,"longer_description":4649,"docs_link":4651},187,"Android SDK","The Localazy Gradle plugin helps you to upload strings and to integrate Localazy into your app.","Gradle plugin","\u002Fdocs\u002Fandroid\u002Flocalazy-gradle-plugin",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":1038,"status":4,"sort":107,"created_on":4655,"modified_on":4656,"show_in_preview":229,"show_in_plan_page":227,"comparison_sort":107,"backend_parameter":8,"feature":4657,"pricing_plan":4661,"feature_section":4662},"2025-07-29T07:54:00.000Z","2025-07-29T08:22:19.000Z",{"id":1721,"created_on":919,"is_released":229,"is_beta":227,"is_popular":227,"name":4658,"alternative_name":4658,"short_description":8,"alternative_description":4659,"value":1974,"sort":1777,"status":4,"subtitle":8,"longer_description":4660,"docs_link":8},"API \u002F CLI \u002F Mobile SDK integration","Choose your preferred way of integrating your project with Localazy CLI, API or SDKs or simply upload your files with no connection.","Choose your preferred way of integrating your project with Localazy CLI, API or SDKs or simply upload your files with no connection. It's up to you! ",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":4044,"status":4,"sort":57,"created_on":4664,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":57,"backend_parameter":8,"feature":4665,"pricing_plan":4670,"feature_section":4671},"2025-07-29T08:01:06.000Z",{"id":4666,"created_on":4664,"is_released":229,"is_beta":227,"is_popular":227,"name":4667,"alternative_name":4667,"short_description":4668,"alternative_description":4668,"value":1974,"sort":8,"status":4,"subtitle":4669,"longer_description":4668,"docs_link":2643},188,"iOS & macOS SDK","Localazy Swift SDK for seamless localization of your iOS and macOS projects","Localazy Swift SDK ",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":4673,"status":4,"sort":50,"created_on":4674,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":50,"backend_parameter":8,"feature":4675,"pricing_plan":4676,"feature_section":4677},78,"2025-07-29T08:08:02.000Z",{"id":3159,"created_on":3160,"is_released":229,"is_beta":227,"is_popular":227,"name":3161,"alternative_name":130,"short_description":3162,"alternative_description":3162,"value":1974,"sort":8,"status":4,"subtitle":3163,"longer_description":3164,"docs_link":131},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":2110,"status":4,"sort":107,"created_on":4679,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":107,"backend_parameter":8,"feature":4680,"pricing_plan":4681,"feature_section":4682},"2025-07-29T08:15:32.000Z",{"id":166,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":603,"alternative_name":603,"short_description":1973,"alternative_description":1973,"value":1974,"sort":166,"status":4,"subtitle":1975,"longer_description":1857,"docs_link":1976},{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":57,"name":4157,"comparison_name":4157,"sort":16,"status":4,"created_on":4158},{"id":4684,"status":4,"sort":4607,"created_on":4685,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":8,"feature":4686,"pricing_plan":4692,"feature_section":4693},80,"2025-07-29T08:33:11.000Z",{"id":67,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4687,"alternative_name":4038,"short_description":4688,"alternative_description":4688,"value":1974,"sort":67,"status":4,"subtitle":4689,"longer_description":4690,"docs_link":4691},"OTA updates","Skip app store approvas with live & reliable translation updates for mobile apps. ","Mobile translation delivery","Localazy can help you keep your Android or iOS apps fully translated over the air. The SDKs makes no changes to your source code and provide live, reliable translation updates for mobile apps.","\u002Fdocs\u002Fgeneral\u002Fota-updates",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":150,"name":4694,"comparison_name":4694,"sort":22,"status":4,"created_on":4695},"Translation Delivery","2025-07-29T09:05:47.000Z",{"id":1679,"status":4,"sort":4607,"created_on":4697,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":8,"feature":4698,"pricing_plan":4705,"feature_section":4706},"2025-07-29T09:11:42.000Z",{"id":4192,"created_on":4699,"is_released":229,"is_beta":227,"is_popular":227,"name":610,"alternative_name":4700,"short_description":4701,"alternative_description":4701,"value":1974,"sort":8,"status":4,"subtitle":4702,"longer_description":4703,"docs_link":4704},"2025-07-29T09:10:23.000Z","Localazy CDN","Deliver new translations to your users as soon as they are approved and published for production use. No need for rebuilds.","Localized Experience On Demand","Deliver new translations to your users as soon as they are approved and published for production use. No need for rebuilds - Localazy CDN shortens the turnaround times of translation updates.","\u002Ffeatures\u002Flanguage-cdn",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":150,"name":4694,"comparison_name":4694,"sort":22,"status":4,"created_on":4695},{"id":4048,"status":4,"sort":4498,"created_on":4708,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4498,"backend_parameter":8,"feature":4709,"pricing_plan":4718,"feature_section":4719},"2025-07-29T11:41:45.000Z",{"id":4710,"created_on":4711,"is_released":229,"is_beta":227,"is_popular":227,"name":4712,"alternative_name":4713,"short_description":4714,"alternative_description":4714,"value":1974,"sort":8,"status":4,"subtitle":4715,"longer_description":4716,"docs_link":4717},193,"2025-07-29T11:40:53.000Z","Zendesk integration","Zendesk","Connect your Zendesk Help Center with Localazy and translate your support documentation.","Help center translation","Import your Zendesk articles and collections into Localazy with one click. Translate them with machine translation, hire professionals on the platform, or invite your team to collaborate. Your support team focuses on helping customers instead of managing translation workflows.","\u002Ffeatures\u002Fzendesk-localization",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":2075,"status":4,"sort":4498,"created_on":4721,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4498,"backend_parameter":8,"feature":4722,"pricing_plan":4729,"feature_section":4730},"2025-07-29T15:16:00.000Z",{"id":4723,"created_on":4724,"is_released":229,"is_beta":227,"is_popular":227,"name":4725,"alternative_name":3724,"short_description":4726,"alternative_description":4726,"value":1974,"sort":8,"status":568,"subtitle":4727,"longer_description":4726,"docs_link":4728},195,"2025-07-29T15:19:52.000Z","Intercom Integration","Sync your Intercom help articles with Localazy and translate their content.","Multilingual support","\u002Ffeatures\u002Fintercom-localization-plugin",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":1681,"status":4,"sort":4607,"created_on":4732,"modified_on":4733,"show_in_preview":229,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":4734,"feature":4735,"pricing_plan":4741,"feature_section":4742},"2025-07-29T15:51:49.000Z","2026-02-11T14:50:50.000Z","clustering",{"id":641,"created_on":4736,"is_released":229,"is_beta":227,"is_popular":227,"name":4737,"alternative_name":4737,"short_description":4738,"alternative_description":4738,"value":1974,"sort":8,"status":4,"subtitle":4739,"longer_description":4738,"docs_link":4740},"2023-06-16T20:59:52.000Z","Key Clusters","Enable Key Clustering to automatically nest newly imported duplicate values under a single source key in Localazy. This feature is especially useful for a seamless Figma plugin experience.","Nest duplicates unders a single key","\u002Ffeatures\u002Fkey-clustering",{"id":107,"created_on":4091,"name":4255,"status":4,"stripe_name":4256,"docs_link":4257,"meta_title":4258,"feed_description":4259,"has_trial":229,"show_price":229,"includes_plan":22},{"id":22,"name":4177,"comparison_name":4178,"sort":57,"status":4,"created_on":4098},{"id":1008,"status":4,"sort":4607,"created_on":4744,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":8,"feature":4745,"pricing_plan":4752,"feature_section":4753},"2025-07-29T18:08:57.000Z",{"id":4746,"created_on":4744,"is_released":229,"is_beta":227,"is_popular":227,"name":4747,"alternative_name":762,"short_description":4748,"alternative_description":4748,"value":1974,"sort":8,"status":4,"subtitle":4749,"longer_description":4750,"docs_link":4751},196,"Webflow integration","Integrate Localazy with your Webflow site and kickstart your global growth.","Global websites, quick & easy","Integrate Localazy with your Webflow site and kickstart your global growth by translating your content into multiple languages easily.\n\n","\u002Ffeatures\u002Fwebflow-localization",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":3151,"status":4,"sort":4607,"created_on":4755,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":8,"feature":4756,"pricing_plan":4757,"feature_section":4758},"2025-07-29T18:39:47.000Z",{"id":951,"created_on":4489,"is_released":229,"is_beta":227,"is_popular":227,"name":4490,"alternative_name":4491,"short_description":8,"alternative_description":4492,"value":1974,"sort":8,"status":4,"subtitle":4493,"longer_description":4492,"docs_link":4494},{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":43,"name":4239,"comparison_name":4239,"sort":43,"status":4,"created_on":4240},{"id":1025,"status":4,"sort":4607,"created_on":4760,"modified_on":4761,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4426,"backend_parameter":8,"feature":4762,"pricing_plan":4768,"feature_section":4769},"2025-07-29T18:43:14.000Z","2025-08-25T08:23:02.000Z",{"id":107,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4763,"alternative_name":4763,"short_description":4764,"alternative_description":4765,"value":1974,"sort":107,"status":4,"subtitle":4766,"longer_description":4767,"docs_link":547},"Role-based permissions","Localazy offers different user roles for your team & contributors - from Translator to Owner.","Assign roles at the project or organizational level. These roles range from Translator to Manager to Owner.","Manage access levels","Localazy supports different user roles for your project contributors allowing you to effectively collaborate with everyone involved in the localization process. ",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":36,"name":4261,"comparison_name":4261,"sort":67,"status":4,"created_on":4262},{"id":986,"status":4,"sort":4771,"created_on":4772,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4771,"backend_parameter":8,"feature":4773,"pricing_plan":4779,"feature_section":4780},100,"2025-07-29T18:59:27.000Z",{"id":43,"created_on":1972,"is_released":229,"is_beta":227,"is_popular":227,"name":4005,"alternative_name":4774,"short_description":4775,"alternative_description":4775,"value":1974,"sort":43,"status":4,"subtitle":4776,"longer_description":4777,"docs_link":4778},"Code & placeholder detection","Localazy identifies, protects, and maintains code markup, variables, and placeholders during translation.","Don't break your app","Localazy identifies, protects, and maintains code markup, variables, and placeholders during translation to prevent technical issues in your multilingual software.","\u002Ffeatures\u002Fcode-and-placeholders",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":1688,"status":4,"sort":4552,"created_on":4782,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4552,"backend_parameter":8,"feature":4783,"pricing_plan":4792,"feature_section":4793},"2025-07-30T11:39:12.000Z",{"id":4784,"created_on":4785,"is_released":229,"is_beta":227,"is_popular":227,"name":4786,"alternative_name":4787,"short_description":4788,"alternative_description":4789,"value":1974,"sort":8,"status":4,"subtitle":4790,"longer_description":4791,"docs_link":4213},198,"2025-07-30T11:36:39.000Z","Amazon Translations","Amazon ","Use Amazon's machine translation with automations or the bulk translate option.","Use Amazon's machine translation with automations or the bulk translate option","Free built-in MT","Use Amazon's machine translation with automations or the bulk translate option. This engine is not available in translation suggestions.",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},{"id":3332,"status":4,"sort":4607,"created_on":4795,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4197,"backend_parameter":8,"feature":4796,"pricing_plan":4804,"feature_section":4805},"2025-07-30T11:42:39.000Z",{"id":4797,"created_on":4798,"is_released":229,"is_beta":227,"is_popular":227,"name":4799,"alternative_name":4800,"short_description":4801,"alternative_description":4801,"value":1974,"sort":8,"status":4,"subtitle":4802,"longer_description":4803,"docs_link":4213},201,"2025-07-30T11:42:09.000Z","Azure Translations","Microsoft (Azure)","Use Microsoft's machine translation with automations or the bulk translate option. ","Built-in MT provider","Use Microsoft's machine translation with automations or the bulk translate option. This engine is not available in translation suggestions.",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},{"id":3449,"status":4,"sort":4607,"created_on":4807,"modified_on":4808,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4197,"backend_parameter":8,"feature":4809,"pricing_plan":4816,"feature_section":4817},"2025-07-30T11:48:38.000Z","2025-07-30T11:49:13.000Z",{"id":4810,"created_on":4811,"is_released":229,"is_beta":227,"is_popular":227,"name":4812,"alternative_name":4813,"short_description":4814,"alternative_description":4814,"value":1974,"sort":8,"status":4,"subtitle":4815,"longer_description":4814,"docs_link":4213},202,"2025-07-30T11:46:33.000Z","Google Translate","Google","Use Google's machine translation suggestions or the bulk translate option.","Built-in Google Translate",{"id":16,"created_on":4091,"name":4151,"status":4,"stripe_name":4152,"docs_link":4153,"meta_title":4154,"feed_description":4155,"has_trial":229,"show_price":229,"includes_plan":7},{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},{"id":3549,"status":4,"sort":4607,"created_on":4819,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4607,"backend_parameter":8,"feature":4820,"pricing_plan":4826,"feature_section":4827},"2025-07-30T12:09:41.000Z",{"id":4545,"created_on":4819,"is_released":229,"is_beta":227,"is_popular":227,"name":4821,"alternative_name":4822,"short_description":4823,"alternative_description":4823,"value":1974,"sort":8,"status":4,"subtitle":4824,"longer_description":4825,"docs_link":4213},"DeepL translations","DeepL","Get the best MT results from DeepL with Glossary support.","State-of-the-art machine translations","Enjoy translations from DeepL in addition to Amazon Translate and Google Translate, compare them directly in our UI, or apply them in bulk. Get the best MT results from DeepL with Glossary support.",{"id":22,"created_on":4091,"name":4215,"status":4,"stripe_name":4216,"docs_link":4217,"meta_title":4218,"feed_description":4219,"has_trial":229,"show_price":229,"includes_plan":16},{"id":29,"name":4221,"comparison_name":4221,"sort":29,"status":4,"created_on":4222},{"id":1691,"status":4,"sort":4771,"created_on":4829,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4771,"backend_parameter":8,"feature":4830,"pricing_plan":4834,"feature_section":4835},"2025-07-30T12:39:12.000Z",{"id":4552,"created_on":4829,"is_released":229,"is_beta":227,"is_popular":227,"name":4831,"alternative_name":4831,"short_description":4832,"alternative_description":4832,"value":1974,"sort":8,"status":4,"subtitle":4833,"longer_description":4832,"docs_link":506},"Comments & notes","Add notes to your source strings and communicate with contributors via comments. ","Collaborate with your team",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":3701,"status":4,"sort":4607,"created_on":4837,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":1611,"backend_parameter":8,"feature":4838,"pricing_plan":4845,"feature_section":4846},"2025-07-30T13:21:45.000Z",{"id":4197,"created_on":4837,"is_released":229,"is_beta":227,"is_popular":227,"name":4839,"alternative_name":4840,"short_description":4841,"alternative_description":4841,"value":1974,"sort":8,"status":4,"subtitle":4842,"longer_description":4843,"docs_link":4844},"Quality checks","QA checks","Automated QA and validity checks for translators.","QA alerts for translators","Localazy comes with various quality assurance checks that alert translators that their translation is missing some important elements contained in the source texts. ","\u002Fdocs\u002Fgeneral\u002Fqa-checks",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":62,"name":433,"comparison_name":433,"sort":107,"status":4,"created_on":4120},{"id":4074,"status":4,"sort":4771,"created_on":4848,"modified_on":4645,"show_in_preview":227,"show_in_plan_page":229,"comparison_sort":4771,"backend_parameter":8,"feature":4849,"pricing_plan":4854,"feature_section":4855},"2025-07-30T13:39:23.000Z",{"id":4180,"created_on":4848,"is_released":229,"is_beta":227,"is_popular":227,"name":4850,"alternative_name":4850,"short_description":4851,"alternative_description":4851,"value":1974,"sort":8,"status":4,"subtitle":4852,"longer_description":4853,"docs_link":457},"Backwards translation in review"," With Localazy's review interface, verifying translations in unfamiliar languages is easier than ever.","Review with confidence","With Localazy's review interface, verifying translations in unfamiliar languages is easier than ever, thanks to the built-in backward machine translation feature.",{"id":7,"created_on":4091,"name":4092,"status":4,"stripe_name":4093,"docs_link":4094,"meta_title":4095,"feed_description":8,"has_trial":227,"show_price":229,"includes_plan":8},{"id":77,"name":4141,"comparison_name":4141,"sort":62,"status":4,"created_on":4142},[1871,1879,1890,1898,1906,1913,1921,1929,1937,1946,1954,1962]]