[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"main-navigation":3,"footer-homepage":723,"footer-settings":790,"footer-integrations":903,"blog-post-nav-nav":1814,"blog-post-nav-[USE LATEST FEATURED]":1836,"blog-the-ultimate-guide-to-localazy-cdn":1857},[4,211,451,582,715,719],{"id":5,"name":6,"url":7,"url_text":7,"status":8,"groups":9},2,"Solutions",null,"published",[10,24,99,135],{"navigation_items_group_id":11},{"id":12,"sort":13,"status":8,"name":14,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":17,"show_all_url":7,"represent_as_tile":15,"items":18},3,5,"Featured Article",false,"top",true,[19],{"collection":20,"item":21},"blog_post_navigation_item_type",{"id":22,"status":8,"sort":7,"show_author_img":17,"blog_post_tag":23,"description":7},4,"nav",{"navigation_items_group_id":25},{"id":13,"sort":26,"status":8,"name":27,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":28,"represent_as_tile":17,"items":29},1,"Your Role","\u002Froles",[30,42,52,64,75,87],{"collection":31,"item":32},"relation_navigation_item_type",{"id":26,"status":8,"sort":7,"name":33,"item":34},"CMO",[35],{"collection":36,"item":37},"personas",{"id":26,"status":8,"sort":7,"slug":38,"icon":39},"chief-marketing-officers",{"id":40,"title":41},"526097d8-176f-48e5-83d3-2fc4d77061f9","La Mail Bulk",{"collection":31,"item":43},{"id":12,"status":8,"sort":7,"name":44,"item":45},"CTO",[46],{"collection":36,"item":47},{"id":22,"status":8,"sort":7,"slug":48,"icon":49},"chief-technical-officers",{"id":50,"title":51},"f808fdf0-c78b-4294-ba59-fe25f46fe825","La Mechanic",{"collection":31,"item":53},{"id":54,"status":8,"sort":7,"name":55,"item":56},20,"Product Manager",[57],{"collection":36,"item":58},{"id":59,"status":8,"sort":7,"slug":60,"icon":61},18,"product-managers",{"id":62,"title":63},"ea39586a-21fc-4b34-ba87-496028e5198f","La Worker",{"collection":31,"item":65},{"id":66,"status":8,"sort":7,"name":67,"item":68},37,"Translator",[69],{"collection":36,"item":70},{"id":54,"status":8,"sort":7,"slug":71,"icon":72},"professional-translators",{"id":73,"title":74},"07945171-d51d-4ca8-96c0-21cde9db258f","La Chat",{"collection":31,"item":76},{"id":77,"status":8,"sort":7,"name":78,"item":79},38,"Developer",[80],{"collection":36,"item":81},{"id":82,"status":8,"sort":7,"slug":83,"icon":84},30,"software-developers",{"id":85,"title":86},"1806e46d-c551-4845-bf42-4407344d229e","La Terminal",{"collection":31,"item":88},{"id":89,"status":8,"sort":7,"name":90,"item":91},27,"Localization Manager",[92],{"collection":36,"item":93},{"id":94,"status":8,"sort":7,"slug":95,"icon":96},6,"localization-managers",{"id":97,"title":98},"dac69bd1-bf5d-41d0-87d4-dd13e314698a","La Language",{"navigation_items_group_id":100},{"id":101,"sort":12,"status":8,"name":102,"render_show_all_url":15,"show_all_url_position":103,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":104},9,"Use cases","bottom",[105,111,116,121,125,130],{"collection":106,"item":107},"simple_link_navigation_item_type",{"id":108,"status":8,"sort":7,"url":109,"url_text":110,"show_favorite_icon":15},24,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fsoftware-localization","Software localization",{"collection":106,"item":112},{"id":113,"status":8,"sort":7,"url":114,"url_text":115,"show_favorite_icon":15},26,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fmobile-app-localization","Mobile app localization",{"collection":106,"item":117},{"id":118,"status":8,"sort":7,"url":119,"url_text":120,"show_favorite_icon":15},25,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fwebsite-localization","Website localization",{"collection":106,"item":122},{"id":89,"status":8,"sort":7,"url":123,"url_text":124,"show_favorite_icon":15},"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fdesign-localization","Design localization",{"collection":106,"item":126},{"id":127,"status":8,"sort":7,"url":128,"url_text":129,"show_favorite_icon":15},28,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fgame-localization","Game localization",{"collection":106,"item":131},{"id":132,"status":8,"sort":7,"url":133,"url_text":134,"show_favorite_icon":15},29,"https:\u002F\u002Flocalazy.com\u002Fuse-cases\u002Fhelp-and-docs-localization","Help & docs localization",{"navigation_items_group_id":136},{"id":137,"sort":5,"status":8,"name":138,"render_show_all_url":15,"show_all_url_position":103,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":139},8,"Industry",[140,152,163,173,184,193,204],{"collection":31,"item":141},{"id":142,"status":8,"sort":7,"name":143,"item":144},23,"Digital Agencies",[145],{"collection":36,"item":146},{"id":147,"status":8,"sort":7,"slug":148,"icon":149},7,"digital-agencies",{"id":150,"title":151},"547f5619-b21d-4b29-86f1-8b2200313cde","La Digi Agency",{"collection":31,"item":153},{"id":154,"status":8,"sort":7,"name":155,"item":156},39,"Startups & SaaS",[157],{"collection":36,"item":158},{"id":5,"status":8,"sort":7,"slug":159,"icon":160},"startups",{"id":161,"title":162},"da1516e2-4afc-40a2-bcbf-a8161e2d610d","La Saa S",{"collection":31,"item":164},{"id":5,"status":8,"sort":7,"name":165,"item":166},"E-commerce",[167],{"collection":36,"item":168},{"id":13,"status":8,"sort":7,"slug":169,"icon":170},"e-commerce",{"id":171,"title":172},"a3d09cd2-054f-4bb5-a0a2-d3d207db65df","La Ecommerce",{"collection":31,"item":174},{"id":175,"status":8,"sort":7,"name":176,"item":177},19,"FinTech Platforms",[178],{"collection":36,"item":179},{"id":89,"status":8,"sort":7,"slug":180,"icon":181},"fintech",{"id":182,"title":183},"147339ba-07d1-4e5e-baad-23d27e60c919","La Money",{"collection":31,"item":185},{"id":108,"status":8,"sort":7,"name":186,"item":187},"Translation Agencies",[188],{"collection":36,"item":189},{"id":108,"status":8,"sort":7,"slug":190,"icon":191},"translation-agencies",{"id":192,"title":98},"15d6fe33-2af8-4d6e-933d-5caa64394511",{"collection":31,"item":194},{"id":195,"status":8,"sort":7,"name":196,"item":197},22,"Travel & Tourism",[198],{"collection":36,"item":199},{"id":12,"status":8,"sort":7,"slug":200,"icon":201},"tourism",{"id":202,"title":203},"23a785e8-0ae5-4c4b-8452-aab1b58182a6","La Travel",{"collection":31,"item":205},{"id":118,"status":8,"sort":7,"name":206,"item":207},"Nonprofit Causes",[208],{"collection":36,"item":209},{"id":127,"status":8,"sort":7,"slug":210,"icon":7},"nonprofit",{"id":13,"name":212,"url":7,"url_text":7,"status":8,"groups":213},"Features",[214,284,342,392],{"navigation_items_group_id":215},{"id":216,"sort":94,"status":8,"name":217,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":218},11,"Localization",[219,228,237,246,255,259,267,276],{"collection":31,"item":220},{"id":221,"status":8,"sort":7,"name":222,"item":223},44,"Localization services",[224],{"collection":225,"item":226},"products",{"id":101,"status":8,"slug":227},"continuous-localization-team",{"collection":31,"item":229},{"id":230,"status":8,"sort":7,"name":231,"item":232},45,"Translation management",[233],{"collection":234,"item":235},"term_landing_page",{"id":132,"status":8,"slug":236},"translation-management-system",{"collection":31,"item":238},{"id":239,"status":8,"sort":7,"name":240,"item":241},46,"Context Screenshots",[242],{"collection":225,"item":243},{"id":244,"status":8,"slug":245},13,"context-screenshots-ocr",{"collection":31,"item":247},{"id":248,"status":8,"sort":7,"name":249,"item":250},47,"Translation Glossary",[251],{"collection":225,"item":252},{"id":253,"status":8,"slug":254},17,"glossary",{"collection":106,"item":256},{"id":22,"status":8,"sort":7,"url":257,"url_text":258,"show_favorite_icon":15},"\u002Fdocs\u002Fgeneral\u002Freviewing-translations","Quality control",{"collection":31,"item":260},{"id":261,"status":8,"sort":7,"name":262,"item":263},34,"Connected Projects",[264],{"collection":225,"item":265},{"id":26,"status":8,"slug":266},"connected-projects",{"collection":31,"item":268},{"id":269,"status":8,"sort":7,"name":270,"item":271},64,"Plural handling",[272],{"collection":225,"item":273},{"id":274,"status":8,"slug":275},32,"plurals",{"collection":31,"item":277},{"id":278,"status":8,"sort":7,"name":279,"item":280},65,"Style guides",[281],{"collection":225,"item":282},{"id":77,"status":8,"slug":283},"style-guide",{"navigation_items_group_id":285},{"id":286,"sort":147,"status":8,"name":287,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":288},12,"Translation",[289,297,305,309,317,325,334],{"collection":31,"item":290},{"id":291,"status":8,"sort":7,"name":292,"item":293},36,"Professional translations",[294],{"collection":234,"item":295},{"id":82,"status":8,"slug":296},"professional-translation-services",{"collection":31,"item":298},{"id":299,"status":8,"sort":7,"name":300,"item":301},48,"Crowdsourced translations",[302],{"collection":225,"item":303},{"id":137,"status":8,"slug":304},"share-tm",{"collection":106,"item":306},{"id":13,"status":8,"sort":7,"url":307,"url_text":308,"show_favorite_icon":15},"\u002Fdocs\u002Fgeneral\u002Ftranslating-strings","Translation interface",{"collection":31,"item":310},{"id":311,"status":8,"sort":7,"name":312,"item":313},55,"Machine translations",[314],{"collection":225,"item":315},{"id":13,"status":8,"slug":316},"machine-translation",{"collection":31,"item":318},{"id":319,"status":8,"sort":7,"name":320,"item":321},60,"Localazy AI translation",[322],{"collection":225,"item":323},{"id":132,"status":8,"slug":324},"localazy-ai",{"collection":31,"item":326},{"id":327,"status":8,"sort":7,"name":328,"item":329},61,"Translation Memory",[330],{"collection":225,"item":331},{"id":332,"status":8,"slug":333},35,"translation-memory",{"collection":31,"item":335},{"id":336,"status":8,"sort":7,"name":337,"item":338},63,"Code & placeholders",[339],{"collection":225,"item":340},{"id":82,"status":8,"slug":341},"code-and-placeholders",{"navigation_items_group_id":343},{"id":244,"sort":137,"status":8,"name":344,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":345},"Management",[346,350,358,367,376,384,388],{"collection":106,"item":347},{"id":137,"status":8,"sort":7,"url":348,"url_text":349,"show_favorite_icon":15},"\u002Fdocs\u002Fgeneral\u002Fdefining-user-roles","User roles",{"collection":31,"item":351},{"id":352,"status":8,"sort":7,"name":353,"item":354},51,"Duplicity Linking",[355],{"collection":225,"item":356},{"id":175,"status":8,"slug":357},"duplicity-linking",{"collection":31,"item":359},{"id":360,"status":8,"sort":7,"name":361,"item":362},52,"Language Permissions",[363],{"collection":225,"item":364},{"id":365,"status":8,"slug":366},21,"language-permissions",{"collection":31,"item":368},{"id":369,"status":370,"sort":7,"name":371,"item":372},53,"draft","Automations",[373],{"collection":225,"item":374},{"id":54,"status":8,"slug":375},"automations",{"collection":31,"item":377},{"id":378,"status":8,"sort":7,"name":379,"item":380},58,"Branching",[381],{"collection":225,"item":382},{"id":89,"status":8,"slug":383},"branching",{"collection":106,"item":385},{"id":365,"status":370,"sort":7,"url":386,"url_text":387,"show_favorite_icon":15},"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fsso-configuration","SSO",{"collection":106,"item":389},{"id":195,"status":370,"sort":7,"url":390,"url_text":391,"show_favorite_icon":15},"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Flanguage-statistics","Reporting",{"navigation_items_group_id":393},{"id":394,"sort":101,"status":8,"name":395,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":396},14,"Development",[397,404,412,419,426,434,443],{"collection":31,"item":398},{"id":132,"status":8,"sort":7,"name":399,"item":400},"Translation API",[401],{"collection":225,"item":402},{"id":216,"status":8,"slug":403},"translation-api",{"collection":31,"item":405},{"id":406,"status":8,"sort":7,"name":407,"item":408},33,"Localazy CLI",[409],{"collection":225,"item":410},{"id":147,"status":8,"slug":411},"cli",{"collection":31,"item":413},{"id":274,"status":8,"sort":7,"name":414,"item":415},"Language CDN",[416],{"collection":225,"item":417},{"id":22,"status":8,"slug":418},"language-cdn",{"collection":31,"item":420},{"id":127,"status":8,"sort":7,"name":421,"item":422},"Releases",[423],{"collection":225,"item":424},{"id":94,"status":8,"slug":425},"releases",{"collection":31,"item":427},{"id":428,"status":370,"sort":7,"name":429,"item":430},57,"Format Conversions",[431],{"collection":225,"item":432},{"id":5,"status":8,"slug":433},"format-conversions",{"collection":31,"item":435},{"id":436,"status":8,"sort":7,"name":437,"item":438},59,"Webhooks",[439],{"collection":225,"item":440},{"id":441,"status":8,"slug":442},31,"webhooks",{"collection":31,"item":444},{"id":445,"status":8,"sort":7,"name":446,"item":447},62,"Export Aliases",[448],{"collection":225,"item":449},{"id":406,"status":8,"slug":450},"export-aliases",{"id":22,"name":452,"url":7,"url_text":7,"status":8,"groups":453},"Integrations",[454,572],{"navigation_items_group_id":455},{"id":147,"sort":456,"status":8,"name":457,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":458},10,"Most popular",[459],{"collection":31,"item":460},{"id":286,"status":8,"sort":7,"name":452,"item":461},[462,470,477,484,491,498,505,512,519,526,533,542,549,556,564],{"collection":463,"item":464},"platforms",{"id":94,"status":8,"sort":26,"slug":465,"name":466,"icon":467},"android","Android",{"id":468,"title":469},"ff965add-53b0-44ad-b27c-ea4ef641d384","Ic Outline Android",{"collection":463,"item":471},{"id":147,"status":8,"sort":5,"slug":472,"name":473,"icon":474},"ios","iOS",{"id":475,"title":476},"886285d7-816a-4430-b5a5-edfe307b238e","Ios",{"collection":463,"item":478},{"id":406,"status":8,"sort":12,"slug":479,"name":480,"icon":481},"react","React",{"id":482,"title":483},"26757a90-88a3-4a94-b587-9f38614ed3bd","Logos React",{"collection":463,"item":485},{"id":175,"status":8,"sort":22,"slug":486,"name":487,"icon":488},"vuejs","Vue.js",{"id":489,"title":490},"6180b41f-3249-47d3-adcd-50fe1cf11bf1","Vue",{"collection":463,"item":492},{"id":493,"status":8,"sort":13,"slug":494,"name":495,"icon":496},16,"angular","Angular",{"id":497,"title":495},"2a31a97a-48c5-4531-aa36-41c9dd0bdbef",{"collection":463,"item":499},{"id":26,"status":8,"sort":94,"slug":500,"name":501,"icon":502},"flutter","Flutter",{"id":503,"title":504},"b9f13a11-9328-4a03-86cf-b20de0685606","Logos Flutter",{"collection":463,"item":506},{"id":12,"status":8,"sort":216,"slug":507,"name":508,"icon":509},"typescript","TypeScript",{"id":510,"title":511},"8d1319b5-8a96-4199-8407-00add3418b1f","Logos Typescript Icon",{"collection":463,"item":513},{"id":441,"status":8,"sort":286,"slug":514,"name":515,"icon":516},"javascript","JavaScript",{"id":517,"title":518},"4218d0c9-7e6b-494d-9663-37ceaf93ee8c","Logos Javascript",{"collection":463,"item":520},{"id":286,"status":8,"sort":54,"slug":521,"name":522,"icon":523},"json","JSON",{"id":524,"title":525},"99ac3b7c-dba5-4693-a4f4-1f27a6d7782d","Logos Json",{"collection":463,"item":527},{"id":365,"status":8,"sort":365,"slug":528,"name":529,"icon":530},"xliff","XLIFF",{"id":531,"title":532},"ca424cc8-e8a7-4aef-8dca-ef4a4d1334fc","Format",{"collection":463,"item":534},{"id":535,"status":8,"sort":536,"slug":537,"name":538,"icon":539},72,54,"strapi","Strapi",{"id":540,"title":541},"cde7f1d0-f2e0-4243-929e-a3f8f9146e69","Strapi Logo Purple",{"collection":463,"item":543},{"id":319,"status":8,"sort":311,"slug":544,"name":545,"icon":546},"figma","Figma",{"id":547,"title":548},"813745a4-a77d-4735-93b7-e0dd731b2304","Figma Icon",{"collection":463,"item":550},{"id":352,"status":8,"sort":248,"slug":551,"name":552,"icon":553},"microsoft-excel","Microsoft Excel",{"id":554,"title":555},"7a175955-7b96-4561-939f-a0e1924faa40","Excel",{"collection":463,"item":557},{"id":558,"status":8,"sort":327,"slug":559,"name":560,"icon":561},66,"github-actions","GitHub Actions",{"id":562,"title":563},"da17554f-ac6d-443d-9bac-1f29645ec1c6","Github Icon",{"collection":463,"item":565},{"id":566,"status":8,"sort":567,"slug":568,"name":569,"icon":570},97,999,"webflow","Webflow",{"id":571,"title":569},"ff43a386-52f8-499f-b77c-ab9a30f4a77e",{"navigation_items_group_id":573},{"id":22,"sort":216,"status":8,"name":574,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":575},"Explore more",[576],{"collection":577,"item":578},"text_link_navigation_item_type",{"id":26,"status":8,"sort":7,"text":579,"url":580,"url_text":581},"Localazy is a technology-agnostic platform supporting 50+ frameworks, file formats & popular tools.","\u002Fintegrations","See all integrations",{"id":26,"name":583,"url":7,"url_text":7,"status":8,"groups":584},"Resources",[585,618,624],{"navigation_items_group_id":586},{"id":26,"sort":286,"status":8,"name":587,"render_show_all_url":15,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":7,"represent_as_tile":15,"items":588},"Helpful Links",[589,593,597,601,605,609,614],{"collection":106,"item":590},{"id":244,"status":8,"sort":7,"url":591,"url_text":592,"show_favorite_icon":17},"\u002Fblog","Localazy Blog",{"collection":106,"item":594},{"id":394,"status":8,"sort":7,"url":595,"url_text":596,"show_favorite_icon":17},"\u002Fdocs","Documentation",{"collection":106,"item":598},{"id":26,"status":8,"sort":7,"url":599,"url_text":600,"show_favorite_icon":15},"https:\u002F\u002Fdiscuss.localazy.com\u002F","Discussion Forum",{"collection":106,"item":602},{"id":286,"status":8,"sort":7,"url":603,"url_text":604,"show_favorite_icon":15},"\u002Fcase-study","Case Studies",{"collection":106,"item":606},{"id":12,"status":8,"sort":7,"url":607,"url_text":608,"show_favorite_icon":15},"\u002Fpartnership","Become a Partner",{"collection":106,"item":610},{"id":611,"status":8,"sort":7,"url":612,"url_text":613,"show_favorite_icon":15},15,"\u002Ffaq","FAQ",{"collection":106,"item":615},{"id":253,"status":8,"sort":7,"url":616,"url_text":617,"show_favorite_icon":15},"\u002Ftags\u002Frelease-update","Release Updates",{"navigation_items_group_id":619},{"id":5,"sort":394,"status":8,"name":592,"render_show_all_url":17,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":591,"represent_as_tile":15,"items":620},[621],{"collection":20,"item":622},{"id":12,"status":8,"sort":7,"show_author_img":15,"blog_post_tag":623,"description":7},"[USE LATEST FEATURED]",{"navigation_items_group_id":625},{"id":94,"sort":244,"status":8,"name":596,"render_show_all_url":17,"show_all_url_position":16,"show_favorite_icon":15,"show_all_url":595,"represent_as_tile":15,"items":626},[627,641,653,664,676,686,697,705],{"collection":31,"item":628},{"id":22,"status":8,"sort":7,"name":629,"item":630},"General",[631],{"collection":632,"item":633},"docs_section",{"id":5,"status":8,"sort":26,"slug":634,"name":629,"icon":635,"featured_icon":638},"general",{"id":636,"title":637},"423101f1-308c-42f1-8dfe-53272019e7cb","Global",{"id":639,"title":640},"0f7ca4cb-dc3b-4f62-b476-132ed5c4931f","General Doc",{"collection":31,"item":642},{"id":13,"status":8,"sort":7,"name":643,"item":644},"CLI",[645],{"collection":632,"item":646},{"id":12,"status":8,"sort":5,"slug":411,"name":643,"icon":647,"featured_icon":650},{"id":648,"title":649},"2f7a4573-8265-4d76-8d55-ce0cc79b8983","Cli",{"id":651,"title":652},"3f76ff7b-0e74-4046-bb03-4ca99c3b66d5","Doc Cat Cli",{"collection":31,"item":654},{"id":137,"status":8,"sort":7,"name":655,"item":656},"API",[657],{"collection":632,"item":658},{"id":54,"status":8,"sort":12,"slug":659,"name":655,"icon":660,"featured_icon":661},"api",{"id":648,"title":649},{"id":662,"title":663},"20866781-e69b-4e01-9456-05437487b75c","API Doc",{"collection":31,"item":665},{"id":666,"status":8,"sort":7,"name":667,"item":668},50,"CDN",[669],{"collection":632,"item":670},{"id":113,"status":8,"sort":22,"slug":671,"name":667,"icon":672,"featured_icon":673},"cdn",{"id":636,"title":637},{"id":674,"title":675},"a8ee9cb7-4e02-41f0-b595-eb518c3085b6","Doc Cat Cdn",{"collection":31,"item":677},{"id":94,"status":8,"sort":7,"name":466,"item":678},[679],{"collection":632,"item":680},{"id":26,"status":8,"sort":13,"slug":465,"name":466,"icon":681,"featured_icon":683},{"id":682,"title":466},"fb8329ae-0c0c-4fbc-bcdc-83f2eeda1039",{"id":684,"title":685},"f7c0dec8-5b42-4943-ab3a-e3665723ad6f","Doc Cat Android",{"collection":31,"item":687},{"id":147,"status":8,"sort":7,"name":473,"item":688},[689],{"collection":632,"item":690},{"id":22,"status":8,"sort":94,"slug":472,"name":473,"icon":691,"featured_icon":694},{"id":692,"title":693},"289e136c-55df-4d51-847b-1782a2308ee4","Ios Blue",{"id":695,"title":696},"2968d3f0-14b5-4427-82e7-f1ea2de17846","Doc Cat Ios",{"collection":31,"item":698},{"id":101,"status":8,"sort":7,"name":545,"item":699},[700],{"collection":632,"item":701},{"id":365,"status":8,"sort":147,"slug":544,"name":545,"icon":702,"featured_icon":703},{"id":648,"title":649},{"id":704,"title":545},"f5e66b5b-a439-47f6-af4a-6ad261de2e87",{"collection":31,"item":706},{"id":456,"status":8,"sort":7,"name":538,"item":707},[708],{"collection":632,"item":709},{"id":142,"status":8,"sort":137,"slug":537,"name":538,"icon":710,"featured_icon":712},{"id":711,"title":538},"3b4b03c7-e131-49e6-a014-c8c2c8a2751e",{"id":713,"title":714},"1dd05c76-e517-4aea-a3d8-49cfddb40056","Strapi Doc",{"id":12,"name":716,"url":717,"url_text":716,"status":8,"groups":718},"Pricing","\u002Fpricing",[],{"id":94,"name":720,"url":721,"url_text":720,"status":8,"groups":722},"Book a demo","\u002Fbook-demo",[],{"status":8,"header_badges":724,"footer_badges":742,"footer_secured_badges":748,"slider_badges":760},[725,732,737],{"id":26,"status":8,"sort":7,"link":726,"title":727,"badgeType":728,"badgeName":729,"metadata":7,"image":730},"https:\u002F\u002Fwww.g2.com\u002Fproducts\u002Flocalazy\u002Freviews","Best meets requirements","Other","G2-winter-24-best-meets-requirments",{"id":731},"8d5dd6fd-6995-4c92-8219-a6ed5ba6acdc",{"id":5,"status":8,"sort":7,"link":726,"title":733,"badgeType":728,"badgeName":734,"metadata":7,"image":735},"Best support","G2-winter-24-best-support",{"id":736},"e59dd465-84d9-45c7-987d-dd4048fd6992",{"id":12,"status":8,"sort":7,"link":726,"title":738,"badgeType":728,"badgeName":739,"metadata":7,"image":740},"Easiest admin","G2-winter-24-easiest-admin",{"id":741},"5f12c4c8-bec0-47cf-87b4-a4502e9f1bd2",[743],{"id":286,"status":8,"sort":7,"link":726,"title":744,"badgeType":728,"badgeName":745,"metadata":7,"image":746},"Users love us","Users love us 25",{"id":747},"232416a5-86ba-4be6-85a5-b88802003d53",[749,755],{"id":216,"status":8,"sort":7,"link":750,"title":751,"badgeType":728,"badgeName":752,"metadata":7,"image":753},"https:\u002F\u002Fsprinto.com\u002Fget-iso-27001\u002F","Sprinto ISO 27001","Sprinto ISO 27001 certificate",{"id":754},"c1c6c06c-6caf-4b78-8a7e-9606c395eb61",{"id":244,"status":8,"sort":7,"link":756,"title":757,"badgeType":728,"badgeName":757,"metadata":7,"image":758},"https:\u002F\u002Fwww.aicpa.org\u002Fsoc4so","SOC certificate",{"id":759},"4f4bc0a6-09a0-41df-8295-8f990d96d941",[761,767,771,775,779,783,788],{"id":13,"status":8,"sort":7,"link":726,"title":762,"badgeType":728,"badgeName":763,"metadata":764,"image":765},"Most likely to recommend","a","",{"id":766},"da055731-3f11-4fc7-96f2-c11c0b84c831",{"id":94,"status":8,"sort":7,"link":726,"title":768,"badgeType":728,"badgeName":7,"metadata":7,"image":769},"EMEA High Performer",{"id":770},"586fb488-81f2-41db-a4e8-ef309e50c0e6",{"id":147,"status":8,"sort":7,"link":726,"title":772,"badgeType":728,"badgeName":7,"metadata":7,"image":773},"Ease of Doing Business With",{"id":774},"bfa26865-430e-463d-9886-cb56a8a8ecf6",{"id":137,"status":8,"sort":7,"link":726,"title":776,"badgeType":728,"badgeName":7,"metadata":7,"image":777},"High Performer",{"id":778},"2cc1ba0f-c23a-4c97-ad4a-a655c97466fe",{"id":101,"status":8,"sort":7,"link":726,"title":780,"badgeType":728,"badgeName":7,"metadata":7,"image":781},"Fastest Implementation",{"id":782},"6f297758-1c95-45f4-a6e9-528319897132",{"id":456,"status":8,"sort":7,"link":784,"title":785,"badgeType":728,"badgeName":7,"metadata":7,"image":786},"https:\u002F\u002Fwww.intercert.com\u002Fservices\u002Fgovernance-risk-compliance\u002Fiso-iec-27001","Intercert ISO 27001",{"id":787},"0521a5f1-e1f2-4da6-a2bc-dc92773f2a7b",{"id":216,"status":8,"sort":7,"link":750,"title":751,"badgeType":728,"badgeName":752,"metadata":7,"image":789},{"id":754},{"id":26,"status":8,"security_section_title":791,"loved_section_title":792,"columns":793,"social_links":863,"policy_links":893},"Secured & trusted","Loved by users",[794,806,821,842,845],{"id":26,"status":8,"sort":7,"title":795,"column_key":796,"links":797},"Localazy","connect",[798,800,803],{"id":216,"status":8,"sort":26,"title":720,"url":799},"___LOCALAZY_MEETING_URL___",{"id":286,"status":8,"sort":5,"title":801,"url":802},"Contact","\u002Fcontact",{"id":365,"status":8,"sort":12,"title":804,"url":805},"About us","\u002Fabout-us",{"id":5,"status":8,"sort":7,"title":807,"column_key":808,"links":809},"Programs","programs",[810,812,815,818],{"id":26,"status":8,"sort":22,"title":811,"url":607},"Partner Program",{"id":5,"status":8,"sort":13,"title":813,"url":814},"Ambassador Program","\u002Fambassador",{"id":12,"status":8,"sort":94,"title":816,"url":817},"Startup Program","\u002Ffor\u002Fstartups",{"id":22,"status":8,"sort":147,"title":819,"url":820},"Nonprofits","\u002Ffor\u002Fnonprofit",{"id":12,"status":8,"sort":7,"title":822,"column_key":823,"links":824},"Use Cases","use_cases",[825,828,831,833,836,839],{"id":13,"status":8,"sort":137,"title":826,"url":827},"Software Localization","\u002Fterm\u002Fsoftware-localization",{"id":94,"status":8,"sort":101,"title":829,"url":830},"Machine Translation Services","\u002Ffeatures\u002Fmachine-translation",{"id":147,"status":8,"sort":456,"title":399,"url":832},"\u002Ffeatures\u002Ftranslation-api",{"id":137,"status":8,"sort":216,"title":834,"url":835},"Crowdsourced Translations","\u002Ffeatures\u002Fshare-tm",{"id":101,"status":8,"sort":286,"title":837,"url":838},"Figma i18n & localization","\u002Ffeatures\u002Ffigma-localization-plugin",{"id":456,"status":8,"sort":244,"title":840,"url":841},"Translation as a Service","\u002Fterm\u002Ftranslation-service",{"id":22,"status":8,"sort":7,"title":452,"column_key":843,"links":844},"integrations",[],{"id":13,"status":8,"sort":7,"title":583,"column_key":846,"links":847},"resources",[848,849,852,853,856,858,859,860],{"id":244,"status":8,"sort":394,"title":596,"url":595},{"id":394,"status":8,"sort":611,"title":850,"url":851},"Dictionary","\u002Fdictionary",{"id":611,"status":8,"sort":493,"title":604,"url":603},{"id":493,"status":8,"sort":253,"title":854,"url":855},"Discussion forum","___DISCUSS_URL___",{"id":253,"status":8,"sort":59,"title":857,"url":591},"Localization Blog",{"id":59,"status":8,"sort":175,"title":613,"url":612},{"id":175,"status":8,"sort":54,"title":716,"url":717},{"id":54,"status":8,"sort":365,"title":861,"url":862},"Brand assets","https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1tZqsZHBlGelz7A2FwTsiwrs4j3sd9HTk",[864,869,874,879,884,889],{"id":26,"status":8,"sort":7,"platform":865,"icon":866,"url":867,"label":868},"feed","rss","\u002Ffeed.xml","Localazy RSS Feed",{"id":5,"status":8,"sort":7,"platform":870,"icon":871,"url":872,"label":873},"facebook","fb-logo","https:\u002F\u002Fwww.facebook.com\u002Flocalazy\u002F","Localazy facebook",{"id":12,"status":8,"sort":7,"platform":875,"icon":876,"url":877,"label":878},"github","github-logo","https:\u002F\u002Fgithub.com\u002Flocalazy","Localazy GitHub",{"id":22,"status":8,"sort":7,"platform":880,"icon":881,"url":882,"label":883},"x","x-twitter","https:\u002F\u002Fx.com\u002Flocalazy","Localazy X",{"id":13,"status":8,"sort":7,"platform":885,"icon":886,"url":887,"label":888},"linkedin","linkedin-logo","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002F37836599\u002F","Localazy LinkedIn",{"id":94,"status":8,"sort":7,"platform":890,"icon":891,"url":855,"label":892},"discourse","discourse-logo","Localazy Discourse",[894,897,900],{"id":26,"status":8,"sort":7,"title":895,"url":896,"action":7},"Privacy policy","\u002Fprivacy-policy",{"id":5,"status":8,"sort":7,"title":898,"url":899,"action":7},"Terms & Conditions","\u002Fterms-and-conditions",{"id":12,"status":8,"sort":7,"title":901,"url":7,"action":902},"Cookies","cookie-consent",[904,1044,1122,1228,1314,1393,1482,1573,1660,1759],{"id":406,"status":8,"created_on":905,"modified_on":906,"name":480,"slug":479,"description":907,"docs_link":908,"priority":7,"has_sdk":15,"sort":12,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":909,"show_in_spa":17,"is_file_format":15,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":910,"tile_subtitle":911,"tile_description":912,"is_enterprise":15,"is_popular":15,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"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":406},"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":521},[],{"id":482},{"id":917},"a97492ec-ee8d-429c-bf66-d0fe59b6e5c9",{"id":13,"status":8,"sort":5,"created_on":919,"label":920,"hidden":15,"icon":921,"translations":923},"2022-03-17T12:23:44.000Z","Web apps",{"id":922},"c9e70e4f-8136-432a-8d82-53c3501a9eb4",[924,926,929,932],{"id":13,"languages_code":925,"label":920},"xxa",{"id":230,"languages_code":927,"label":928},"es","Aplicaciones web",{"id":666,"languages_code":930,"label":931},"cs","Webové aplikace",{"id":436,"languages_code":933,"label":920},"en",[935,942],{"id":13,"status":8,"sort":5,"label":920,"hidden":15,"created_on":919,"icon":936,"translations":937},{"id":922},[938,939,940,941],{"id":13,"languages_code":925,"label":920},{"id":230,"languages_code":927,"label":928},{"id":666,"languages_code":930,"label":931},{"id":436,"languages_code":933,"label":920},{"id":137,"status":8,"sort":101,"label":943,"hidden":15,"created_on":944,"icon":7,"translations":945},"Framework","2022-03-17T12:23:45.000Z",[946,947,949,950],{"id":137,"languages_code":925,"label":943},{"id":369,"languages_code":927,"label":948},"Marco",{"id":319,"languages_code":930,"label":943},{"id":951,"languages_code":933,"label":943},67,[953,965,990,1011],{"id":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":956},"Translate strings directly or upload them into your Localazy project.","\u002Fdocs\u002Fapi\u002Fintroduction",[957,958,961,963],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},40,"Utilice la API para exportar traducciones e importar contenido de\u002Fa Localazy mediante programación.",{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},"Choose between translating strings directly or uploading them into Localazy.",{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},"Pomocí rozhraní API můžete programovaně exportovat překlady a importovat obsah z\u002Fdo Localazy.",{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"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":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},"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":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},"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":269,"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":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},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":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"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":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},"Carga directa de archivos","Cargue sus textos y traducciones existentes en cualquier formato directamente para empezar rápidamente.",{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},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":7},85,"Direkter Datei-Upload","Laden Sie Ihre Texte und vorhandenen Übersetzungen in einem beliebigen Format direkt hoch, um schnell loszulegen.",{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"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":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},"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":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},"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":7},87,"Befehlszeilenschnittstelle","Die beste Option für Entwickler, die die Lokalisierung zu einem automatisierten Teil ihres Arbeitsablaufs machen möchten.",[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1030},[1031,1032,1033,1034,1035],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[1037],{"id":1038,"status":8,"created_on":1039,"sort":7,"slug":1040,"label":1041,"on_faq_index":7},76,"2025-02-26T12:44:29.000Z","front-end-common","Front-end Common",[1043],{"languages_code":925,"name":480,"slug":479,"description":907,"support_type":909,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":911,"tile_description":912,"id":406,"platforms_id":406,"docs_link":908},{"id":175,"status":8,"created_on":905,"modified_on":1045,"name":487,"slug":486,"description":1046,"docs_link":908,"priority":7,"has_sdk":15,"sort":22,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":909,"show_in_spa":17,"is_file_format":15,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":910,"tile_subtitle":1047,"tile_description":1048,"is_enterprise":15,"is_popular":15,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"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":175},"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":521},[],{"id":489},{"id":1053},"8171b836-d6b8-4354-8db3-34ccd384970d",{"id":13,"status":8,"sort":5,"created_on":919,"label":920,"hidden":15,"icon":1055,"translations":1056},{"id":922},[1057,1058,1059,1060],{"id":13,"languages_code":925,"label":920},{"id":230,"languages_code":927,"label":928},{"id":666,"languages_code":930,"label":931},{"id":436,"languages_code":933,"label":920},[1062,1069],{"id":13,"status":8,"sort":5,"label":920,"hidden":15,"created_on":919,"icon":1063,"translations":1064},{"id":922},[1065,1066,1067,1068],{"id":13,"languages_code":925,"label":920},{"id":230,"languages_code":927,"label":928},{"id":666,"languages_code":930,"label":931},{"id":436,"languages_code":933,"label":920},{"id":137,"status":8,"sort":101,"label":943,"hidden":15,"created_on":944,"icon":7,"translations":1070},[1071,1072,1073,1074],{"id":137,"languages_code":925,"label":943},{"id":369,"languages_code":927,"label":948},{"id":319,"languages_code":930,"label":943},{"id":951,"languages_code":933,"label":943},[1076,1082,1092,1099],{"id":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1077},[1078,1079,1080,1081],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1083},[1084,1085,1086,1087,1088,1089,1090,1091],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1093},[1094,1095,1096,1097,1098],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1100},[1101,1102,1103,1104,1105],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1108},[1109,1110,1111,1112,1113],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[1115,1119],{"id":1004,"status":8,"created_on":1116,"sort":7,"slug":1117,"label":1118,"on_faq_index":7},"2023-03-01T11:21:41.000Z","vue-localization","Vue.js Localization",{"id":1038,"status":8,"created_on":1039,"sort":7,"slug":1040,"label":1041,"on_faq_index":7},[1121],{"languages_code":925,"name":487,"slug":486,"description":1046,"support_type":909,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1047,"tile_description":1048,"id":175,"platforms_id":175,"docs_link":908},{"id":26,"status":8,"created_on":905,"modified_on":1123,"name":501,"slug":500,"description":1124,"docs_link":1125,"priority":7,"has_sdk":15,"sort":94,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1126,"show_in_spa":17,"is_file_format":15,"meta_title":7,"meta_description":7,"featured_on_web":15,"marketing_subtitle":910,"tile_subtitle":1126,"tile_description":1127,"is_enterprise":15,"is_popular":15,"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":26},"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":503},{"id":1138},"c2674666-4371-4aa4-9a65-438c7363fafe",{"id":94,"status":8,"sort":137,"created_on":944,"label":1140,"hidden":15,"icon":1141,"translations":1143},"Mobile apps",{"id":1142},"c9c7e1f5-8b59-4016-ae0c-6fba9469cd55",[1144,1145,1147,1149],{"id":94,"languages_code":925,"label":1140},{"id":239,"languages_code":927,"label":1146},"Aplicaciones móviles",{"id":311,"languages_code":930,"label":1148},"Mobilní aplikace",{"id":278,"languages_code":933,"label":1140},[1151,1162,1169,1176],{"id":147,"status":8,"sort":175,"label":1152,"hidden":15,"created_on":944,"icon":1153,"translations":1155},"Desktop & Games",{"id":1154},"65b04533-5b4c-430c-b8a4-ecce84754200",[1156,1157,1159,1161],{"id":147,"languages_code":925,"label":1152},{"id":248,"languages_code":927,"label":1158},"Escritorio y Juegos",{"id":1004,"languages_code":930,"label":1160},"Stolní počítače & Hry",{"id":558,"languages_code":933,"label":1152},{"id":13,"status":8,"sort":5,"label":920,"hidden":15,"created_on":919,"icon":1163,"translations":1164},{"id":922},[1165,1166,1167,1168],{"id":13,"languages_code":925,"label":920},{"id":230,"languages_code":927,"label":928},{"id":666,"languages_code":930,"label":931},{"id":436,"languages_code":933,"label":920},{"id":94,"status":8,"sort":137,"label":1140,"hidden":15,"created_on":944,"icon":1170,"translations":1171},{"id":1142},[1172,1173,1174,1175],{"id":94,"languages_code":925,"label":1140},{"id":239,"languages_code":927,"label":1146},{"id":311,"languages_code":930,"label":1148},{"id":278,"languages_code":933,"label":1140},{"id":82,"status":8,"sort":274,"label":1177,"hidden":17,"created_on":944,"icon":7,"translations":1178},"ARB",[1179,1180,1182,1184],{"id":82,"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":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1188},[1189,1190,1191,1192],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1194},[1195,1196,1197,1198,1199,1200,1201,1202],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1204},[1205,1206,1207,1208,1209],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1211},[1212,1213,1214,1215,1216],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1219},[1220,1221,1222,1223,1224],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],[1227],{"languages_code":925,"name":501,"slug":500,"description":1124,"support_type":1126,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1126,"tile_description":1127,"id":26,"platforms_id":26,"docs_link":1125},{"id":441,"status":8,"created_on":1229,"modified_on":1230,"name":515,"slug":514,"description":1231,"docs_link":1232,"priority":7,"has_sdk":15,"sort":286,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1233,"show_in_spa":17,"is_file_format":15,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":910,"tile_subtitle":1233,"tile_description":1234,"is_enterprise":15,"is_popular":15,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"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":441},"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":517},{"id":1240},"2c6699eb-1d80-4772-8268-5597dbcead8c",{"id":456,"status":8,"sort":456,"created_on":944,"label":1242,"hidden":15,"icon":1243,"translations":1245},"Programming Languages",{"id":1244},"8c5836bb-1fbe-49c5-9330-8f931838c457",[1246,1247,1249,1252],{"id":456,"languages_code":925,"label":1242},{"id":336,"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":13,"status":8,"sort":5,"label":920,"hidden":15,"created_on":919,"icon":1256,"translations":1257},{"id":922},[1258,1259,1260,1261],{"id":13,"languages_code":925,"label":920},{"id":230,"languages_code":927,"label":928},{"id":666,"languages_code":930,"label":931},{"id":436,"languages_code":933,"label":920},{"id":456,"status":8,"sort":456,"label":1242,"hidden":15,"created_on":944,"icon":1263,"translations":1264},{"id":1244},[1265,1266,1267,1268],{"id":456,"languages_code":925,"label":1242},{"id":336,"languages_code":927,"label":1248},{"id":1250,"languages_code":930,"label":1251},{"id":1253,"languages_code":933,"label":1242},[1270,1276,1286,1293],{"id":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1271},[1272,1273,1274,1275],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1277},[1278,1279,1280,1281,1282,1283,1284,1285],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1287},[1288,1289,1290,1291,1292],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1294},[1295,1296,1297,1298,1299],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1302},[1303,1304,1305,1306,1307],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[1309],{"id":332,"status":8,"created_on":1310,"sort":7,"slug":1311,"label":515,"on_faq_index":15},"2022-06-10T09:49:33.000Z","javascript-i18n-localization",[1313],{"languages_code":925,"name":515,"slug":514,"description":1231,"support_type":1233,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1233,"tile_description":1234,"id":441,"platforms_id":441,"docs_link":1232},{"id":286,"status":8,"created_on":1229,"modified_on":1315,"name":522,"slug":521,"description":1316,"docs_link":908,"priority":7,"has_sdk":15,"sort":54,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1317,"show_in_spa":17,"is_file_format":17,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":910,"tile_subtitle":1318,"tile_description":1319,"is_enterprise":15,"is_popular":17,"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":286},"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":521},[],{"id":524},{"id":1329},"8d614c20-667e-4bee-a64d-7d7ce9c0ee0a",{"id":22,"status":8,"sort":13,"created_on":944,"label":1331,"hidden":15,"icon":1332,"translations":1334},"File formats",{"id":1333},"ab7c8f89-dcce-45ab-9e21-8605aef289c3",[1335,1336,1338,1340],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},"Formatos de archivo",{"id":352,"languages_code":930,"label":1339},"Formáty souborů",{"id":445,"languages_code":933,"label":1331},[1342],{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1343,"translations":1344},{"id":1333},[1345,1346,1347,1348],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},[1350,1356,1366,1373],{"id":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1351},[1352,1353,1354,1355],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1357},[1358,1359,1360,1361,1362,1363,1364,1365],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1367},[1368,1369,1370,1371,1372],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1374},[1375,1376,1377,1378,1379],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1382},[1383,1384,1385,1386,1387],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[1389],{"id":291,"status":8,"created_on":1390,"sort":7,"slug":521,"label":522,"on_faq_index":15},"2022-06-10T10:49:07.000Z",[1392],{"languages_code":925,"name":522,"slug":521,"description":1316,"support_type":1317,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1318,"tile_description":1319,"id":286,"platforms_id":286,"docs_link":908},{"id":365,"status":8,"created_on":1229,"modified_on":1394,"name":529,"slug":528,"description":1395,"docs_link":1396,"priority":7,"has_sdk":15,"sort":365,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1397,"show_in_spa":15,"is_file_format":17,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":910,"tile_subtitle":1398,"tile_description":1399,"is_enterprise":15,"is_popular":17,"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":365},"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":531},{"id":1410},"889970a6-cce8-4055-b96a-9c3f292aa67f",{"id":22,"status":8,"sort":13,"created_on":944,"label":1331,"hidden":15,"icon":1412,"translations":1413},{"id":1333},[1414,1415,1416,1417],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},[1419,1426,1433],{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1420,"translations":1421},{"id":1333},[1422,1423,1424,1425],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1427,"translations":1428},{"id":1333},[1429,1430,1431,1432],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1434,"translations":1435},{"id":1333},[1436,1437,1438,1439],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},[1441,1447,1457,1464],{"id":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1442},[1443,1444,1445,1446],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1448},[1449,1450,1451,1452,1453,1454,1455,1456],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1458},[1459,1460,1461,1462,1463],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1465},[1466,1467,1468,1469,1470],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1473},[1474,1475,1476,1477,1478],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],[1481],{"languages_code":925,"name":529,"slug":528,"description":1395,"support_type":1397,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1398,"tile_description":1399,"id":365,"platforms_id":365,"docs_link":1396},{"id":54,"status":8,"created_on":1483,"modified_on":1483,"name":1484,"slug":1485,"description":1486,"docs_link":1487,"priority":7,"has_sdk":15,"sort":108,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1397,"show_in_spa":17,"is_file_format":17,"meta_title":7,"meta_description":7,"featured_on_web":15,"marketing_subtitle":910,"tile_subtitle":1488,"tile_description":1489,"is_enterprise":15,"is_popular":17,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"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":54},"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":22,"status":8,"sort":13,"created_on":944,"label":1331,"hidden":15,"icon":1497,"translations":1498},{"id":1333},[1499,1500,1501,1502],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},[1504,1511,1521],{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1505,"translations":1506},{"id":1333},[1507,1508,1509,1510],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},{"id":261,"status":8,"sort":261,"label":1512,"hidden":17,"created_on":944,"icon":7,"translations":1513},"C++",[1514,1515,1517,1519],{"id":261,"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":365,"status":8,"sort":108,"label":1522,"hidden":17,"created_on":944,"icon":7,"translations":1523},"Gettext",[1524,1525,1527,1529],{"id":365,"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":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1533},[1534,1535,1536,1537],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1539},[1540,1541,1542,1543,1544,1545,1546,1547],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1549},[1550,1551,1552,1553,1554],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1556},[1557,1558,1559,1560,1561],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1564},[1565,1566,1567,1568,1569],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],[1572],{"languages_code":925,"name":1484,"slug":1485,"description":1486,"support_type":1397,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1488,"tile_description":1489,"id":54,"platforms_id":54,"docs_link":1487},{"id":113,"status":8,"created_on":1229,"modified_on":1574,"name":1575,"slug":1576,"description":1577,"docs_link":1578,"priority":7,"has_sdk":15,"sort":89,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1397,"show_in_spa":17,"is_file_format":17,"meta_title":7,"meta_description":7,"featured_on_web":15,"marketing_subtitle":910,"tile_subtitle":1579,"tile_description":1580,"is_enterprise":15,"is_popular":15,"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":113},"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":22,"status":8,"sort":13,"created_on":944,"label":1331,"hidden":15,"icon":1592,"translations":1593},{"id":1333},[1594,1595,1596,1597],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},[1599,1606],{"id":22,"status":8,"sort":13,"label":1331,"hidden":15,"created_on":944,"icon":1600,"translations":1601},{"id":1333},[1602,1603,1604,1605],{"id":22,"languages_code":925,"label":1331},{"id":221,"languages_code":927,"label":1337},{"id":352,"languages_code":930,"label":1339},{"id":445,"languages_code":933,"label":1331},{"id":108,"status":8,"sort":113,"label":1607,"hidden":17,"created_on":944,"icon":7,"translations":1608},"C#",[1609,1610,1612,1614],{"id":108,"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":22,"status":8,"sort":94,"label":655,"alternative_label":7,"slug":659,"description":954,"documentation_link":955,"loc_icon":659,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1618},[1619,1620,1621,1622],{"id":22,"languages_code":925,"label":655,"description":954,"slug":659},{"id":959,"languages_code":927,"label":655,"description":960,"slug":659},{"id":666,"languages_code":933,"label":655,"description":962,"slug":659},{"id":436,"languages_code":930,"label":655,"description":964,"slug":659},{"id":12,"status":8,"sort":13,"label":966,"alternative_label":7,"slug":967,"description":968,"documentation_link":969,"loc_icon":970,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1624},[1625,1626,1627,1628,1629,1630,1631,1632],{"id":12,"languages_code":925,"label":966,"description":968,"slug":967},{"id":154,"languages_code":927,"label":974,"description":975,"slug":7},{"id":352,"languages_code":933,"label":966,"description":968,"slug":967},{"id":319,"languages_code":930,"label":978,"description":979,"slug":7},{"id":269,"languages_code":927,"label":981,"description":982,"slug":967},{"id":278,"languages_code":933,"label":966,"description":968,"slug":967},{"id":558,"languages_code":930,"label":978,"description":979,"slug":967},{"id":986,"languages_code":987,"label":988,"description":989,"slug":7},{"id":5,"status":8,"sort":22,"label":991,"alternative_label":992,"slug":993,"description":994,"documentation_link":995,"loc_icon":996,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1634},[1635,1636,1637,1638,1639],{"id":5,"languages_code":925,"label":991,"description":994,"slug":993},{"id":77,"languages_code":927,"label":1000,"description":1001,"slug":7},{"id":248,"languages_code":933,"label":991,"description":994,"slug":993},{"id":1004,"languages_code":930,"label":1005,"description":1006,"slug":7},{"id":1008,"languages_code":987,"label":1009,"description":1010,"slug":7},{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1641},[1642,1643,1644,1645,1646],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[],{"id":26,"status":8,"sort":12,"label":1012,"alternative_label":643,"slug":411,"description":1013,"documentation_link":1014,"loc_icon":411,"is_official_plugin":15,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1649},[1650,1651,1652,1653,1654],{"id":26,"languages_code":925,"label":1012,"description":1013,"slug":411},{"id":66,"languages_code":927,"label":1018,"description":1019,"slug":411},{"id":239,"languages_code":933,"label":1012,"description":1013,"slug":411},{"id":311,"languages_code":930,"label":1022,"description":1023,"slug":411},{"id":1025,"languages_code":987,"label":1026,"description":1027,"slug":7},[1656],{"id":221,"status":8,"created_on":1657,"sort":7,"slug":1576,"label":1575,"on_faq_index":7},"2022-08-01T16:44:06.000Z",[1659],{"languages_code":925,"name":1575,"slug":1576,"description":1577,"support_type":1397,"meta_title":7,"meta_description":7,"marketing_subtitle":910,"tile_subtitle":1579,"tile_description":1580,"id":113,"platforms_id":113,"docs_link":1578},{"id":535,"status":8,"created_on":1661,"modified_on":1662,"name":538,"slug":537,"description":1663,"docs_link":1664,"priority":7,"has_sdk":7,"sort":536,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1665,"show_in_spa":17,"is_file_format":7,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":1665,"tile_subtitle":1665,"tile_description":1666,"is_enterprise":15,"is_popular":17,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"format_to_extension":7,"upload_features":7,"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":535},"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":540},{"id":1669},"5995b721-a2ea-487e-ad4b-298a489bbd24",{"id":286,"status":8,"sort":216,"created_on":944,"label":1671,"hidden":15,"icon":1672,"translations":1674},"CMS",{"id":1673},"1172a655-928c-4594-9263-d8afdfd9cd79",[1675,1676,1678,1680],{"id":286,"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":59,"status":8,"sort":253,"label":1684,"hidden":15,"created_on":944,"icon":7,"translations":1685},"Multilingual SEO",[1686,1687,1690,1693],{"id":59,"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":406,"status":8,"sort":406,"label":165,"hidden":15,"created_on":944,"icon":1696,"translations":1698},{"id":1697},"e782ed3f-d954-45ca-8b17-5bf5fe95f30a",[1699,1700,1703,1705],{"id":406,"languages_code":925,"label":165},{"id":1701,"languages_code":927,"label":1702},132,"Comercio electrónico",{"id":1704,"languages_code":930,"label":165},137,{"id":1706,"languages_code":933,"label":165},142,{"id":286,"status":8,"sort":216,"label":1671,"hidden":15,"created_on":944,"icon":1708,"translations":1709},{"id":1673},[1710,1711,1712,1713],{"id":286,"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":5,"status":8,"sort":94,"label":1715,"hidden":15,"created_on":944,"icon":1716,"translations":1718},"Marketing tools",{"id":1717},"098fe6a4-dd2e-42d8-937e-2d8121e6e266",[1719,1720,1723,1725],{"id":5,"languages_code":925,"label":1715},{"id":1721,"languages_code":927,"label":1722},43,"Herramientas de marketing",{"id":299,"languages_code":930,"label":1724},"Marketingové nástroje",{"id":378,"languages_code":933,"label":1715},[1727],{"id":137,"status":8,"sort":7,"label":1728,"alternative_label":1729,"slug":1730,"description":1731,"documentation_link":1732,"loc_icon":1733,"is_official_plugin":17,"is_universal_plugin":15,"universal_plugin_vendor":7,"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":137,"languages_code":925,"label":1728,"description":1731,"slug":1730},{"id":1721,"languages_code":927,"label":1737,"description":1738,"slug":7},"Complemento Oficial de Strapi","Nuestros desarrolladores mantienen un complemento oficial de localización de Strapi. ¡Empiece en unos pocos clics!",{"id":369,"languages_code":933,"label":1728,"description":1731,"slug":1730},{"id":445,"languages_code":930,"label":1741,"description":1742,"slug":7},"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":7},"Offizielles Strapi-Plugin","Unsere Entwickler pflegen ein offizielles Strapi-Lokalisierungs-Plugin. Starten Sie mit ein paar Klicks!",[],{"id":137,"status":8,"sort":7,"label":1728,"alternative_label":1729,"slug":1730,"description":1731,"documentation_link":1732,"loc_icon":1733,"is_official_plugin":17,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1748},[1749,1750,1751,1752,1753],{"id":137,"languages_code":925,"label":1728,"description":1731,"slug":1730},{"id":1721,"languages_code":927,"label":1737,"description":1738,"slug":7},{"id":369,"languages_code":933,"label":1728,"description":1731,"slug":1730},{"id":445,"languages_code":930,"label":1741,"description":1742,"slug":7},{"id":1688,"languages_code":987,"label":1744,"description":1745,"slug":7},[1755],{"id":66,"status":8,"created_on":1756,"sort":7,"slug":537,"label":538,"on_faq_index":7},"2022-06-16T09:24:13.000Z",[1758],{"languages_code":925,"name":538,"slug":537,"description":1663,"support_type":1665,"meta_title":7,"meta_description":7,"marketing_subtitle":1665,"tile_subtitle":1665,"tile_description":1666,"id":535,"platforms_id":535,"docs_link":1664},{"id":319,"status":8,"created_on":1229,"modified_on":1760,"name":545,"slug":544,"description":7,"docs_link":1761,"priority":7,"has_sdk":15,"sort":311,"highlighted":15,"in_menu":17,"changefreq":7,"support_type":1762,"show_in_spa":17,"is_file_format":15,"meta_title":7,"meta_description":7,"featured_on_web":17,"marketing_subtitle":1763,"tile_subtitle":1764,"tile_description":1765,"is_enterprise":15,"is_popular":17,"primary_use_case":7,"hierarchy_handling":7,"best_for":7,"file_extension":7,"format_code_example":7,"format_to_extension":7,"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":319},"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":547},{"id":1769},"7573fed6-8817-4cb4-84d2-be327e6c4891",{"id":12,"status":8,"sort":147,"created_on":944,"label":1771,"hidden":15,"icon":1772,"translations":1774},"Design tools",{"id":1773},"1053d863-b690-4fbd-aadf-dbf2ba282768",[1775,1776,1779,1782],{"id":12,"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":428,"languages_code":933,"label":1771},[1784],{"id":12,"status":8,"sort":147,"label":1771,"hidden":15,"created_on":944,"icon":1785,"translations":1786},{"id":1773},[1787,1788,1789,1790],{"id":12,"languages_code":925,"label":1771},{"id":1777,"languages_code":927,"label":1778},{"id":1780,"languages_code":930,"label":1781},{"id":428,"languages_code":933,"label":1771},[1792],{"id":147,"status":8,"sort":7,"label":1729,"alternative_label":1729,"slug":1793,"description":1794,"documentation_link":595,"loc_icon":1733,"is_official_plugin":17,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1795},"official-plugin","Our developers maintain an official plugin for this integration. Start in a few clicks!",[1796,1797,1800,1801],{"id":147,"languages_code":925,"label":1729,"description":1794,"slug":1793},{"id":142,"languages_code":927,"label":1798,"description":1799,"slug":7},"Plugin Oficial","Nuestros desarrolladores mantienen un plugin oficial para esta integración. ¡Empiece con unos pocos clics!",{"id":132,"languages_code":933,"label":1729,"description":1794,"slug":1793},{"id":332,"languages_code":930,"label":1802,"description":1803,"slug":7},"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":147,"status":8,"sort":7,"label":1729,"alternative_label":1729,"slug":1793,"description":1794,"documentation_link":595,"loc_icon":1733,"is_official_plugin":17,"is_universal_plugin":15,"universal_plugin_vendor":7,"translations":1806},[1807,1808,1809,1810],{"id":147,"languages_code":925,"label":1729,"description":1794,"slug":1793},{"id":142,"languages_code":927,"label":1798,"description":1799,"slug":7},{"id":132,"languages_code":933,"label":1729,"description":1794,"slug":1793},{"id":332,"languages_code":930,"label":1802,"description":1803,"slug":7},[],[1813],{"languages_code":925,"name":545,"slug":544,"description":7,"support_type":1762,"meta_title":7,"meta_description":7,"marketing_subtitle":1763,"tile_subtitle":1764,"tile_description":1765,"id":319,"platforms_id":319,"docs_link":1761},{"id":1815,"owner":1816,"created_by":7,"sort":7,"title":1821,"slug":1822,"modified_on":764,"created_on":1823,"pinned":15,"badge":7,"priority":1824,"main_image":1825,"status":8,"tags":1826,"dictionary":1834,"reading_time":1835,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"69d78a237ab1270001eddabf",{"id":1817,"first_name":1818,"last_name":764,"slug":1819,"avatar":1820},"606c233dcf7b6a0001d1da93","Petr Hodný","petr-hodny","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fpetr.png","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","0.7","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F04\u002FLocalazy-AI-translation-api.png",[1827,1829,1832],{"id":319,"created_on":1828,"status":8,"label":655,"slug":659,"on_index_page":15},"2026-06-13 11:53:38",{"id":269,"created_on":1828,"status":8,"label":1830,"slug":1831,"on_index_page":17},"AI","ai",{"id":319,"created_on":1828,"status":8,"label":217,"slug":1833,"on_index_page":17},"localization",[],0,{"id":1837,"owner":1838,"created_by":7,"sort":7,"title":1843,"slug":1844,"modified_on":764,"created_on":1845,"pinned":15,"badge":7,"priority":1824,"main_image":1846,"status":8,"tags":1847,"dictionary":1856,"reading_time":1835,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"69e62c567ab1270001ede506",{"id":1839,"first_name":1840,"last_name":764,"slug":1841,"avatar":1842},"6824a22d63350c0001d5a5d4","Stephanie Casale","stephanie-casale","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F03\u002FStephanie.png","4 Arabic localization assumptions that fail in the real world, told by a Marine Corps linguist","4-arabic-localization-assumptions-that-fail-told-by-a-marine-corps-linguist","2026-06-09T17:41:36.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F06\u002FArabicLocal---Marine-Corps-5.png",[1848,1849,1853],{"id":319,"created_on":1828,"status":8,"label":217,"slug":1833,"on_index_page":17},{"id":1850,"created_on":1828,"status":8,"label":1851,"slug":1852,"on_index_page":15},646,"Business Development","business-development",{"id":319,"created_on":1828,"status":8,"label":1854,"slug":1855,"on_index_page":15},"Locales","locales",[],{"post":1858,"relatedPosts":1948,"banner":2004},{"id":1859,"owner":1860,"created_by":7,"sort":7,"title":1865,"slug":1866,"modified_on":1867,"created_on":1868,"pinned":17,"badge":7,"priority":1824,"main_image":1869,"status":8,"tags":1870,"dictionary":1879,"reading_time":611,"excerpt":1892,"og_title":764,"og_description":764,"og_image":764,"content":1893,"meta_title":764,"meta_description":764,"canonical":764,"cta":1894,"fullGhostPost":1902},"6543c2c10470910001941851",{"id":1861,"first_name":1862,"last_name":764,"slug":1863,"avatar":1864},"1","Václav Hodek","vaclav-hodek","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fvasek.png","The ultimate guide to Localazy CDN","the-ultimate-guide-to-localazy-cdn","2024-02-06T14:17:44.000+01:00","2023-11-06T08:02:00.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fultimate-localazy-CDN-guide.png",[1871,1873,1876],{"id":1872,"created_on":1828,"status":8,"label":667,"slug":671,"on_index_page":15},611456,{"id":319,"created_on":1828,"status":8,"label":1874,"slug":1875,"on_index_page":15},"HowTo","howto",{"id":319,"created_on":1828,"status":8,"label":1877,"slug":1878,"on_index_page":15},"Guide","guide",[1880],{"id":1881,"status":8,"owner":1882,"created_on":1883,"title":1884,"excerpt":1885,"content":1886,"slug":671,"meta_title":764,"meta_description":764,"canonical":764,"related_terms":1887},124,"4d38dee1-a9d9-4a00-a57d-3ced2b7cb39c","2023-02-21T16:24:04.000Z","CDN - Content Delivery Network","A network of computers interconnected via the Internet to make data more accessible to users worldwide.","A Content Delivery Network (CDN) is a system of servers that delivers web content quickly to users based on their geographic location. Another name for CDN is **Content Distribution Network**. It’s basically a network that stores and delivers web content like images, videos, and scripts. \n\nIndividual CDN nodes are typically connected to a fast Internet backbone. Their number varies according to the chosen architecture and can reach up to several thousand nodes with tens of thousands of servers. Optimization through CDN results in lower hosting prices, faster sites, and increased resilience against traffic bursts on the served site.\n\nSuch a network consists of the following:\n\n* **A source server** that provides the content to the CDN.\n* **Elements** located in different parts of the Internet infrastructure where the content is replicated\n* **A routing system** that ensures that content is delivered to the user from the geographically closest node in the network\n\nCDNs reduce latency and improve website performance by caching content across multiple data centers worldwide. They also help balance traffic, handle large amounts of data, and protect against cyberattacks like DDoS. Common examples include services like Cloudflare, Akamai, and Amazon CloudFront. \n\n### **Key points about CDNs:**\n\n* Speed up website loading by reducing server response time.\n* Improve global content availability and reliability.\n* Reduce server load and prevent website crashes during traffic spikes.\n* Offer protection against cyber threats like DDoS attacks.\n* Commonly used by websites, apps, and streaming platforms.\n\n### **Localazy CDN**\n\nLocalazy offers its own CDN for your localized projects. Customers of Localazy can use the Localazy CDN built on top of Amazon Web Services architecture to deliver translation files directly to their users across the globe. You can learn more about it in the resources down below:\n\n* [Localazy CDN: Introduction](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcdn\u002Fcdn-introduction)\n* [The ultimate guide to Localazy CDN](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fthe-ultimate-guide-to-localazy-cdn?srsltid=AfmBOor9BZkd2UjpLoibQpI8UKlprCjSrh_lAAM3i9qmdlX0yWGBLqJz)\n* [8 reasons why delivering translations via Localazy CDN is a good idea](https:\u002F\u002Flocalazy.com\u002Fblog\u002F8-reasons-why-delivering-translations-via-localazy-cdn-is-a-good-idea)\n* [How Localazy CDN reduces TCO (with examples)](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fhow-localazy-cdn-reduces-total-cost-of-ownership-with-examples)",[1888,1890],{"id":13,"slug":1889},"globalization",{"id":378,"slug":1891},"continuous-integration","Learn everything you need to know to unlock the full potential of Localazy CDN. Deliver languages dynamically to your users all over the world, A\u002FB test localized marketing copy, and maintain your translations always up to date. ","\u003Cp>When working on a software project, you usually master the programming language used for its development. You can \"speak\" it fluently. Even though it's normal to introduce bugs, you can avoid many of them by testing your code. Thanks to your knowledge, tools, and processes, you can ship a product that's great and comes with no critical errors.\u003C\u002Fp>\u003Cp>All of this essential knowledge resides in your team. It, however, doesn't apply to localization, as most SMBs can't afford the luxury of having internal people speaking all the supported languages.\u003C\u002Fp>\u003Cp>\"Bugs\" in localization are often not as critical as your software crashing completely, but they can still have adverse effects - it's not uncommon for people to lose their data because of a bad translation; they don't understand what they are doing because the translation provides misleading information. Such an issue can earn you bad reviews and potentially drive many users away from your product.\u003C\u002Fp>\u003Cp>When a critical bug in the software is found, it's usually necessary to fix it, run all the tests to ensure everything works correctly with the updated code, prepare the release, and publish it. You don't want to do all of this just because there are a few issues in translation. \u003C\u002Fp>\u003Cp>So, is there a better way? \u003C\u002Fp>\u003Cp>You probably expect me to say: \"Yes, it is.\" and you are right; there's indeed a better way with more benefits than just fixing issues… The answer is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn\">Localazy CDN\u003C\u002Fa>.\u003C\u002Fp>\u003Ch2 id=\"what-are-the-benefits\">💙 What are the benefits? \u003Ca class=\"markdownit-header-anchor\" href=\"#what-are-the-benefits\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Several vital benefits make CDN a perfect part of the localization process. So, what can you do with CDN?\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>Fix localization fails.\u003C\u002Fstrong> And do so without the need to release a new version of the app.\u003C\u002Fli>\u003Cli>\u003Cstrong>Speed up releases.\u003C\u002Fstrong> When there is a mechanism to update translation over the air, you can get the new version of your app out quickly and finish less important languages after the release.\u003C\u002Fli>\u003Cli>\u003Cstrong>Add languages dynamically.\u003C\u002Fstrong> Without downloading the new version of your app, the users can just start using it in their language when it's ready.\u003C\u002Fli>\u003Cli>\u003Cstrong>Remove developers from the localization process.\u003C\u002Fstrong> No need to bother developers whenever there's a fix in translated files to be published. All the changes are live in a couple of minutes without any interaction. Developers will thank you since they won't waste their time on trivial tasks anymore. And business people, too - they can get their changes up and running quickly.\u003C\u002Fli>\u003C\u002Ful>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1151\" height=\"570\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002Fimage.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage.png 1151w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch4 id=\"recommended-reading\">Recommended reading\u003C\u002Fh4>\u003Cp>Before you dive in, you might like to check these three articles to get a better idea about our CDN:\u003C\u002Fp>\u003Cul>\u003Cli>The Basics: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fdeliver-translated-files-localazy-cdn-tutorial\">Deliver translated files seamlessly via Localazy CDN\u003C\u002Fa> 🌍\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002F8-reasons-why-delivering-translations-via-localazy-cdn-is-a-good-idea\">8 Reasons Why Delivering Translations via Localazy CDN Is a Good Idea\u003C\u002Fa> \u003C\u002Fli>\u003Cli>Case Study: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fcase-study-rouvy-localization\">🚴 ROUVY's Tour de localization with Localazy\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>In the following text, we will focus on a complete guide both for always-online and offline apps with the option to add languages dynamically. Intentionally, we will not resort to one programming language or framework but discuss the basic concept. Along the way, we will briefly discuss more advanced concepts like the metafile or releases.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-embed-card\">\u003Ciframe width=\"200\" height=\"113\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FdzZyAFk9c-4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen title=\"Localazy CDN: How does it work? | Interview with Localazy’s CEO, Václav Hodek\">\u003C\u002Fiframe>\u003C\u002Ffigure>\u003Ch2 id=\"prepare-your-project\">⚙️ Prepare your project \u003Ca class=\"markdownit-header-anchor\" href=\"#prepare-your-project\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Whether you work on a web or mobile app or a good old desktop app, you need to prepare your project for localization and upload localizable files to Localazy. This process is out of the scope of this article, but there are tons of resources on this topic in our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\">documentation\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Fhowto\">blog\u003C\u002Fa> tailored for your specific technology, platform, and framework.\u003C\u002Fp>\u003Cblockquote>See the list of available \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fintegrations\">integrations and supported file formats\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Cp>Once you have your localizable assets managed on Localazy and enable our CDN, we do a lot of work for you in the background automatically!\u003C\u002Fp>\u003Ch2 id=\"files-on-cdn\">🗃️ Files on CDN \u003Ca class=\"markdownit-header-anchor\" href=\"#files-on-cdn\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Whenever your data is changed, such as when you upload new texts or when there are new translations, we automatically create a new version of your files and upload it to CDN. There is no action required on your side.\u003C\u002Fp>\u003Cp>Not only do we upload your translated files, but add them packed as a ZIP archive, which is very useful for constrained environments, as \u003Ca href=\"#constrained-environments\">described below\u003C\u002Fa>. And, on every change, we generate a new metafile.\u003C\u002Fp>\u003Cblockquote>We also automatically send invalidation requests to the CDN network to ensure that updated files are available as soon as possible. However, it may still take up to 15 minutes for changes to propagate to all servers.\u003C\u002Fblockquote>\u003Ch2 id=\"the-metafile\">🗂️ The metafile \u003Ca class=\"markdownit-header-anchor\" href=\"#the-metafile\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Metafiles describe the current state of your data available on CDN, and they are \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcdn\u002Fcdn-metafiles\" rel=\"noopener noreferrer\">described in detail in the documentation\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>The metafile is specific per release (releases are \u003Ca href=\"#releases\">described below\u003C\u002Fa>), allowing you to rely on its content for fully dynamic functionality even with different releases. It's great since you can quickly implement mechanisms to support testing, staging, and production environments, even in the ever-changing world of translation.\u003C\u002Fp>\u003Cp>There are a bunch of valuable details you can get from the metafile, such as the filename and path for each of the files and all languages for each of the files, including:\u003C\u002Fp>\u003Cul>\u003Cli>locale code\u003C\u002Fli>\u003Cli>English and localized name\u003C\u002Fli>\u003Cli>URL to CDN for each of the languages\u003C\u002Fli>\u003Cli>timestamp of the last update\u003C\u002Fli>\u003Cli>function for resolving plural form (in JS\u002FTS file)\u003C\u002Fli>\u003C\u002Ful>\u003Ch2 id=\"releases\">🚀 Releases \u003Ca class=\"markdownit-header-anchor\" href=\"#releases\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>The speed of distribution - both in the sense of how fast you can get new translations out and what your end users' latency is - is one of the core advantages of CDN. However, you may still want to retain control over quality while ensuring that you can quickly send updates to your users. And that's what Releases are great for!\u003C\u002Fp>\u003Cblockquote>Learn more about \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Freleases\">Releases in the docs\u003C\u002Fa>\u003C\u002Fblockquote>\u003Cp>Because Localazy CDN works smoothly with the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Frelease-tags-feature\">Releases\u003C\u002Fa> feature, you can link to different versions of your files and be sure that recent changes will not break your website\u002Fapp.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-2.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"741\" height=\"380\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage-2.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-2.png 741w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>In Localazy, all changes (newly added keys, updated ones, new translations, reviews, etc.) are automatically published as the \u003Ccode>latest\u003C\u002Fcode> tag. This is a good option to use during development when you don't care much about the content.\u003C\u002Fp>\u003Cp>Using Releases gives you control over which translations are ready to go public by creating release tags. E.g., when you are happy with the current translation quality, you can promote the \u003Ccode>latest\u003C\u002Fcode> release tag to \u003Ccode>staging\u003C\u002Fcode> and make the progress available in your testing environment.\u003C\u002Fp>\u003Cp>At this point, the translation is close to the final version, but - similarly to the software development - it's common that many localization issues will be identified. They can be quickly fixed in Localazy, reviewed in the development, and again promoted to the \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cp>Once you are sure that the new version of your app is ready for its prime time, you can just promote the \u003Ccode>staging\u003C\u002Fcode> tag to either \u003Ccode>production\u003C\u002Fcode> or \u003Ccode>vX.X.X\u003C\u002Fcode> depending on your preferences. Using the versioned tag is a better option if you support more active versions in production.\u003C\u002Fp>\u003Cp>If you find any critical issue in translations, you can still use \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Frelease-tags#merging-and-manipulating-tags\" rel=\"noopener noreferrer\">release merging\u003C\u002Fa> to propagate only a portion of changes from the \u003Ccode>latest\u003C\u002Fcode> or \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cp>Also, you can omit the step with the \u003Ccode>staging\u003C\u002Fcode> tag entirely and use the \u003Ccode>latest\u003C\u002Fcode> one directly in a testing environment. Using \u003Ccode>staging\u003C\u002Fcode> is an excellent way to achieve reproducibility, which may be limited when translations change under testers' hands. It's, amongst other reasons, important for the translation context. Sometimes, the translators need to see where and when the translation is used to adapt it correctly.\u003C\u002Fp>\u003Cblockquote>One pro tip: It's possible to use merging to release only a subset of languages — more on this topic in the \"\u003Ca href=\"#deliver-languages-dynamically\">Deliver languages dynamically\u003C\u002Fa>\" section.\u003C\u002Fblockquote>\u003Ch2 id=\"implementation\">💡 Implementation \u003Ca class=\"markdownit-header-anchor\" href=\"#implementation\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Now that we have our releases\u002Ffiles available on CDN, it's time to implement the logic for your app. There are three types of apps with different behavior:\u003C\u002Fp>\u003Ch3 id=\"always-online-approach\">Always-online approach \u003Ca class=\"markdownit-header-anchor\" href=\"#always-online-approach\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>The simplest way to use translations from CDN when your app is always online - such as your website or SaaS product - is to download the localized file directly from CDN every time.\u003C\u002Fp>\u003Cblockquote>There's \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fdeliver-translated-files-localazy-cdn-tutorial\" rel=\"noopener noreferrer\">an article on this topic on our blog that goes into more technical details with Javascript and the i18next library\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Cp>Not only it's the simplest way to integrate CDN, but it's also how CDN was designed to work in the first place, and it brings many benefits:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>You don't need to care about the infrastructure\u003C\u002Fstrong>: no need to store files, solve distribution, backups, fallback servers, HTTPS, invalidation, etc. It just works! We take care of it.\u003C\u002Fli>\u003Cli>\u003Cstrong>Your files are delivered from servers closest to your customers\u003C\u002Fstrong>, lowering response time considerably. Have you ever tried to download files from servers in the US while being in Japan? Being close to your customers (in terms of latency) is an integral part of localization and customer experience. We are not talking about an image that lags and loads slowly. We are talking about texts and translations that are an essential part of the app.\u003C\u002Fli>\u003Cli>\u003Cstrong>Our CDN is not just delivering files\u003C\u002Fstrong>: it also provides helpful metafiles and transparently supports releases. In a sense, you can control your app's localization using our CDN - e.g., you can add languages dynamically without bothering developers.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"offline-approach\">Offline approach \u003Ca class=\"markdownit-header-anchor\" href=\"#offline-approach\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>When your app can be used offline, you must make the translations available even without an internet connection. The best approach is to bundle the current translations when building a new version of your app, and making \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Fci\">Localazy CLI part of your CI\u002FCD\u003C\u002Fa> is a perfect way to do it automatically. This way, you can be sure that the app has the latest translations even when started offline for the first time.\u003C\u002Fp>\u003Cp>Whenever an internet connection is available, you download files from CDN to ensure that the latest translations are included, and you also update stored translations so that next time, when the internet connection is unavailable, your app resorts to the latest version.\u003C\u002Fp>\u003Cp>This combines the best of both worlds - keeping the app updated with the latest translations while maintaining offline availability.\u003C\u002Fp>\u003Ch3 id=\"constrained-environments\">Constrained environments \u003Ca class=\"markdownit-header-anchor\" href=\"#constrained-environments\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>There is also a special variant of apps that are typically online but that are required to have very low data transfers. This can apply to mobile apps where content changes are rare and keeping them updated is unimportant or for apps designed for specific use cases. We worked on such an app years ago - it was designed for a rural environment with an unstable and slow connection.\u003C\u002Fp>\u003Cp>In such situations, you can leverage our metafile and periodically check for \u003Ccode>timestamp\u003C\u002Fcode> on the global or even file level to detect changes. If \u003Ccode>timestamp\u003C\u002Fcode> is not equal to your stored version from the last check, update translations and you'll possibly get new languages! By the way,  the \u003Ccode>timestamp\u003C\u002Fcode> property is not a UTC-based timestamp but the internal ID of the last change that is guaranteed to be higher for subsequent changes.\u003C\u002Fp>\u003Cp>Depending on how many files were changed, you can download just the changed files or redownload all of them in ZIP format, further reducing the download size with the compression.\u003C\u002Fp>\u003Ch2 id=\"update-your-marketing-message\">🌟 Update your marketing message \u003Ca class=\"markdownit-header-anchor\" href=\"#update-your-marketing-message\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>With CDN, you can update your texts online. It's a fantastic way to fine-tune your marketing message, adapt banners, or improve the performance of calls to action.\u003C\u002Fp>\u003Cblockquote>We even saw CDN being used for customized banner colors since, in different languages (and cultures), colors can have quite different meanings!\u003C\u002Fblockquote>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002FA-B-testing.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1300\" height=\"426\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002FA-B-testing.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002FA-B-testing.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002FA-B-testing.png 1300w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch4 id=\"ab-testing-with-branches\">A\u002FB Testing with branches\u003C\u002Fh4>\u003Cp>You can use our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fbranching\">Branching feature\u003C\u002Fa> to create a branch of your project. The branch is a copy of the project, so you start with identical content, and you can change specific texts and translations.\u003C\u002Fp>\u003Cp>In your product, you can randomly select a URL to obtain the metadata file. From the metadata file, you get links to all the localized assets, so apart from a list of URLs, you can get everything else from our CDN directly.\u003C\u002Fp>\u003Cp>This way, you can easily switch between different variants of your texts and translations. Send the CDN URL to analytics, and you'll be able to measure which variant performs better!\u003C\u002Fp>\u003Ch2 id=\"deliver-languages-dynamically\">🧭 Deliver languages dynamically \u003Ca class=\"markdownit-header-anchor\" href=\"#deliver-languages-dynamically\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>We've already mentioned the option of adding languages to your app dynamically. With the metafile, it's pretty easy. You can download the metafile first and review all the contained files. Each file comes with a list of languages it's available in. You can collect all the languages by just traversing the files, and you can even include only languages in which important files are available.\u003C\u002Fp>\u003Cp>For each language, you get additional information, such as English and localized names, whether it's RTL or LTR, plural formula (\u003Ca href=\"#plurals\">described below\u003C\u002Fa>), etc. You can use them to render a beautiful language selector dynamically without storing any information hardcoded in your app. And, of course, you can also automatically preselect a language based on user preferences or based on language autodetection.\u003C\u002Fp>\u003Cp>There's also the \u003Ccode>baseLocale\u003C\u002Fcode> property in the metafile, so you can automatically fall back to your project's source language if the user has no preferences stored and autodetection fails.\u003C\u002Fp>\u003Cblockquote>And you can control all of this right from Localazy. It's not just a translation management system to translate texts: it can act as a control center for your app's localization.\u003C\u002Fblockquote>\u003Cp>However, the logic described above is straightforward. Still, it would add any language defined on Localazy to your app, which may be undesirable behavior for languages that don't yet meet your quality criteria or those that are not yet fully translated (or translated to some minimal extent).\u003C\u002Fp>\u003Cp>Luckily, two options allow you to solve that…\u003C\u002Fp>\u003Ch3 id=\"localazy-as-a-control-center\">Localazy as a control center \u003Ca class=\"markdownit-header-anchor\" href=\"#localazy-as-a-control-center\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>In Localazy, you can control what languages are exported. This option is known as enabled\u002Fdisabled languages.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-1.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1383\" height=\"400\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage-1.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002Fimage-1.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-1.png 1383w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>What's incredible is that disabled languages will still be available to translators, so you can keep improving them without exposing them to public audiences. Once they're ready to be used, you can just re-enable them, and they will be published and available to your app's users without any changes to the app's code.\u003C\u002Fp>\u003Cp>This way, you can control available languages comfortably directly from Localazy. It's a perfect method for non-technical users, but it has a minor drawback. Since the setting is global, you can't easily have different sets of languages available in the development, staging, and production environments. If you don't release often, you can disable the languages before publishing the latest and promoting it to the staging\u002Fproduction phase. However, it's error-prone and needs an extra process.\u003C\u002Fp>\u003Cp>If you don't need to have untranslated languages on testing\u002Fstaging, it's the way to go. Built-in to Localazy and very comfortable with our UI.\u003C\u002Fp>\u003Ch3 id=\"releases-with-limited-languages\">Releases with limited languages \u003Ca class=\"markdownit-header-anchor\" href=\"#releases-with-limited-languages\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Suppose you need different sets of languages available in development, staging, and production - for example, when some languages are not yet fully translated or the quality is not yet perfect, but you already need them available for testers -. In that case, you can use \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Frelease-tags#merging-and-manipulating-tags\" rel=\"noopener noreferrer\">merging instead of promoting releases\u003C\u002Fa> through Localazy CLI.\u003C\u002Fp>\u003Cp>The simple command below will merge the \u003Ccode>latest\u003C\u002Fcode> tag with itself (which effectively means processing it as is) but remove all the languages that are not listed in \u003Ccode>--languages\u003C\u002Fcode>. The result is stored as the \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cpre>\u003Ccode>localazy merge --languages en,cs,de,fr,es --remove-unlisted-languages latest latest staging\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>You can use the same approach to create the \u003Ccode>production\u003C\u002Fcode> tag if you need to limit the available languages further, or you can just promote \u003Ccode>staging\u003C\u002Fcode> to \u003Ccode>production\u003C\u002Fcode> (or versioned tags as described in Releases) when required.\u003C\u002Fp>\u003Ch2 id=\"plurals\">🤓 Plurals \u003Ca class=\"markdownit-header-anchor\" href=\"#plurals\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>The metafile in JavaScript and TypeScript versions has functions for resolving plural forms. For example, for the Czech language, the definition would be:\u003C\u002Fp>\u003Cpre>\u003Ccode>\"plural\": (n) =&gt; { return (n===1) ? \"one\" : (n&gt;=2 &amp;&amp; n&lt;=4) ? \"few\" : \"other\"; }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>It accepts a number and returns the corresponding plural form based on the CLDR definition for integer numbers.\u003C\u002Fp>\u003Cp>Plural functions help you with implementing fully dynamic localization controlled from Localazy. You don't need to learn the logic behind and hard-code the definition into your app; you would need to update it whenever you want to add a new language. When using the function directly from Localazy, you just add the language and get the function out of the box.\u003C\u002Fp>\u003Cp>However, it's worth noting that since it's based on the CLDR definition, it may not be available for all languages (currently, it's 80+ most common languages). Hence, a reasonable default is an excellent way to go.\u003C\u002Fp>\u003Ch2 id=\"limitations-and-solutions\">🤔 Limitations & Solutions \u003Ca class=\"markdownit-header-anchor\" href=\"#limitations-and-solutions\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Ch4 id=\"format-conversions-are-unavailable-but-there-is-a-solution\">Format conversions are unavailable, but there is a solution!\u003C\u002Fh4>\u003Cp>One of the most significant limitations of CDN is that files must be generated and placed on the storage from which they are available for worldwide distribution before the requests from your users start coming in. It's necessary to achieve the extremely low latency we strive for. Unfortunately, this disallows dynamic features, such as \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fformat-conversions-feature\">format conversions\u003C\u002Fa>,\u003Cstrong> \u003C\u002Fstrong>beloved by \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">CLI\u003C\u002Fa> users.\u003C\u002Fp>\u003Cp>This limitation is very rare, as a unified format is usually used to deliver translations even across multiple platforms.\u003C\u002Fp>\u003Cp>If you still need to deliver the same file in multiple formats over CDN, this can be easily achieved with our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fexport-aliases\">export aliases\u003C\u002Fa>. Just export the desired keys to another file with a different format and voilá: you'll get that file on CDN as well!\u003C\u002Fp>\u003Ch4 id=\"cache-invalidation-and-dev-environment\">Cache invalidation and dev environment\u003C\u002Fh4>\u003Cp>Another slight limitation is that, even with the invalidation requests we send to CDN, the changes may not be reflected immediately, and it typically takes up to 15 minutes before the updated files are available for download. It's not a production problem, but it may be a bit of a pain during development when you need to test rapid changes or on the CI\u002FCD pipeline.\u003C\u002Fp>\u003Cp>The recommended workaround is to serve the files from your local drive using a simple HTTP server to simulate the CDN. With one-liners such as Python 3's HTTP server (\u003Ccode>python -m http.server\u003C\u002Fcode>), it's actually a matter of minutes to write a script that copies the files to the correct structure and starts the server to simulate production CDN.\u003C\u002Fp>\u003Ch2 id=\"conclusion\">✔️ Conclusion \u003Ca class=\"markdownit-header-anchor\" href=\"#conclusion\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>I hope you got inspired to try the Localazy CDN now that you have learned about its possible applications. Maybe you have even developed some niche use cases on your own? Share your setup in the comments to inspire others!\u003C\u002Fp>",{"id":332,"status":8,"created_on":1895,"modified_on":1896,"icon":1897,"header":1898,"description":1899,"button_label":1900,"link":1901},"2023-02-22T12:11:19.000Z","2023-11-03T11:06:28.000Z","member","Try the Localazy CDN now! 🌐 ","Activate the Localazy CDN and deliver a localized experience to your users worldwide.","Start now","my\u002Fbilling\u002Ftranslation-delivery",{"slug":1866,"id":1859,"uuid":1903,"title":1865,"html":1904,"comment_id":1859,"feature_image":1869,"featured":17,"visibility":1905,"email_recipient_filter":1906,"created_at":1907,"updated_at":1867,"published_at":1868,"custom_excerpt":1892,"codeinjection_head":7,"codeinjection_foot":7,"custom_template":7,"canonical_url":7,"authors":1908,"tags":1915,"primary_author":1945,"primary_tag":1946,"url":1947,"excerpt":1892,"reading_time":286,"access":17,"send_email_when_published":15,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"email_subject":7,"frontmatter":7,"dictionary":1879,"cta":1894,"plainTags":1870},"c29ed29f-0294-404d-ae12-97c84a3d1458","\u003Cp>When working on a software project, you usually master the programming language used for its development. You can \"speak\" it fluently. Even though it's normal to introduce bugs, you can avoid many of them by testing your code. Thanks to your knowledge, tools, and processes, you can ship a product that's great and comes with no critical errors.\u003C\u002Fp>\u003Cp>All of this essential knowledge resides in your team. It, however, doesn't apply to localization, as most SMBs can't afford the luxury of having internal people speaking all the supported languages.\u003C\u002Fp>\u003Cp>\"Bugs\" in localization are often not as critical as your software crashing completely, but they can still have adverse effects - it's not uncommon for people to lose their data because of a bad translation; they don't understand what they are doing because the translation provides misleading information. Such an issue can earn you bad reviews and potentially drive many users away from your product.\u003C\u002Fp>\u003Cp>When a critical bug in the software is found, it's usually necessary to fix it, run all the tests to ensure everything works correctly with the updated code, prepare the release, and publish it. You don't want to do all of this just because there are a few issues in translation. \u003C\u002Fp>\u003Cp>So, is there a better way? \u003C\u002Fp>\u003Cp>You probably expect me to say: \"Yes, it is.\" and you are right; there's indeed a better way with more benefits than just fixing issues… The answer is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn\">Localazy CDN\u003C\u002Fa>.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%92%99-what-are-the-benefits\">💙 What are the benefits?\u003C\u002Fh2>\u003Cp>Several vital benefits make CDN a perfect part of the localization process. So, what can you do with CDN?\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>Fix localization fails.\u003C\u002Fstrong> And do so without the need to release a new version of the app.\u003C\u002Fli>\u003Cli>\u003Cstrong>Speed up releases.\u003C\u002Fstrong> When there is a mechanism to update translation over the air, you can get the new version of your app out quickly and finish less important languages after the release.\u003C\u002Fli>\u003Cli>\u003Cstrong>Add languages dynamically.\u003C\u002Fstrong> Without downloading the new version of your app, the users can just start using it in their language when it's ready.\u003C\u002Fli>\u003Cli>\u003Cstrong>Remove developers from the localization process.\u003C\u002Fstrong> No need to bother developers whenever there's a fix in translated files to be published. All the changes are live in a couple of minutes without any interaction. Developers will thank you since they won't waste their time on trivial tasks anymore. And business people, too - they can get their changes up and running quickly.\u003C\u002Fli>\u003C\u002Ful>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1151\" height=\"570\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002Fimage.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage.png 1151w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch4 id=\"recommended-reading\">Recommended reading\u003C\u002Fh4>\u003Cp>Before you dive in, you might like to check these three articles to get a better idea about our CDN:\u003C\u002Fp>\u003Cul>\u003Cli>The Basics: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fdeliver-translated-files-localazy-cdn-tutorial\">Deliver translated files seamlessly via Localazy CDN\u003C\u002Fa> 🌍\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002F8-reasons-why-delivering-translations-via-localazy-cdn-is-a-good-idea\">8 Reasons Why Delivering Translations via Localazy CDN Is a Good Idea\u003C\u002Fa> \u003C\u002Fli>\u003Cli>Case Study: \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fcase-study-rouvy-localization\">🚴 ROUVY's Tour de localization with Localazy\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Ful>\u003Cp>In the following text, we will focus on a complete guide both for always-online and offline apps with the option to add languages dynamically. Intentionally, we will not resort to one programming language or framework but discuss the basic concept. Along the way, we will briefly discuss more advanced concepts like the metafile or releases.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-embed-card\">\u003Ciframe width=\"200\" height=\"113\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FdzZyAFk9c-4?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen title=\"Localazy CDN: How does it work? | Interview with Localazy’s CEO, Václav Hodek\">\u003C\u002Fiframe>\u003C\u002Ffigure>\u003Ch2 id=\"%E2%9A%99%EF%B8%8F-prepare-your-project\">⚙️ Prepare your project\u003C\u002Fh2>\u003Cp>Whether you work on a web or mobile app or a good old desktop app, you need to prepare your project for localization and upload localizable files to Localazy. This process is out of the scope of this article, but there are tons of resources on this topic in our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\">documentation\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Fhowto\">blog\u003C\u002Fa> tailored for your specific technology, platform, and framework.\u003C\u002Fp>\u003Cblockquote>See the list of available \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fintegrations\">integrations and supported file formats\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Cp>Once you have your localizable assets managed on Localazy and enable our CDN, we do a lot of work for you in the background automatically!\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%97%83%EF%B8%8F-files-on-cdn\">🗃️ Files on CDN\u003C\u002Fh2>\u003Cp>Whenever your data is changed, such as when you upload new texts or when there are new translations, we automatically create a new version of your files and upload it to CDN. There is no action required on your side.\u003C\u002Fp>\u003Cp>Not only do we upload your translated files, but add them packed as a ZIP archive, which is very useful for constrained environments, as \u003Ca href=\"#constrained-environments\">described below\u003C\u002Fa>. And, on every change, we generate a new metafile.\u003C\u002Fp>\u003Cblockquote>We also automatically send invalidation requests to the CDN network to ensure that updated files are available as soon as possible. However, it may still take up to 15 minutes for changes to propagate to all servers.\u003C\u002Fblockquote>\u003Ch2 id=\"%F0%9F%97%82%EF%B8%8F-the-metafile\">🗂️ The metafile\u003C\u002Fh2>\u003Cp>Metafiles describe the current state of your data available on CDN, and they are \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcdn\u002Fcdn-metafiles\" rel=\"noopener noreferrer\">described in detail in the documentation\u003C\u002Fa>.\u003C\u002Fp>\u003Cp>The metafile is specific per release (releases are \u003Ca href=\"#releases\">described below\u003C\u002Fa>), allowing you to rely on its content for fully dynamic functionality even with different releases. It's great since you can quickly implement mechanisms to support testing, staging, and production environments, even in the ever-changing world of translation.\u003C\u002Fp>\u003Cp>There are a bunch of valuable details you can get from the metafile, such as the filename and path for each of the files and all languages for each of the files, including:\u003C\u002Fp>\u003Cul>\u003Cli>locale code\u003C\u002Fli>\u003Cli>English and localized name\u003C\u002Fli>\u003Cli>URL to CDN for each of the languages\u003C\u002Fli>\u003Cli>timestamp of the last update\u003C\u002Fli>\u003Cli>function for resolving plural form (in JS\u002FTS file)\u003C\u002Fli>\u003C\u002Ful>\u003Ch2 id=\"%F0%9F%9A%80-releases\">🚀 Releases\u003C\u002Fh2>\u003Cp>The speed of distribution - both in the sense of how fast you can get new translations out and what your end users' latency is - is one of the core advantages of CDN. However, you may still want to retain control over quality while ensuring that you can quickly send updates to your users. And that's what Releases are great for!\u003C\u002Fp>\u003Cblockquote>Learn more about \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Freleases\">Releases in the docs\u003C\u002Fa>\u003C\u002Fblockquote>\u003Cp>Because Localazy CDN works smoothly with the \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Frelease-tags-feature\">Releases\u003C\u002Fa> feature, you can link to different versions of your files and be sure that recent changes will not break your website\u002Fapp.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-2.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"741\" height=\"380\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage-2.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-2.png 741w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>In Localazy, all changes (newly added keys, updated ones, new translations, reviews, etc.) are automatically published as the \u003Ccode>latest\u003C\u002Fcode> tag. This is a good option to use during development when you don't care much about the content.\u003C\u002Fp>\u003Cp>Using Releases gives you control over which translations are ready to go public by creating release tags. E.g., when you are happy with the current translation quality, you can promote the \u003Ccode>latest\u003C\u002Fcode> release tag to \u003Ccode>staging\u003C\u002Fcode> and make the progress available in your testing environment.\u003C\u002Fp>\u003Cp>At this point, the translation is close to the final version, but - similarly to the software development - it's common that many localization issues will be identified. They can be quickly fixed in Localazy, reviewed in the development, and again promoted to the \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cp>Once you are sure that the new version of your app is ready for its prime time, you can just promote the \u003Ccode>staging\u003C\u002Fcode> tag to either \u003Ccode>production\u003C\u002Fcode> or \u003Ccode>vX.X.X\u003C\u002Fcode> depending on your preferences. Using the versioned tag is a better option if you support more active versions in production.\u003C\u002Fp>\u003Cp>If you find any critical issue in translations, you can still use \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Frelease-tags#merging-and-manipulating-tags\" rel=\"noopener noreferrer\">release merging\u003C\u002Fa> to propagate only a portion of changes from the \u003Ccode>latest\u003C\u002Fcode> or \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cp>Also, you can omit the step with the \u003Ccode>staging\u003C\u002Fcode> tag entirely and use the \u003Ccode>latest\u003C\u002Fcode> one directly in a testing environment. Using \u003Ccode>staging\u003C\u002Fcode> is an excellent way to achieve reproducibility, which may be limited when translations change under testers' hands. It's, amongst other reasons, important for the translation context. Sometimes, the translators need to see where and when the translation is used to adapt it correctly.\u003C\u002Fp>\u003Cblockquote>One pro tip: It's possible to use merging to release only a subset of languages — more on this topic in the \"\u003Ca href=\"#deliver-languages-dynamically\">Deliver languages dynamically\u003C\u002Fa>\" section.\u003C\u002Fblockquote>\u003Ch2 id=\"%F0%9F%92%A1-implementation\">💡 Implementation\u003C\u002Fh2>\u003Cp>Now that we have our releases\u002Ffiles available on CDN, it's time to implement the logic for your app. There are three types of apps with different behavior:\u003C\u002Fp>\u003Ch3 id=\"always-online-approach\">Always-online approach\u003C\u002Fh3>\u003Cp>The simplest way to use translations from CDN when your app is always online - such as your website or SaaS product - is to download the localized file directly from CDN every time.\u003C\u002Fp>\u003Cblockquote>There's \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fdeliver-translated-files-localazy-cdn-tutorial\" rel=\"noopener noreferrer\">an article on this topic on our blog that goes into more technical details with Javascript and the i18next library\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Cp>Not only it's the simplest way to integrate CDN, but it's also how CDN was designed to work in the first place, and it brings many benefits:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>You don't need to care about the infrastructure\u003C\u002Fstrong>: no need to store files, solve distribution, backups, fallback servers, HTTPS, invalidation, etc. It just works! We take care of it.\u003C\u002Fli>\u003Cli>\u003Cstrong>Your files are delivered from servers closest to your customers\u003C\u002Fstrong>, lowering response time considerably. Have you ever tried to download files from servers in the US while being in Japan? Being close to your customers (in terms of latency) is an integral part of localization and customer experience. We are not talking about an image that lags and loads slowly. We are talking about texts and translations that are an essential part of the app.\u003C\u002Fli>\u003Cli>\u003Cstrong>Our CDN is not just delivering files\u003C\u002Fstrong>: it also provides helpful metafiles and transparently supports releases. In a sense, you can control your app's localization using our CDN - e.g., you can add languages dynamically without bothering developers.\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"offline-approach\">Offline approach\u003C\u002Fh3>\u003Cp>When your app can be used offline, you must make the translations available even without an internet connection. The best approach is to bundle the current translations when building a new version of your app, and making \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Fci\">Localazy CLI part of your CI\u002FCD\u003C\u002Fa> is a perfect way to do it automatically. This way, you can be sure that the app has the latest translations even when started offline for the first time.\u003C\u002Fp>\u003Cp>Whenever an internet connection is available, you download files from CDN to ensure that the latest translations are included, and you also update stored translations so that next time, when the internet connection is unavailable, your app resorts to the latest version.\u003C\u002Fp>\u003Cp>This combines the best of both worlds - keeping the app updated with the latest translations while maintaining offline availability.\u003C\u002Fp>\u003Ch3 id=\"constrained-environments\">Constrained environments\u003C\u002Fh3>\u003Cp>There is also a special variant of apps that are typically online but that are required to have very low data transfers. This can apply to mobile apps where content changes are rare and keeping them updated is unimportant or for apps designed for specific use cases. We worked on such an app years ago - it was designed for a rural environment with an unstable and slow connection.\u003C\u002Fp>\u003Cp>In such situations, you can leverage our metafile and periodically check for \u003Ccode>timestamp\u003C\u002Fcode> on the global or even file level to detect changes. If \u003Ccode>timestamp\u003C\u002Fcode> is not equal to your stored version from the last check, update translations and you'll possibly get new languages! By the way,  the \u003Ccode>timestamp\u003C\u002Fcode> property is not a UTC-based timestamp but the internal ID of the last change that is guaranteed to be higher for subsequent changes.\u003C\u002Fp>\u003Cp>Depending on how many files were changed, you can download just the changed files or redownload all of them in ZIP format, further reducing the download size with the compression.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%8C%9F-update-your-marketing-message\">🌟 Update your marketing message\u003C\u002Fh2>\u003Cp>With CDN, you can update your texts online. It's a fantastic way to fine-tune your marketing message, adapt banners, or improve the performance of calls to action.\u003C\u002Fp>\u003Cblockquote>We even saw CDN being used for customized banner colors since, in different languages (and cultures), colors can have quite different meanings!\u003C\u002Fblockquote>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002FA-B-testing.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1300\" height=\"426\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002FA-B-testing.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002FA-B-testing.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002FA-B-testing.png 1300w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch4 id=\"ab-testing-with-branches\">A\u002FB Testing with branches\u003C\u002Fh4>\u003Cp>You can use our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fbranching\">Branching feature\u003C\u002Fa> to create a branch of your project. The branch is a copy of the project, so you start with identical content, and you can change specific texts and translations.\u003C\u002Fp>\u003Cp>In your product, you can randomly select a URL to obtain the metadata file. From the metadata file, you get links to all the localized assets, so apart from a list of URLs, you can get everything else from our CDN directly.\u003C\u002Fp>\u003Cp>This way, you can easily switch between different variants of your texts and translations. Send the CDN URL to analytics, and you'll be able to measure which variant performs better!\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%A7%AD-deliver-languages-dynamically\">🧭 Deliver languages dynamically\u003C\u002Fh2>\u003Cp>We've already mentioned the option of adding languages to your app dynamically. With the metafile, it's pretty easy. You can download the metafile first and review all the contained files. Each file comes with a list of languages it's available in. You can collect all the languages by just traversing the files, and you can even include only languages in which important files are available.\u003C\u002Fp>\u003Cp>For each language, you get additional information, such as English and localized names, whether it's RTL or LTR, plural formula (\u003Ca href=\"#plurals\">described below\u003C\u002Fa>), etc. You can use them to render a beautiful language selector dynamically without storing any information hardcoded in your app. And, of course, you can also automatically preselect a language based on user preferences or based on language autodetection.\u003C\u002Fp>\u003Cp>There's also the \u003Ccode>baseLocale\u003C\u002Fcode> property in the metafile, so you can automatically fall back to your project's source language if the user has no preferences stored and autodetection fails.\u003C\u002Fp>\u003Cblockquote>And you can control all of this right from Localazy. It's not just a translation management system to translate texts: it can act as a control center for your app's localization.\u003C\u002Fblockquote>\u003Cp>However, the logic described above is straightforward. Still, it would add any language defined on Localazy to your app, which may be undesirable behavior for languages that don't yet meet your quality criteria or those that are not yet fully translated (or translated to some minimal extent).\u003C\u002Fp>\u003Cp>Luckily, two options allow you to solve that…\u003C\u002Fp>\u003Ch3 id=\"localazy-as-a-control-center\">Localazy as a control center\u003C\u002Fh3>\u003Cp>In Localazy, you can control what languages are exported. This option is known as enabled\u002Fdisabled languages.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-1.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1383\" height=\"400\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F11\u002Fimage-1.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F11\u002Fimage-1.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F11\u002Fimage-1.png 1383w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>What's incredible is that disabled languages will still be available to translators, so you can keep improving them without exposing them to public audiences. Once they're ready to be used, you can just re-enable them, and they will be published and available to your app's users without any changes to the app's code.\u003C\u002Fp>\u003Cp>This way, you can control available languages comfortably directly from Localazy. It's a perfect method for non-technical users, but it has a minor drawback. Since the setting is global, you can't easily have different sets of languages available in the development, staging, and production environments. If you don't release often, you can disable the languages before publishing the latest and promoting it to the staging\u002Fproduction phase. However, it's error-prone and needs an extra process.\u003C\u002Fp>\u003Cp>If you don't need to have untranslated languages on testing\u002Fstaging, it's the way to go. Built-in to Localazy and very comfortable with our UI.\u003C\u002Fp>\u003Ch3 id=\"releases-with-limited-languages\">Releases with limited languages\u003C\u002Fh3>\u003Cp>Suppose you need different sets of languages available in development, staging, and production - for example, when some languages are not yet fully translated or the quality is not yet perfect, but you already need them available for testers -. In that case, you can use \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Frelease-tags#merging-and-manipulating-tags\" rel=\"noopener noreferrer\">merging instead of promoting releases\u003C\u002Fa> through Localazy CLI.\u003C\u002Fp>\u003Cp>The simple command below will merge the \u003Ccode>latest\u003C\u002Fcode> tag with itself (which effectively means processing it as is) but remove all the languages that are not listed in \u003Ccode>--languages\u003C\u002Fcode>. The result is stored as the \u003Ccode>staging\u003C\u002Fcode> tag.\u003C\u002Fp>\u003Cpre>\u003Ccode>localazy merge --languages en,cs,de,fr,es --remove-unlisted-languages latest latest staging\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>You can use the same approach to create the \u003Ccode>production\u003C\u002Fcode> tag if you need to limit the available languages further, or you can just promote \u003Ccode>staging\u003C\u002Fcode> to \u003Ccode>production\u003C\u002Fcode> (or versioned tags as described in Releases) when required.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%A4%93-plurals\">🤓 Plurals\u003C\u002Fh2>\u003Cp>The metafile in JavaScript and TypeScript versions has functions for resolving plural forms. For example, for the Czech language, the definition would be:\u003C\u002Fp>\u003Cpre>\u003Ccode>\"plural\": (n) =&gt; { return (n===1) ? \"one\" : (n&gt;=2 &amp;&amp; n&lt;=4) ? \"few\" : \"other\"; }\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>It accepts a number and returns the corresponding plural form based on the CLDR definition for integer numbers.\u003C\u002Fp>\u003Cp>Plural functions help you with implementing fully dynamic localization controlled from Localazy. You don't need to learn the logic behind and hard-code the definition into your app; you would need to update it whenever you want to add a new language. When using the function directly from Localazy, you just add the language and get the function out of the box.\u003C\u002Fp>\u003Cp>However, it's worth noting that since it's based on the CLDR definition, it may not be available for all languages (currently, it's 80+ most common languages). Hence, a reasonable default is an excellent way to go.\u003C\u002Fp>\u003Ch2 id=\"%F0%9F%A4%94-limitations-solutions\">🤔 Limitations &amp; Solutions\u003C\u002Fh2>\u003Ch4 id=\"format-conversions-are-unavailable-but-there-is-a-solution\">Format conversions are unavailable, but there is a solution!\u003C\u002Fh4>\u003Cp>One of the most significant limitations of CDN is that files must be generated and placed on the storage from which they are available for worldwide distribution before the requests from your users start coming in. It's necessary to achieve the extremely low latency we strive for. Unfortunately, this disallows dynamic features, such as \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fformat-conversions-feature\">format conversions\u003C\u002Fa>,\u003Cstrong> \u003C\u002Fstrong>beloved by \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">CLI\u003C\u002Fa> users.\u003C\u002Fp>\u003Cp>This limitation is very rare, as a unified format is usually used to deliver translations even across multiple platforms.\u003C\u002Fp>\u003Cp>If you still need to deliver the same file in multiple formats over CDN, this can be easily achieved with our \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fexport-aliases\">export aliases\u003C\u002Fa>. Just export the desired keys to another file with a different format and voilá: you'll get that file on CDN as well!\u003C\u002Fp>\u003Ch4 id=\"cache-invalidation-and-dev-environment\">Cache invalidation and dev environment\u003C\u002Fh4>\u003Cp>Another slight limitation is that, even with the invalidation requests we send to CDN, the changes may not be reflected immediately, and it typically takes up to 15 minutes before the updated files are available for download. It's not a production problem, but it may be a bit of a pain during development when you need to test rapid changes or on the CI\u002FCD pipeline.\u003C\u002Fp>\u003Cp>The recommended workaround is to serve the files from your local drive using a simple HTTP server to simulate the CDN. With one-liners such as Python 3's HTTP server (\u003Ccode>python -m http.server\u003C\u002Fcode>), it's actually a matter of minutes to write a script that copies the files to the correct structure and starts the server to simulate production CDN.\u003C\u002Fp>\u003Ch2 id=\"%E2%9C%94%EF%B8%8F-conclusion\">✔️ Conclusion\u003C\u002Fh2>\u003Cp>I hope you got inspired to try the Localazy CDN now that you have learned about its possible applications. Maybe you have even developed some niche use cases on your own? Share your setup in the comments to inspire others!\u003C\u002Fp>","public","none","2023-11-02T16:39:45.000+01:00",[1909],{"id":1861,"name":1862,"slug":1863,"profile_image":1864,"cover_image":7,"bio":1910,"website":1911,"location":1912,"facebook":7,"twitter":1913,"meta_title":7,"meta_description":7,"url":1914},"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",[1916,1921,1926,1929,1934,1937,1940],{"id":1917,"name":1918,"slug":1919,"description":7,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1920},"63f8915e047091000193a863","[AD] CDN","ad-cdn","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fad-cdn\u002F",{"id":1922,"name":1923,"slug":1924,"description":1899,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1925},"63f60666047091000193a71d","[CTA] Try the Localazy CDN now! 🌐 ","cta-35","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcta-35\u002F",{"id":1927,"name":667,"slug":671,"description":7,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1928},"611456df6f8ebe0001bda0dd","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcdn\u002F",{"id":1930,"name":1931,"slug":1932,"description":1885,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1933},"63f4f024047091000193a61a","[DICT] CDN - Content Delivery Network","term-124","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-124\u002F",{"id":1935,"name":1874,"slug":1875,"description":1874,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1936},"60a37fc7cf7b6a0001d1f0fa","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fhowto\u002F",{"id":1938,"name":1877,"slug":1878,"description":1877,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1939},"60a37fc7cf7b6a0001d1f0e9","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fguide\u002F",{"id":1941,"name":1942,"slug":23,"description":1943,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1944},"633159ccfe956a000108a12c","[NAV]","Latest [NAV] post is featured in the web's navigation dropdown.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fnav\u002F",{"id":1861,"name":1862,"slug":1863,"profile_image":1864,"cover_image":7,"bio":1910,"website":1911,"location":1912,"facebook":7,"twitter":1913,"meta_title":7,"meta_description":7,"url":1914},{"id":1917,"name":1918,"slug":1919,"description":7,"feature_image":7,"visibility":1905,"og_image":7,"og_title":7,"og_description":7,"twitter_image":7,"twitter_title":7,"twitter_description":7,"meta_title":7,"meta_description":7,"codeinjection_head":7,"codeinjection_foot":7,"canonical_url":7,"accent_color":7,"url":1920},"https:\u002F\u002Fghost.localazy.com\u002Fthe-ultimate-guide-to-localazy-cdn\u002F",[1949,1964,1982],{"id":1950,"owner":1951,"created_by":7,"sort":7,"title":1956,"slug":1957,"modified_on":764,"created_on":1958,"pinned":15,"badge":7,"priority":1824,"main_image":1959,"status":8,"tags":1960,"dictionary":1963,"reading_time":1835,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"665d9cb634f1ce00011a0d19",{"id":1952,"first_name":1953,"last_name":764,"slug":1954,"avatar":1955},"65647a510470910001942873","Simona Rahmanova","simona-rahmanova","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2024\u002F03\u002Fsimona.png","Localization 101 | Basic concepts for newcomers","localization-101-basic-concepts-a-beginner-needs-to-know","2024-07-29T15:24:00.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2024\u002F06\u002Flocalization-101.png",[1961,1962],{"id":319,"created_on":1828,"status":8,"label":217,"slug":1833,"on_index_page":17},{"id":319,"created_on":1828,"status":8,"label":1877,"slug":1878,"on_index_page":15},[],{"id":1965,"owner":1966,"created_by":7,"sort":7,"title":1967,"slug":1968,"modified_on":764,"created_on":1969,"pinned":15,"badge":7,"priority":1824,"main_image":1970,"status":8,"tags":1971,"dictionary":1981,"reading_time":1835,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"633ad643fe956a000108a63d",{"id":1817,"first_name":1818,"last_name":764,"slug":1819,"avatar":1820},"The ultimate guide to Localazy translation services","guide-localazy-translation-services","2022-10-14T10:21:57.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2022\u002F10\u002FCLT-services.png",[1972,1975,1978,1980],{"id":319,"created_on":1828,"status":8,"label":1973,"slug":1974,"on_index_page":15},"Translations","translations",{"id":319,"created_on":1828,"status":8,"label":1976,"slug":1977,"on_index_page":15},"Continuous Localization","continuous-localization",{"id":319,"created_on":1828,"status":8,"label":795,"slug":1979,"on_index_page":15},"localazy",{"id":319,"created_on":1828,"status":8,"label":1877,"slug":1878,"on_index_page":15},[],{"id":1983,"owner":1984,"created_by":7,"sort":7,"title":1989,"slug":1990,"modified_on":764,"created_on":1991,"pinned":15,"badge":7,"priority":1824,"main_image":1992,"status":8,"tags":1993,"dictionary":2003,"reading_time":1835,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"6372308e04709100019374c9",{"id":1985,"first_name":1986,"last_name":764,"slug":1987,"avatar":1988},"6061ffdd2a37af00016d413d","Daniel Charvát","daniel-charvat","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fdan-1.png","Figma in Localization: Figma as a Source of Truth","figma-series-figma-as-source-of-truth","2023-02-08T20:43:55.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F01\u002FFigma-Series-3.png",[1994,1996,1997,2000],{"id":1995,"created_on":1828,"status":8,"label":545,"slug":544,"on_index_page":17},6183,{"id":319,"created_on":1828,"status":8,"label":1874,"slug":1875,"on_index_page":15},{"id":319,"created_on":1828,"status":8,"label":1998,"slug":1999,"on_index_page":17},"DevTips","devtips",{"id":278,"created_on":1828,"status":8,"label":2001,"slug":2002,"on_index_page":15},"Design","design",[],{"id":147,"sort":7,"created_on":2005,"name":667,"cta_link":2006,"banner_image":2007},"2023-02-21T22:35:37.000Z","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flanguage-cdn",{"id":2008},"8ae4b273-168e-4b39-85c2-f79282929ecb"]