[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"main-navigation":3,"footer-homepage":723,"footer-settings":790,"footer-integrations":903,"blog-post-nav-[USE LATEST FEATURED]":1814,"blog-post-nav-nav":1839,"blog-how-to-localize-a-nestjs-application-with-nestjs-i18n-and-localazy":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":1837,"reading_time":1838,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"69e62c567ab1270001ede506",{"id":1817,"first_name":1818,"last_name":764,"slug":1819,"avatar":1820},"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","0.7","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F06\u002FArabicLocal---Marine-Corps-5.png",[1827,1830,1834],{"id":319,"created_on":1828,"status":8,"label":217,"slug":1829,"on_index_page":17},"2026-06-12 02:08:33","localization",{"id":1831,"created_on":1828,"status":8,"label":1832,"slug":1833,"on_index_page":15},646,"Business Development","business-development",{"id":319,"created_on":1828,"status":8,"label":1835,"slug":1836,"on_index_page":15},"Locales","locales",[],0,{"id":1840,"owner":1841,"created_by":7,"sort":7,"title":1846,"slug":1847,"modified_on":764,"created_on":1848,"pinned":15,"badge":7,"priority":1824,"main_image":1849,"status":8,"tags":1850,"dictionary":1856,"reading_time":1838,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"69d78a237ab1270001eddabf",{"id":1842,"first_name":1843,"last_name":764,"slug":1844,"avatar":1845},"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","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2026\u002F04\u002FLocalazy-AI-translation-api.png",[1851,1852,1855],{"id":319,"created_on":1828,"status":8,"label":655,"slug":659,"on_index_page":15},{"id":269,"created_on":1828,"status":8,"label":1853,"slug":1854,"on_index_page":17},"AI","ai",{"id":319,"created_on":1828,"status":8,"label":217,"slug":1829,"on_index_page":17},[],{"post":1858,"relatedPosts":2071,"banner":2124},{"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":1882,"reading_time":456,"excerpt":1974,"og_title":764,"og_description":764,"og_image":764,"content":1975,"meta_title":764,"meta_description":764,"canonical":764,"cta":1976,"fullGhostPost":1984},"646b7e63047091000193c33b",{"id":1861,"first_name":1862,"last_name":764,"slug":1863,"avatar":1864},"619d2332df4bcb00010bc032","Moyinoluwa Adenuga","moyinoluwa-adenuga","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F12\u002Fadenuga.png","How to localize a NestJS application with nestjs-i18n and Localazy","how-to-localize-a-nestjs-application-with-nestjs-i18n-and-localazy","2026-04-16T16:22:04.000+02:00","2023-05-24T14:22:32.000+02:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Flocalazy-article-nestj-js-1.png",[1871,1874,1876,1879],{"id":1831,"created_on":1828,"status":8,"label":1872,"slug":1873,"on_index_page":15},"NestJS","nestjs",{"id":319,"created_on":1828,"status":8,"label":1875,"slug":1875,"on_index_page":17},"i18n",{"id":319,"created_on":1828,"status":8,"label":1877,"slug":1878,"on_index_page":15},"HowTo","howto",{"id":319,"created_on":1828,"status":8,"label":1880,"slug":1881,"on_index_page":15},"Automated Localization","automated-localization",[1883,1897,1903,1917,1930,1941,1956,1965],{"id":336,"status":8,"owner":1884,"created_on":1885,"title":1886,"excerpt":1887,"content":1888,"slug":1889,"meta_title":764,"meta_description":764,"canonical":764,"related_terms":1890},"2bac48a8-b362-482f-b574-3bc71dca4c5b","2026-05-12T07:09:23.000Z","Integrated Development Environment (IDE)","A software application that provides developers with a complete set of tools for writing, testing, and debugging code in one place.","An IDE (Integrated Development Environment) typically includes a source code editor, compiler or interpreter, build automation tools (such as Gradle for Android), a debugger, and a system for managing libraries and plugins.\n\nThese features let the IDEs streamline the software development process and reduce the need to switch between multiple standalone tools.\n\n### 🧩 What are the core features of IDEs?\n\n* **Source code editor**: Syntax highlighting, auto-completion, and error detection.\n* **Compiler\u002FInterpreter**: Translates code into executable programs.\n* **Build automation**: Tools like Gradle or Maven to manage builds and dependencies.\n* **Debugger**: Identifies and resolves code errors step by step.\n* **Plugin & library support**: Extend functionality for specific frameworks or languages.\n* **Version control integration**: Built-in Git support for collaboration.\n\n### ⚙️ Examples of IDEs\n\n* [**Android Studio**](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fandroid-studio): The official IDE for Android development.\n* [**IntelliJ IDEA**](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fintellij-idea): Popular for Java, Kotlin, and multi-language support.\n* [**NetBeans**](https:\u002F\u002Fwww.oracle.com\u002Ftools\u002Ftechnologies\u002Fnetbeans-ide.html): Open-source, focused on Java and PHP development.\n* [**Eclipse**](https:\u002F\u002Feclipseide.org\u002F): Widely used, extensible through plugins, especially in enterprise projects.\n\nPlacing the full toolkit in one environment allows IDEs to accelerate coding tasks, simplify project management, and raise code consistency.","integrated-development-kit-ide",[1891,1893,1895],{"id":195,"slug":1892},"gradle",{"id":118,"slug":1894},"android-studio",{"id":445,"slug":1896},"intellij-idea",{"id":1898,"status":8,"owner":1884,"created_on":1899,"title":655,"excerpt":1900,"content":1901,"slug":659,"meta_title":764,"meta_description":764,"canonical":764,"related_terms":1902},109,"2022-03-17T12:22:56.000Z","An interface that enables applications to exchange data with each other.","API (Application Programming Interface) allows programmers to build software that can receive or send data to other applications, databases, etc.\n\nHaving an API means that users of the software can work with their data and the applications' functionality programmatically. This allows for greater automation and time and costs savings.\n\nAPI always has a pre-defined set of commands that programmers can use to send requests to trigger functions, pull data, etc. Common examples of API use are payment gateways, social media management software that utilizes API to post on your behalf once you connect your accounts, etc.\n\nThe most common API protocols are:\n\n* SOAP\n* XML-RPC\n* JSON-RPC\n* REST\n\n## Localazy API\n\nYou can connect your project with Localazy using our translation API. This way, you can program your software to import source strings and download translations automatically.\n\n> ***Learn more in the [Localazy API documentation](\u002Fdocs\u002Fapi\u002Fintroduction)***",[],{"id":1904,"status":8,"owner":1884,"created_on":1885,"title":1905,"excerpt":1906,"content":1907,"slug":1908,"meta_title":764,"meta_description":764,"canonical":764,"related_terms":1909},79,"Internationalization (i18n)","The process of making your software localizable.","Internationalization (i18n) is the process of preparing software, digital products, and content so they can be easily adapted for various languages, regions, and cultures without requiring extensive reengineering.\n\nThis foundational step ensures that a product can be efficiently localized to meet the needs of different global markets. To internationalize your software, you need to pay attention to technical requirements. The code structure and design has to be prepared to allow for [localization](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Flocalization).\n\nIt involves considering various linguistic and cultural factors during the initial design and development phases. This process should start, ideally, in the design phase. For example, you may want to have externalised strings so you can bring your strings to the translation management tool.\n\nEvery business looking to expand their reach and provide User Experiences (UX) across diverse markets needs to consider internationalization and then localization.\n\n## 🌐 Key points about internationalization (i18n): \n\n* Internationalization involves creating flexible and adaptable designs that accommodate various languages, scripts, and cultural norms.\n* By preparing content and software for localization, internationalization simplifies the process of translating and adapting products for specific markets.\n* This process includes using Unicode, supporting different character sets, and ensuring compatibility with various regional formats (dates, currencies, etc.).\n* Investing in internationalization upfront reduces the time and cost associated with localizing products for multiple markets.\n\nBy prioritizing internationalization, companies can create products that are more versatile and ready for global distribution, ensuring they meet the needs of international users effectively.","internationalization",[1910,1911,1913,1915],{"id":5,"slug":1829},{"id":22,"slug":1912},"translation",{"id":13,"slug":1914},"globalization",{"id":101,"slug":1916},"gilt",{"id":1613,"status":8,"owner":1884,"created_on":1899,"title":522,"excerpt":1918,"content":1919,"slug":521,"meta_title":7,"meta_description":7,"canonical":7,"related_terms":1920},"JSON stands for JavaScript Object Notation and it's a widely used file format.","JSON is a lightweight format for storing and transporting data originally specified by Douglas Crockford in the early 2000s. It is often used when data is sent from a server to a web page.  It is \"self-describing\" and highly understandable, as it is easy for humans to read and write and for machines to parse and generate.\n\nThis programming language is independent but it is derived from the JavaScript\u002FECMAScript programming language and uses the conventions familiar to programmers of the C series of languages ​​(including C, C++, C#, Java, JavaScript, Perl, and Python).\n\nJSON is one of the best localizable file formats you can use to store your project's externalized strings. Localazy fully supports and lets you manage and translate your JSON files. \n\n## Further reading:\n- [Quick Start - JSON](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fquick-start-json)\n- [File Format - JSON](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fjson-format)\n- [JavaScript app localization with i18next and Localazy](https:\u002F\u002Flocalazy.com\u002Fblog\u002Fjavascript-app-localization-i18next-localazy)",[1921,1923,1925,1927],{"id":113,"slug":1922},"java",{"id":319,"slug":1924},"externalized-string",{"id":1926,"slug":514},75,{"id":1928,"slug":1929},83,"python",{"id":5,"status":8,"owner":1884,"created_on":1931,"title":217,"excerpt":1932,"content":1933,"slug":1829,"meta_title":7,"meta_description":7,"canonical":7,"related_terms":1934},"2022-03-17T12:22:54.000Z","The process of preparing a product for a particular market.","Localization (l10n) is an essential part of the **[internationalization](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Finternationalization)** process. During localization, a product is prepared to be used in a particular destination, language and culture. Part of the localization process consists of changing locales such as currency, text orientation, or date format; and aligning the product with local, technical, or legislative requirements.\n\nA crucial part of localization is **[translation](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Ftranslation\u002F)**.\n\nLocalization is the process of adapting an internationalized product to meet the specific needs of a target market by translating it into the native language of that market. This includes translating the user interface, text, graphics, and other content to match the specific target locale.\n\nThe goal of localization is to provide an optimal user experience for the target market, as well as to make the product accessible to a wider audience. This process often involves more than just translation, and may include adjusting graphics, changing text length to accommodate different writing systems, and modifying the product's layout to fit cultural differences.\n\nInternationalization and localization are essential components of **[globalization](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fglobalization)** (g11n) and play a key role in expanding a product's reach and success. It's important to ensure that any Creative Commons attribution is considered during localization to prevent copyright infringement.\n\nBy localizing products, companies can reach new markets and increase their customer base, ultimately helping their business grow and thrive. The number of letters in the term i18n and l10n refers to the number of characters between the first and last letters in the term, and is used as a shorthand for internationalization and localization, respectively.",[1935,1936,1937,1938,1940],{"id":5,"slug":1829},{"id":22,"slug":1912},{"id":101,"slug":1916},{"id":154,"slug":1939},"translation-management-system-tms",{"id":1904,"slug":1908},{"id":244,"status":8,"owner":1884,"created_on":1942,"title":1943,"excerpt":1944,"content":1945,"slug":316,"meta_title":764,"meta_description":764,"canonical":764,"related_terms":1946},"2026-05-12T07:09:22.000Z","Machine translation (MT)","The process of translating using computational linguistics.","A machine translation engine is a software tool that translates a text from one language to another without the help of human translators.\n\nMachine translation, also known as MT, is widely used as the first round of translations and is frequently very effective for short strings. However, it can produce unsatisfactory results when context knowledge is required, and thus, a human review is always advised.\n\n### 💬 Methods used in machine translation\n\nMachine translation engines recently experienced huge improvements related to the advanced use of neural networks, but they generally rely on these different methods:\n\n* [Statistical machine translation (SMT)](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fstatistical-machine-translation\u002F \"https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fstatistical-machine-translation\u002F\")\n* [Example-based machine translation (EBMT)](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fexample-based-machine-translation \"https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fexample-based-machine-translation\")\n* [Hybrid machine translation (HMT)](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fhybrid-machine-translation \"https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fhybrid-machine-translation\")\n* [Neural machine translation (NMT)](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fneural-machine-translation\u002F \"https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fneural-machine-translation\u002F\")\n\nNeural machine translation (used by [AI-powered translation](https:\u002F\u002Flocalazy.com\u002Fdictionary\u002Fai-powered-translation) engines) is the most sophisticated type of instant translation today. It uses machine learning to improve its translation capabilities. As the engine translates more text with each request, the better results it produces with time by learning. Most instant translation services use this technology.\n\n### 🔍 What's the difference between HAMT and MAHT?\n\nWithin the realm of machine translation, it’s important to distinguish between **Human-Assisted Machine Translation (HAMT)** and **Machine-Assisted Human Translation (MAHT)**:\n\n* [**Human-Assisted Machine Translation (HAMT)**](\u002Fdictionary\u002Fhuman-assisted-mt): This process involves a human reviewing translations generated by machine translation (MT) engines. It is also known as MT plus post-editing and\u002For pre-editing. The machine handles the initial translation, which is then edited by a human to improve accuracy and context. This approach is useful for projects with repetitive content and where budget or time constraints are significant.\n* [**Machine-Assisted Human Translation (MAHT)**](\u002Fdictionary\u002Fmaht): In this method, human translators use computer software to aid their work. Translators receive machine translation suggestions, but they decide how to use them. This approach allows for high translation accuracy while benefiting from features like translation glossaries and memories, which enhance the efficiency and consistency of the translation process.\n\n### 🦾 MT engines available in Localazy \n\nLocalazy users can use the most popular and advanced [MT engines](https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fmachine-translation \"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fmachine-translation\") to translate their content:\n\n* Amazon Translate (available for free)\n* Google Translate\n* DeepL\n* Azure Translator\n* OpenAI (ChatGPT), with your own API key\n\n> *Users can unlock different engines depending on the plan they buy. See our [pricing](https:\u002F\u002Flocalazy.com\u002Fpricing) and [docs](https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines?srsltid=AfmBOoo--lURSBHDiHEoe3rYL3xSQHaZcTsl6kd7wwUYRGC-sGTTmG94 \"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines?srsltid=AfmBOoo--lURSBHDiHEoe3rYL3xSQHaZcTsl6kd7wwUYRGC-sGTTmG94\") for more details.*\n\n### 📚 Additional resources:\n\n* [What is machine translation?](https:\u002F\u002Fwww.gala-global.org\u002Fwhat-machine-translation)\n* [History of machine translation](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHistory_of_machine_translation)",[1947,1949,1951,1953],{"id":441,"slug":1948},"maht",{"id":1681,"slug":1950},"mtpe-machine-translation-post-editing",{"id":1615,"slug":1952},"deepl",{"id":1954,"slug":1955},136,"human-assisted-mt",{"id":1957,"status":8,"owner":1884,"created_on":1958,"title":1959,"excerpt":1960,"content":1961,"slug":1962,"meta_title":7,"meta_description":7,"canonical":764,"related_terms":1963},80,"2022-03-17T12:22:55.000Z","NodeJS","NodeJS is a run-time JavaScript enviroment for server-side use.","NodeJS is a run-time JavaScript envinroment for server-side use. It comes packaged with everything needed to run JavaScript on a server. It uses NPM as a package manager to add additional features. NodeJS is mainly used for creating web applications and serving websites to end-users. It is also a popular first language to learn due to it's small learning curve and its high use.\n\nYou can localize NodeJS apps using Localazy.","nodejs",[1964],{"id":1926,"slug":514},{"id":1183,"status":8,"owner":1966,"created_on":1967,"title":1968,"excerpt":1969,"content":1970,"slug":1971,"meta_title":7,"meta_description":7,"canonical":7,"related_terms":1972},"4d38dee1-a9d9-4a00-a57d-3ced2b7cb39c","2026-05-02T20:54:14.000Z","Postman","Postman is an API platform for building and using APIs. ","Postman is a handy platform for developers to build and test APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration with various tools, allowing developers to work with APIs more comfortably - from design, testing, documentation, and mocking to the sharing and discoverability of their APIs.\n\nSome of the Postman API Tools are:\n- API client\n- Mock servers\n- Monitors\n- API detection\n\nPostman began as a side project to solve a specific problem: Abhinav Asthana, Postman's CEO and co-founder, set out to create a tool that would facilitate the API testing process. Postman is now the world's leading API platform.\n\n> You can use Postman to play with the [Localazy Public API](\u002Fdocs\u002Fapi\u002Fintroduction#run-this-api-in-postman).\n\n> Learn more about Postman on the official website: [https:\u002F\u002Fwww.postman.com\u002F](https:\u002F\u002Fwww.postman.com\u002F)","postman",[1973],{"id":1898,"slug":659},"Learn everything you need to know to quickly start creating multilingual NestJS applications with nestjs-i18n and Localazy in this comprehensive article!","\u003Cp>Localization is crucial to building modern, accessible web applications that cater to a global audience. However, it can be daunting, especially if you're just starting with it. In the case of \u003Ca href=\"https:\u002F\u002Fnestjs.com\u002F\">NestJS\u003C\u002Fa>, that's where \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">nestjs-i18n\u003C\u002Fa> and Localazy come in; to help simplify its implementation and enable you to focus on the more important task of building amazing applications.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card kg-card-hascaption\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-20.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"300\" height=\"75\">\u003Cfigcaption>Source: \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">https:\u002F\u002Fnestjs-i18n.com\u002F\u003C\u002Fa>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Ch2 id=\"introduction\">👋 Introduction \u003Ca class=\"markdownit-header-anchor\" href=\"#introduction\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Let's quickly explain the definitions of localization (l10n) and internationalization (i18n) and introduce Localazy. You can skip this part if you are already familiar with the terms and platform.\u003C\u002Fp>\u003Ch3 id=\"what-is-localization\">What is Localization? \u003Ca class=\"markdownit-header-anchor\" href=\"#what-is-localization\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>\u003Ca href=\"\u002Fdictionary\u002Flocalization\">Localization\u003C\u002Fa> is an important part of the process of adapting software to suit the end user's needs. It is usually implemented by translating applications to the user's geographic language and creating locale-specific components to create a dynamic experience suited to the target locale. Localization is not limited to \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Ftranslations\">translation\u003C\u002Fa>, but translation plays a big part in localization. For applications to be localized, internationalization is used to enable easy adaptation.\u003C\u002Fp>\u003Cp>\u003Ca href=\"\u002Fdictionary\u002Finternationalization\">Internationalization\u003C\u002Fa> is the process of creating applications in a way that supports them being used in different locales and geographic regions, which makes the application globally or universally available. For example, \u003Cstrong>nestjs-i18n\u003C\u002Fstrong> is a package that integrates i18n - an internationalization module - with NestJS and makes it easy to use.\u003C\u002Fp>\u003Ch3 id=\"what-is-localazy\">What is Localazy? \u003Ca class=\"markdownit-header-anchor\" href=\"#what-is-localazy\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Localazy is a continuous \u003Ca href=\"\u002Fdictionary\u002Ftranslation-management-system-tms\">translation management platform\u003C\u002Fa> that strives to make the localization and translation process efficient and enjoyable for any project. It supports a wide variety of frameworks and an even more comprehensive range of formats through its \u003Ca href=\"\u002Ffeatures\u002Fcli\">command line interface\u003C\u002Fa> (CLI) and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fapi\u002Fintroduction\">\u003Cu>API\u003C\u002Fu>\u003C\u002Fa>. \u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-24.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"740\" height=\"380\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-24.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-24.png 740w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Localazy also offers various \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fguide-localazy-translation-services\">translation services\u003C\u002Fa> depending on the project's needs, such as highly accurate translation memory supported by \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fwhat-is-localazy-sharetm\">community-shared translations\u003C\u002Fa>\u003C\u002Fu>, \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fcontinuous-localization-team\">continuous translation services\u003C\u002Fa>\u003C\u002Fu> such as professional translations and human-assisted machine translations, and \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines\">machine translations\u003C\u002Fa>\u003C\u002Fu>. The translation interface is very simple and easy to use, with only important features.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-25.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1480\" height=\"763\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-25.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-25.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-25.png 1480w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Localazy works seamlessly with the \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">nestjs-i18n library\u003C\u002Fa>, which is one of the most popular choices when it comes to internationalization in NestJS applications. Without a localization management platform, the default would be manually translating every word and putting it in the files. This could lead to loss of meaning of words and manual errors.\u003C\u002Fp>\u003Ch4 id=\"why-use-localazy\">Why use Localazy?\u003C\u002Fh4>\u003Cul>\u003Cli>It enables easy translation of applications using either machine, human-assisted, or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fterm\u002Fprofessional-translation-services\">professional translation\u003C\u002Fa> services.\u003C\u002Fli>\u003Cli>It enables easy expansion of businesses globally as their applications can support various \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Flocales\">locales\u003C\u002Fa> and geographic markets.\u003C\u002Fli>\u003Cli>It leads to \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fmythbusters-our-users-speak-english-we-do-not-need-to-localize\">increased revenue as more users can access the application\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>Developers can focus on the application features rather than worrying about manual translations.\u003C\u002Fli>\u003Cli>It utilizes a one-time setup, and it is easy to use.\u003C\u002Fli>\u003C\u002Ful>\u003Cblockquote>Learn why Localazy is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Flocalazy-best-tool-translation-automation\">the best tool for translation automation\u003C\u002Fa> or the 12 reasons why Localazy is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002F12-reasons-why-localazy-is-better-than-spreadsheets-for-localization-projects\">better than spreadhseets\u003C\u002Fa>, even for simple projects!\u003C\u002Fblockquote>\u003Cp>Now that you know what is localization, internationalization, and the benefits of using a translation management system such as Localazy to localize your project, we can get to the practical part! 🤠 \u003C\u002Fp>\u003Ch2 id=\"first-steps\">🕹️ First steps \u003Ca class=\"markdownit-header-anchor\" href=\"#first-steps\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>We would be creating a NestJS application with an endpoint \u003Ccode>reset-password\u003C\u002Fcode> that would allow users to reset their passwords. We would then view the application response in various languages to test the integration.\u003C\u002Fp>\u003Ch3 id=\"prerequisites\">Prerequisites \u003Ca class=\"markdownit-header-anchor\" href=\"#prerequisites\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cul>\u003Cli>Basic understanding of \u003Ca href=\"https:\u002F\u002Fnestjs.com\u002F\">NestJS\u003C\u002Fa> and what i18n does\u003C\u002Fli>\u003Cli>Have \u003Ca href=\"\u002Fdictionary\u002Fnodejs\">NodeJS\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002F\">NPM\u003C\u002Fa>\u003C\u002Fli>\u003Cli>Code Editor or your favorite \u003Ca href=\"\u002Fdictionary\u002Fintegrated-development-kit-ide\">IDE\u003C\u002Fa>\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.postman.com\u002F\">Postman\u003C\u002Fa> to test the results\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"creating-a-nestjs-application\">Creating a NestJS application \u003Ca class=\"markdownit-header-anchor\" href=\"#creating-a-nestjs-application\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>If you already have a NestJS application you want to localize, skip to the next section.\u003C\u002Fp>\u003Cp>To create a NestJS application, install the NestJS CLI globally.\u003C\u002Fp>\u003Cpre>\u003Ccode>npm i -g @nestjs\u002Fcli\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Then, create a new project in your operating system terminal. The \u003Ccode>nest-i18n-localazy-example\u003C\u002Fcode> is the project name. You can name yours differently.\u003C\u002Fp>\u003Cpre>\u003Ccode>nest new nest-i18n-localazy-example\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"integrating-nestjs-i18n\">👨‍💻 Integrating nestjs-i18n \u003Ca class=\"markdownit-header-anchor\" href=\"#integrating-nestjs-i18n\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Now we need to set up the i18n library for our project.\u003C\u002Fp>\u003Ch3 id=\"installation\">Installation \u003Ca class=\"markdownit-header-anchor\" href=\"#installation\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Install \u003Cstrong>nestjs-i18n\u003C\u002Fstrong> in the Nest application to use the internationalization tools using the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm install nestjs-i18n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"set-up-the-file-or-files-to-be-translated\">Set up the file or files to be translated \u003Ca class=\"markdownit-header-anchor\" href=\"#set-up-the-file-or-files-to-be-translated\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Create a folder named \u003Ccode>i18n\u003C\u002Fcode> in the \u003Ccode>src\u003C\u002Fcode> folder of your project. Create the default locale folder. In this case, we would use \u003Ccode>en\u003C\u002Fcode> as the default locale is English.\u003C\u002Fp>\u003Cp>Create the translation file with your choice filename in this folder. The filename used in this example is \u003Ccode>test.json\u003C\u002Fcode>. Other files to be translated can also be added in this folder \u003Ccode>src\u002Fi18n\u002Fen\u003C\u002Fcode> .\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fi18n\u002Fen\u002Ftest.json\n\n{\n    \"HELLO\": \"Hello\",\n    \"PRODUCT\": {\n      \"NEW\": \"New Product: {name}\"\n    },\n    \"ENGLISH\": \"English\",\n    \"ARRAY\": [\"ONE\", \"TWO\", \"THREE\"],\n    \"cat\": \"Cat\",\n    \"cat_name\": \"Cat: {name}\",\n    \"set-up-password\": {\n      \"heading\": \"Hello, {username}\",\n      \"title\": \"Reset password\",\n      \"followLink\": \"Please follow the link sent to your email address {email} to reset your password\"\n    },\n    \"day_interval\": {\n      \"one\": \"Every day\",\n      \"other\": \"Every {count} days\",\n      \"zero\": \"Never\"\n    },\n    \"nested\": \"We go shopping: $t(test.day_interval, {{\\\"count\\\": {count} }})\"\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>We would not be using all the strings in this file in the endpoint, as I am just trying to show that different key definitions can be used, but you can try using some of the other strings while practicing. Localazy also provides a lot of information on the allowed key and value types \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fjson-format\">here\u003C\u002Fa>\u003C\u002Fu>.\u003C\u002Fp>\u003Ch3 id=\"enable-the-i18n-folder-to-be-compiled-to-the-dist-folder-during-the-build\">Enable the i18n folder to be compiled to the dist folder during the build. \u003Ca class=\"markdownit-header-anchor\" href=\"#enable-the-i18n-folder-to-be-compiled-to-the-dist-folder-during-the-build\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Navigate to \u003Ccode>nest-cli.json\u003C\u002Fcode> and modify the \u003Ccode>compilerOptions\u003C\u002Fcode> object by adding the assets property. The include property specifies the path of the files to be watched.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F nest-cli.json\n\n{\n  \"$schema\": \"https:\u002F\u002Fjson.schemastore.org\u002Fnest-cli\",\n  \"collection\": \"@nestjs\u002Fschematics\",\n  \"sourceRoot\": \"src\",\n  \"compilerOptions\": {\n    \"deleteOutDir\": true,\n    \"assets\": [\n      { \"include\": \"i18n\u002F**\u002F*\", \"watchAssets\": true }\n    ]\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"setting-up-the-i18n-module\">Setting up the i18n Module \u003Ca class=\"markdownit-header-anchor\" href=\"#setting-up-the-i18n-module\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Now, we set up the i18n Module to be accessible throughout the application by adding in the root of the application. Add resolvers.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fapp.module.ts\n\nimport { Module } from '@nestjs\u002Fcommon';\nimport { AppController } from '.\u002Fapp.controller';\nimport { AppService } from '.\u002Fapp.service';\nimport * as path from 'path';\nimport {\n  AcceptLanguageResolver,\n  I18nJsonLoader,\n  I18nModule,\n  QueryResolver,\n} from 'nestjs-i18n';\n\n@Module({\n  imports: [\n    I18nModule.forRoot({\n      fallbackLanguage: 'en',\n      loaderOptions: {\n        path: path.join(__dirname, '\u002Fi18n\u002F'),\n        watch: true,\n      },\n      resolvers: [\n        { use: QueryResolver, options: ['lang'] },\n        AcceptLanguageResolver,\n      ],\n    })\n  ],\n  controllers: [AppController],\n  providers: [AppService],\n})\nexport class AppModule {}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Breakdown of the code snippet above and what it does:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>fallbackLanguage:\u003C\u002Fstrong> is the language to be used when a translation does not exist in the selected locale or no language is chosen.\u003C\u002Fli>\u003Cli>\u003Cstrong>watch:\u003C\u002Fstrong> setting this property to \u003Ccode>true\u003C\u002Fcode> in the \u003Ccode>loaderOptions\u003C\u002Fcode> enables live reloading of the application.\u003C\u002Fli>\u003Cli>\u003Cstrong>resolvers: \u003C\u002Fstrong>option is used to determine how the language is detected. In this case, we use a \u003Ccode>QueryResolver\u003C\u002Fcode> with options as lang which would enable us to dynamically use query parameters to set the language. We will see how this works when viewing the translated application.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Ch3 id=\"start-translating-your-applications\">Start translating your applications \u003Ca class=\"markdownit-header-anchor\" href=\"#start-translating-your-applications\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Start translating your applications by adding the translated variables in your code using the \u003Ccode>i18n.t\u003C\u002Fcode> method. Navigate to the \u003Ccode>app.controller.ts\u003C\u002Fcode> file, create a new endpoint route called ‘set-password’  as shown in \u003Cstrong>Lines 15-23,\u003C\u002Fstrong> and make use of the localized strings.\u003C\u002Fp>\u003Cp>To access the localized strings, the filename comes first, then the object property. Nested objects and arrays can be accessed using dot notation.\u003C\u002Fp>\u003Cp>Dynamic strings require a second argument to be passed containing the dynamic data. Check the \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">\u003Cu>nestjs-i18n documentation\u003C\u002Fu>\u003C\u002Fa> for a more in-depth study on string formatting and how to deal with various data such as Plurals, referencing other strings, and more.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fapp.controller.ts\n\nimport { Body, Controller, Get, HttpCode, Post } from '@nestjs\u002Fcommon';\nimport { AppService } from '.\u002Fapp.service';\nimport { I18n, I18nContext } from 'nestjs-i18n';\nimport { passwordDto, SetUpPasswordDto } from '.\u002Fpassword.dto';\n\n@Controller()\nexport class AppController {\n  constructor(private readonly appService: AppService) {}\n\n  @Get()\n  getHello(): string {\n    return ('Hello World!');\n  }\n\n  @Post('reset-password')  \u002F\u002F line 15\n  @HttpCode(200)\n  setUpPassword(@I18n() i18n: I18nContext, @Body() setUpPasswordDto: SetUpPasswordDto): passwordDto {\n    return {\n      title: i18n.t(`test.set-up-password.title`),\n      text: `${i18n.t('test.set-up-password.heading', { args: { username: resetPasswordDto.username }})},\n\n       ${i18n.t(`test.set-up-password.followLink`, { args: { email: resetPasswordDto.email }})}`.replace(\u002F\\s\\s+\u002Fg, ' ')\n    }\n  }  \u002F\u002F line 23\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>In the above code snippet, the replace method on the \u003Ccode>text\u003C\u002Fcode> property is used to strip new lines and multiple spaces.\u003C\u002Fp>\u003Cp>A dto file called \u003Ccode>password.dto.ts\u003C\u002Fcode> was created in the src directory for validation, and it was used in the \u003Ccode>app.controller.ts\u003C\u002Fcode> file. Here is the content of the file:\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fpassword.dto.ts\n\nexport class ResetPasswordDto {\n    username: string;\n    email: string\n}\n\nexport class passwordDto {\n    title: string;\n    text: string;\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"translating-using-localazy\">🗺️ Translating using Localazy \u003Ca class=\"markdownit-header-anchor\" href=\"#translating-using-localazy\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Log in or create a \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002F\">\u003Cu>Localazy\u003C\u002Fu>\u003C\u002Fa> account if you do not have one.\u003C\u002Fp>\u003Cp>Create a new project.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-27.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"716\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-27.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-27.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-27.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Enter a project name of your choice. I used nest-integration, but you can decide to use a different name. Change the source language if the strings to be translated are not in English, but it's generally recommended to use English to get the most accurate machine translation suggestions and be able to order professional translations. Then, click the \u003Cem>Create new project\u003C\u002Fem> button.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-28.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"1139\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-28.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-28.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-28.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Now, let us go back to our application code.\u003C\u002Fp>\u003Ch3 id=\"install-localazy-cli\">Install Localazy CLI \u003Ca class=\"markdownit-header-anchor\" href=\"#install-localazy-cli\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Install the\u003Cem> \u003C\u002Fem>\u003Cstrong>Localazy \u003C\u002Fstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">\u003Cstrong>\u003Cu>CLI\u003C\u002Fu>\u003C\u002Fstrong>\u003C\u002Fa>\u003Cem> \u003C\u002Fem>locally\u003Cem> \u003C\u002Fem>as a dev dependency\u003Cem> \u003C\u002Fem>using the npm package to enable anyone that runs the code to install it when running the \u003Ccode>npm install\u003C\u002Fcode> command. Use the command\u003C\u002Fp>\u003Cpre>\u003Ccode>npm i --save-dev @localazy\u002Fcli\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"add-localazy-configuration-script\">Add Localazy configuration script \u003Ca class=\"markdownit-header-anchor\" href=\"#add-localazy-configuration-script\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>In the project root folder, create a configuration script called \u003Ccode>localazy.json\u003C\u002Fcode> which tells the CLI what files to upload and how to process the downloaded translations. There are a lot of configurations that can be done, and you can have an in-depth read of them \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">here\u003C\u002Fa>\u003C\u002Fu>. It’s also good to note some of the features also depend on the pricing tier being used. For example, format conversions are not available in the free tier.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F localazy.json\n\n{\n    \"writeKey\": \"&lt;your-apps-write-key&gt;\",\n    \"readKey\": \"&lt;your-apps-read-key&gt;\",\n    \"upload\": {\n      \"type\": \"json\",\n      \"files\": \"src\u002Fi18n\u002Fen\u002F*.json\"\n    },\n    \"download\": {\n      \"files\": \"src\u002Fi18n\u002F${lang}\u002F${file}\"\n    },\n    \"conversion\": {},\n    \"transformations\": []   \n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Breakdown of the code snippet above and what it does:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>writeKey and readKey:\u003C\u002Fstrong> are used to authorize the request. Navigate to the Localazy project directory and the settings tab to copy the keys.\u003C\u002Fli>\u003Cli>\u003Cstrong>upload:\u003C\u002Fstrong> object specifies the type of files to be uploaded and the path of the files.\u003C\u002Fli>\u003Cli>\u003Cstrong>download:\u003C\u002Fstrong> object describes how to process translated files and where to store them in the directory.\u003C\u002Fli>\u003Cli>\u003Cstrong>${lang}:\u003C\u002Fstrong> is a variable used to specify the language translated to using the language code such as es, de, fr, and more.\u003C\u002Fli>\u003Cli>\u003Cstrong>${file}:\u003C\u002Fstrong> is used to ensure the filename remains the same under the translated locales folders when the translated files are downloaded.\u003C\u002Fli>\u003Cli>\u003Cstrong>conversion:\u003C\u002Fstrong> is used to specify how to process downloaded files. It could be by converting to a different file format, specifying variable replacements in files, and more. We do not need to do any conversion, so we leave it empty.\u003C\u002Fli>\u003Cli>\u003Cstrong>transformations:\u003C\u002Fstrong> are used to clean up paths, file names, and other parameters before files upload using the operations specified. We do not need to do any transformation, so we leave it empty.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Go to the project settings to copy the write and read key values and paste them into the \u003Ccode>localazy.json\u003C\u002Fcode> file.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-29.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"564\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-29.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-29.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-29.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"add-localazy-commands-to-packagejson\">Add Localazy commands to package.json \u003Ca class=\"markdownit-header-anchor\" href=\"#add-localazy-commands-to-packagejson\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>To enable working with others on the project, we would add the localazy download and upload commands in the \u003Ccode>package.json\u003C\u002Fcode> script commands to make it easily accessible.\u003C\u002Fp>\u003Cpre>\u003Ccode>\"scripts\": {\n    \u002F\u002F ... other commands\n    \"upload\": \"localazy upload\",\n    \"download\": \"localazy download\",\n    \u002F\u002F ... other commands\n},\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>Note: Do not remove other commands in the scripts property\u003C\u002Fstrong>\u003C\u002Fp>\u003Ch3 id=\"upload-files\">Upload files \u003Ca class=\"markdownit-header-anchor\" href=\"#upload-files\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Upload the files with the strings to be translated to the Localazy platform using:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run upload\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"view-uploaded-strings\">View uploaded strings \u003Ca class=\"markdownit-header-anchor\" href=\"#view-uploaded-strings\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Navigate to the localazy project and view the uploaded strings by selecting the first row or clicking the \u003Cem>Manage \u003C\u002Fem>button. In our case, the source language is English:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-30.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"883\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-30.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-30.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-30.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"add-languages\">Add languages \u003Ca class=\"markdownit-header-anchor\" href=\"#add-languages\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Add the languages to be translated to by clicking the add languages button and selecting the languages. Let’s add French, German, and Spanish language.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-31.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"886\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-31.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-31.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-31.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"translating-on-the-localazy-dashboard\">Translating on the Localazy dashboard \u003Ca class=\"markdownit-header-anchor\" href=\"#translating-on-the-localazy-dashboard\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Localazy offers three general approaches to choose from and blend to translate your project:\u003C\u002Fp>\u003Col>\u003Cli>💪🏻 \u003Cstrong>Translate on your own or invite contributors - \u003C\u002Fstrong>You can \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Ftranslating-strings\">\u003Cu>start translating on your own\u003C\u002Fu>\u003C\u002Fa> and use our built-in suggestion system.\u003C\u002Fli>\u003Cli>🦾 \u003Cstrong>Translate everything in bulk via machine translation - \u003C\u002Fstrong>With the Localazy \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftiers\u002Fautopilot\">\u003Cu>Autopilot plan\u003C\u002Fu>\u003C\u002Fa>, you can instantly translate all strings by \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines#mt-pre-translate\">\u003Cu>running a machine translation over the content\u003C\u002Fu>\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>🚩 \u003Cstrong>Fully automate the translation process with the \u003C\u002Fstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcontinuous-localization-team\">\u003Cstrong>\u003Cu>Continuous Localization\u003C\u002Fu>\u003C\u002Fstrong>\u003C\u002Fa>\u003Cstrong> services\u003C\u002Fstrong> - Once your Localazy integration is set up, you can order translations from our vetted translators and get your project translated by professionals automatically. The service is also proactive, so you don't have to micromanage translators, and you can visit Localazy only once in a while to check the progress.\u003C\u002Fli>\u003C\u002Fol>\u003Cp>For now, we can translate on our own. To enter the translation session, go to the \u003Cem>Translations\u003C\u002Fem> page of your project, and click on the blue button in one of the language rows. You can also use the context menu to reveal more options:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-32.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"883\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-32.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-32.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-32.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>If you are on a \u003Ca href=\"\u002Ftiers\u002Ffree\">Free tier\u003C\u002Fa>, you can use the Amazon machine translation suggestions or ShareTM translations to translate your texts. Do this for all the strings and all languages.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-33.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"1113\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-33.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-33.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-33.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Confirm all translations have been done:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-34.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"707\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-34.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-34.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-34.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cblockquote>Localazy also offers continuous translations such as professional translations and proofreading, or more affordable human-assisted machine translations. Read up on these services \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fguide-localazy-translation-services\">\u003Cu>here\u003C\u002Fu>\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Ch3 id=\"download-the-translated-files\">Download the translated files \u003Ca class=\"markdownit-header-anchor\" href=\"#download-the-translated-files\">🔗\u003C\u002Fa>\u003C\u002Fh3>\u003Cp>Download files by running the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run download\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Confirm the successful download by viewing the files in the i18n folder:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-35.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"508\" height=\"434\">\u003C\u002Ffigure>\u003Ch2 id=\"the-translated-application\">🚩 The Translated Application \u003Ca class=\"markdownit-header-anchor\" href=\"#the-translated-application\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Start the application server with the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run start:dev\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Make requests to the desired endpoint. We would use \u003Ca href=\"\u002Fdictionary\u002Fpostman\">Postman\u003C\u002Fa> to send requests.\u003C\u002Fp>\u003Cp>Open the Postman application and send a new request to the endpoint \u003Ccode>http:\u002F\u002Flocalhost:3000\u002Fset-password?lang=es\u003C\u002Fcode>, passing the language as a query parameter called \u003Ccode>lang\u003C\u002Fcode>. View the response in the default language and other languages used by changing the query parameter to the language code.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-36.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"911\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-36.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-36.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-36.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-37.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"903\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-37.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-37.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-37.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-38.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"902\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-38.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-38.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-38.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch2 id=\"conclusion\">✔️ Conclusion \u003Ca class=\"markdownit-header-anchor\" href=\"#conclusion\">🔗\u003C\u002Fa>\u003C\u002Fh2>\u003Cp>Our application has now been localized using Localazy, and developers can focus on creating applications without worrying about translating applications to ensure it is accessible to a wide range of users.\u003C\u002Fp>\u003Cp>Check out the code on GitHub \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMoyinoluwaA\u002FNestjs-Localazy-Template\">\u003Cu>here\u003C\u002Fu>\u003C\u002Fa>, and feel free to use it as a template for your NestJS applications by following the steps in the README.md file.\u003C\u002Fp>",{"id":286,"status":8,"created_on":1977,"modified_on":1978,"icon":1979,"header":1980,"description":1981,"button_label":1982,"link":1983},"2022-03-17T12:23:03.000Z","2023-01-19T11:50:04.000Z","member","Automate your localization today! ⚙️","Translate your project in a breeze, utilize the advanced features and fully automate your localization process with Localazy! ","Join Localazy","register",{"slug":1866,"id":1859,"uuid":1985,"title":1865,"html":1986,"comment_id":1859,"feature_image":1869,"featured":17,"visibility":1987,"email_recipient_filter":1988,"created_at":1989,"updated_at":1867,"published_at":1868,"custom_excerpt":1974,"codeinjection_head":1990,"codeinjection_foot":7,"custom_template":7,"canonical_url":7,"authors":1991,"tags":1997,"primary_author":2068,"primary_tag":2069,"url":2070,"excerpt":1974,"reading_time":456,"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":1882,"cta":1976,"plainTags":1870},"a59db4d6-e177-416b-9d07-3da3e96cef31","\u003Cp>Localization is crucial to building modern, accessible web applications that cater to a global audience. However, it can be daunting, especially if you're just starting with it. In the case of \u003Ca href=\"https:\u002F\u002Fnestjs.com\u002F\">NestJS\u003C\u002Fa>, that's where \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">nestjs-i18n\u003C\u002Fa> and Localazy come in; to help simplify its implementation and enable you to focus on the more important task of building amazing applications.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card kg-card-hascaption\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-20.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"300\" height=\"75\">\u003Cfigcaption>Source: \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">https:\u002F\u002Fnestjs-i18n.com\u002F\u003C\u002Fa>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Ch2 id=\"%F0%9F%91%8B-introduction\">👋 Introduction\u003C\u002Fh2>\u003Cp>Let's quickly explain the definitions of localization (l10n) and internationalization (i18n) and introduce Localazy. You can skip this part if you are already familiar with the terms and platform.\u003C\u002Fp>\u003Ch3 id=\"what-is-localization\">What is Localization?\u003C\u002Fh3>\u003Cp>\u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Flocalization\">Localization\u003C\u002Fa> is an important part of the process of adapting software to suit the end user's needs. It is usually implemented by translating applications to the user's geographic language and creating locale-specific components to create a dynamic experience suited to the target locale. Localization is not limited to \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Ftranslations\">translation\u003C\u002Fa>, but translation plays a big part in localization. For applications to be localized, internationalization is used to enable easy adaptation.\u003C\u002Fp>\u003Cp>\u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Finternationalization\">Internationalization\u003C\u002Fa> is the process of creating applications in a way that supports them being used in different locales and geographic regions, which makes the application globally or universally available. For example, \u003Cstrong>nestjs-i18n\u003C\u002Fstrong> is a package that integrates i18n - an internationalization module - with NestJS and makes it easy to use.\u003C\u002Fp>\u003Ch3 id=\"what-is-localazy\">What is Localazy?\u003C\u002Fh3>\u003Cp>Localazy is a continuous \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Ftranslation-management-system-tms\">translation management platform\u003C\u002Fa> that strives to make the localization and translation process efficient and enjoyable for any project. It supports a wide variety of frameworks and an even more comprehensive range of formats through its \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Ffeatures\u002Fcli\">command line interface\u003C\u002Fa> (CLI) and \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fapi\u002Fintroduction\">\u003Cu>API\u003C\u002Fu>\u003C\u002Fa>. \u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-24.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"740\" height=\"380\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-24.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-24.png 740w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Localazy also offers various \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fguide-localazy-translation-services\">translation services\u003C\u002Fa> depending on the project's needs, such as highly accurate translation memory supported by \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fwhat-is-localazy-sharetm\">community-shared translations\u003C\u002Fa>\u003C\u002Fu>, \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fcontinuous-localization-team\">continuous translation services\u003C\u002Fa>\u003C\u002Fu> such as professional translations and human-assisted machine translations, and \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines\">machine translations\u003C\u002Fa>\u003C\u002Fu>. The translation interface is very simple and easy to use, with only important features.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-25.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1480\" height=\"763\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-25.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-25.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-25.png 1480w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Localazy works seamlessly with the \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">nestjs-i18n library\u003C\u002Fa>, which is one of the most popular choices when it comes to internationalization in NestJS applications. Without a localization management platform, the default would be manually translating every word and putting it in the files. This could lead to loss of meaning of words and manual errors.\u003C\u002Fp>\u003Ch4 id=\"why-use-localazy\">Why use Localazy?\u003C\u002Fh4>\u003Cul>\u003Cli>It enables easy translation of applications using either machine, human-assisted, or \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fterm\u002Fprofessional-translation-services\">professional translation\u003C\u002Fa> services.\u003C\u002Fli>\u003Cli>It enables easy expansion of businesses globally as their applications can support various \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftags\u002Flocales\">locales\u003C\u002Fa> and geographic markets.\u003C\u002Fli>\u003Cli>It leads to \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fmythbusters-our-users-speak-english-we-do-not-need-to-localize\">increased revenue as more users can access the application\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>Developers can focus on the application features rather than worrying about manual translations.\u003C\u002Fli>\u003Cli>It utilizes a one-time setup, and it is easy to use.\u003C\u002Fli>\u003C\u002Ful>\u003Cblockquote>Learn why Localazy is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Flocalazy-best-tool-translation-automation\">the best tool for translation automation\u003C\u002Fa> or the 12 reasons why Localazy is \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002F12-reasons-why-localazy-is-better-than-spreadsheets-for-localization-projects\">better than spreadhseets\u003C\u002Fa>, even for simple projects!\u003C\u002Fblockquote>\u003Cp>Now that you know what is localization, internationalization, and the benefits of using a translation management system such as Localazy to localize your project, we can get to the practical part! 🤠 \u003C\u002Fp>\u003Ch2 id=\"%F0%9F%95%B9%EF%B8%8F-first-steps\">🕹️ First steps\u003C\u002Fh2>\u003Cp>We would be creating a NestJS application with an endpoint \u003Ccode>reset-password\u003C\u002Fcode> that would allow users to reset their passwords. We would then view the application response in various languages to test the integration.\u003C\u002Fp>\u003Ch3 id=\"prerequisites\">Prerequisites\u003C\u002Fh3>\u003Cul>\u003Cli>Basic understanding of \u003Ca href=\"https:\u002F\u002Fnestjs.com\u002F\">NestJS\u003C\u002Fa> and what i18n does\u003C\u002Fli>\u003Cli>Have \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Fnodejs\">NodeJS\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002F\">NPM\u003C\u002Fa>\u003C\u002Fli>\u003Cli>Code Editor or your favorite \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Fintegrated-development-kit-ide\">IDE\u003C\u002Fa>\u003C\u002Fli>\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.postman.com\u002F\">Postman\u003C\u002Fa> to test the results\u003C\u002Fli>\u003C\u002Ful>\u003Ch3 id=\"creating-a-nestjs-application\">Creating a NestJS application\u003C\u002Fh3>\u003Cp>If you already have a NestJS application you want to localize, skip to the next section.\u003C\u002Fp>\u003Cp>To create a NestJS application, install the NestJS CLI globally.\u003C\u002Fp>\u003Cpre>\u003Ccode>npm i -g @nestjs\u002Fcli\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Then, create a new project in your operating system terminal. The \u003Ccode>nest-i18n-localazy-example\u003C\u002Fcode> is the project name. You can name yours differently.\u003C\u002Fp>\u003Cpre>\u003Ccode>nest new nest-i18n-localazy-example\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB-integrating-nestjs-i18n\">👨‍💻 Integrating nestjs-i18n\u003C\u002Fh2>\u003Cp>Now we need to set up the i18n library for our project.\u003C\u002Fp>\u003Ch3 id=\"installation\">Installation\u003C\u002Fh3>\u003Cp>Install \u003Cstrong>nestjs-i18n\u003C\u002Fstrong> in the Nest application to use the internationalization tools using the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm install nestjs-i18n\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"set-up-the-file-or-files-to-be-translated\">Set up the file or files to be translated\u003C\u002Fh3>\u003Cp>Create a folder named \u003Ccode>i18n\u003C\u002Fcode> in the \u003Ccode>src\u003C\u002Fcode> folder of your project. Create the default locale folder. In this case, we would use \u003Ccode>en\u003C\u002Fcode> as the default locale is English.\u003C\u002Fp>\u003Cp>Create the translation file with your choice filename in this folder. The filename used in this example is \u003Ccode>test.json\u003C\u002Fcode>. Other files to be translated can also be added in this folder \u003Ccode>src\u002Fi18n\u002Fen\u003C\u002Fcode> .\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fi18n\u002Fen\u002Ftest.json\n\n{\n    \"HELLO\": \"Hello\",\n    \"PRODUCT\": {\n      \"NEW\": \"New Product: {name}\"\n    },\n    \"ENGLISH\": \"English\",\n    \"ARRAY\": [\"ONE\", \"TWO\", \"THREE\"],\n    \"cat\": \"Cat\",\n    \"cat_name\": \"Cat: {name}\",\n    \"set-up-password\": {\n      \"heading\": \"Hello, {username}\",\n      \"title\": \"Reset password\",\n      \"followLink\": \"Please follow the link sent to your email address {email} to reset your password\"\n    },\n    \"day_interval\": {\n      \"one\": \"Every day\",\n      \"other\": \"Every {count} days\",\n      \"zero\": \"Never\"\n    },\n    \"nested\": \"We go shopping: $t(test.day_interval, {{\\\"count\\\": {count} }})\"\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>We would not be using all the strings in this file in the endpoint, as I am just trying to show that different key definitions can be used, but you can try using some of the other strings while practicing. Localazy also provides a lot of information on the allowed key and value types \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fjson-format\">here\u003C\u002Fa>\u003C\u002Fu>.\u003C\u002Fp>\u003Ch3 id=\"enable-the-i18n-folder-to-be-compiled-to-the-dist-folder-during-the-build\">Enable the i18n folder to be compiled to the dist folder during the build.\u003C\u002Fh3>\u003Cp>Navigate to \u003Ccode>nest-cli.json\u003C\u002Fcode> and modify the \u003Ccode>compilerOptions\u003C\u002Fcode> object by adding the assets property. The include property specifies the path of the files to be watched.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F nest-cli.json\n\n{\n  \"$schema\": \"https:\u002F\u002Fjson.schemastore.org\u002Fnest-cli\",\n  \"collection\": \"@nestjs\u002Fschematics\",\n  \"sourceRoot\": \"src\",\n  \"compilerOptions\": {\n    \"deleteOutDir\": true,\n    \"assets\": [\n      { \"include\": \"i18n\u002F**\u002F*\", \"watchAssets\": true }\n    ]\n  }\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"setting-up-the-i18n-module\">Setting up the i18n Module\u003C\u002Fh3>\u003Cp>Now, we set up the i18n Module to be accessible throughout the application by adding in the root of the application. Add resolvers.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fapp.module.ts\n\nimport { Module } from '@nestjs\u002Fcommon';\nimport { AppController } from '.\u002Fapp.controller';\nimport { AppService } from '.\u002Fapp.service';\nimport * as path from 'path';\nimport {\n  AcceptLanguageResolver,\n  I18nJsonLoader,\n  I18nModule,\n  QueryResolver,\n} from 'nestjs-i18n';\n\n@Module({\n  imports: [\n    I18nModule.forRoot({\n      fallbackLanguage: 'en',\n      loaderOptions: {\n        path: path.join(__dirname, '\u002Fi18n\u002F'),\n        watch: true,\n      },\n      resolvers: [\n        { use: QueryResolver, options: ['lang'] },\n        AcceptLanguageResolver,\n      ],\n    })\n  ],\n  controllers: [AppController],\n  providers: [AppService],\n})\nexport class AppModule {}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Breakdown of the code snippet above and what it does:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>fallbackLanguage:\u003C\u002Fstrong> is the language to be used when a translation does not exist in the selected locale or no language is chosen.\u003C\u002Fli>\u003Cli>\u003Cstrong>watch:\u003C\u002Fstrong> setting this property to \u003Ccode>true\u003C\u002Fcode> in the \u003Ccode>loaderOptions\u003C\u002Fcode> enables live reloading of the application.\u003C\u002Fli>\u003Cli>\u003Cstrong>resolvers: \u003C\u002Fstrong>option is used to determine how the language is detected. In this case, we use a \u003Ccode>QueryResolver\u003C\u002Fcode> with options as lang which would enable us to dynamically use query parameters to set the language. We will see how this works when viewing the translated application.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>\u003Cbr>\u003C\u002Fp>\u003Ch3 id=\"start-translating-your-applications\">Start translating your applications\u003C\u002Fh3>\u003Cp>Start translating your applications by adding the translated variables in your code using the \u003Ccode>i18n.t\u003C\u002Fcode> method. Navigate to the \u003Ccode>app.controller.ts\u003C\u002Fcode> file, create a new endpoint route called ‘set-password’  as shown in \u003Cstrong>Lines 15-23,\u003C\u002Fstrong> and make use of the localized strings.\u003C\u002Fp>\u003Cp>To access the localized strings, the filename comes first, then the object property. Nested objects and arrays can be accessed using dot notation.\u003C\u002Fp>\u003Cp>Dynamic strings require a second argument to be passed containing the dynamic data. Check the \u003Ca href=\"https:\u002F\u002Fnestjs-i18n.com\u002F\">\u003Cu>nestjs-i18n documentation\u003C\u002Fu>\u003C\u002Fa> for a more in-depth study on string formatting and how to deal with various data such as Plurals, referencing other strings, and more.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fapp.controller.ts\n\nimport { Body, Controller, Get, HttpCode, Post } from '@nestjs\u002Fcommon';\nimport { AppService } from '.\u002Fapp.service';\nimport { I18n, I18nContext } from 'nestjs-i18n';\nimport { passwordDto, SetUpPasswordDto } from '.\u002Fpassword.dto';\n\n@Controller()\nexport class AppController {\n  constructor(private readonly appService: AppService) {}\n\n  @Get()\n  getHello(): string {\n    return ('Hello World!');\n  }\n\n  @Post('reset-password')  \u002F\u002F line 15\n  @HttpCode(200)\n  setUpPassword(@I18n() i18n: I18nContext, @Body() setUpPasswordDto: SetUpPasswordDto): passwordDto {\n    return {\n      title: i18n.t(`test.set-up-password.title`),\n      text: `${i18n.t('test.set-up-password.heading', { args: { username: resetPasswordDto.username }})},\n\n       ${i18n.t(`test.set-up-password.followLink`, { args: { email: resetPasswordDto.email }})}`.replace(\u002F\\s\\s+\u002Fg, ' ')\n    }\n  }  \u002F\u002F line 23\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>In the above code snippet, the replace method on the \u003Ccode>text\u003C\u002Fcode> property is used to strip new lines and multiple spaces.\u003C\u002Fp>\u003Cp>A dto file called \u003Ccode>password.dto.ts\u003C\u002Fcode> was created in the src directory for validation, and it was used in the \u003Ccode>app.controller.ts\u003C\u002Fcode> file. Here is the content of the file:\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F src\u002Fpassword.dto.ts\n\nexport class ResetPasswordDto {\n    username: string;\n    email: string\n}\n\nexport class passwordDto {\n    title: string;\n    text: string;\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch2 id=\"%F0%9F%97%BA%EF%B8%8F-translating-using-localazy\">🗺️ Translating using Localazy\u003C\u002Fh2>\u003Cp>Log in or create a \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002F\">\u003Cu>Localazy\u003C\u002Fu>\u003C\u002Fa> account if you do not have one.\u003C\u002Fp>\u003Cp>Create a new project.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-27.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"716\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-27.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-27.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-27.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Enter a project name of your choice. I used nest-integration, but you can decide to use a different name. Change the source language if the strings to be translated are not in English, but it's generally recommended to use English to get the most accurate machine translation suggestions and be able to order professional translations. Then, click the \u003Cem>Create new project\u003C\u002Fem> button.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-28.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"1139\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-28.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-28.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-28.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Now, let us go back to our application code.\u003C\u002Fp>\u003Ch3 id=\"install-localazy-cli\">Install Localazy CLI\u003C\u002Fh3>\u003Cp>Install the\u003Cem> \u003C\u002Fem>\u003Cstrong>Localazy \u003C\u002Fstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">\u003Cstrong>\u003Cu>CLI\u003C\u002Fu>\u003C\u002Fstrong>\u003C\u002Fa>\u003Cem> \u003C\u002Fem>locally\u003Cem> \u003C\u002Fem>as a dev dependency\u003Cem> \u003C\u002Fem>using the npm package to enable anyone that runs the code to install it when running the \u003Ccode>npm install\u003C\u002Fcode> command. Use the command\u003C\u002Fp>\u003Cpre>\u003Ccode>npm i --save-dev @localazy\u002Fcli\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"add-localazy-configuration-script\">Add Localazy configuration script\u003C\u002Fh3>\u003Cp>In the project root folder, create a configuration script called \u003Ccode>localazy.json\u003C\u002Fcode> which tells the CLI what files to upload and how to process the downloaded translations. There are a lot of configurations that can be done, and you can have an in-depth read of them \u003Cu>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fcli\u002Fthe-basics\">here\u003C\u002Fa>\u003C\u002Fu>. It’s also good to note some of the features also depend on the pricing tier being used. For example, format conversions are not available in the free tier.\u003C\u002Fp>\u003Cpre>\u003Ccode>\u002F\u002F localazy.json\n\n{\n    \"writeKey\": \"&lt;your-apps-write-key&gt;\",\n    \"readKey\": \"&lt;your-apps-read-key&gt;\",\n    \"upload\": {\n      \"type\": \"json\",\n      \"files\": \"src\u002Fi18n\u002Fen\u002F*.json\"\n    },\n    \"download\": {\n      \"files\": \"src\u002Fi18n\u002F${lang}\u002F${file}\"\n    },\n    \"conversion\": {},\n    \"transformations\": []   \n}\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Breakdown of the code snippet above and what it does:\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>writeKey and readKey:\u003C\u002Fstrong> are used to authorize the request. Navigate to the Localazy project directory and the settings tab to copy the keys.\u003C\u002Fli>\u003Cli>\u003Cstrong>upload:\u003C\u002Fstrong> object specifies the type of files to be uploaded and the path of the files.\u003C\u002Fli>\u003Cli>\u003Cstrong>download:\u003C\u002Fstrong> object describes how to process translated files and where to store them in the directory.\u003C\u002Fli>\u003Cli>\u003Cstrong>${lang}:\u003C\u002Fstrong> is a variable used to specify the language translated to using the language code such as es, de, fr, and more.\u003C\u002Fli>\u003Cli>\u003Cstrong>${file}:\u003C\u002Fstrong> is used to ensure the filename remains the same under the translated locales folders when the translated files are downloaded.\u003C\u002Fli>\u003Cli>\u003Cstrong>conversion:\u003C\u002Fstrong> is used to specify how to process downloaded files. It could be by converting to a different file format, specifying variable replacements in files, and more. We do not need to do any conversion, so we leave it empty.\u003C\u002Fli>\u003Cli>\u003Cstrong>transformations:\u003C\u002Fstrong> are used to clean up paths, file names, and other parameters before files upload using the operations specified. We do not need to do any transformation, so we leave it empty.\u003C\u002Fli>\u003C\u002Ful>\u003Cp>Go to the project settings to copy the write and read key values and paste them into the \u003Ccode>localazy.json\u003C\u002Fcode> file.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-29.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"564\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-29.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-29.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-29.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"add-localazy-commands-to-packagejson\">Add Localazy commands to package.json\u003C\u002Fh3>\u003Cp>To enable working with others on the project, we would add the localazy download and upload commands in the \u003Ccode>package.json\u003C\u002Fcode> script commands to make it easily accessible.\u003C\u002Fp>\u003Cpre>\u003Ccode>\"scripts\": {\n    \u002F\u002F ... other commands\n    \"upload\": \"localazy upload\",\n    \"download\": \"localazy download\",\n    \u002F\u002F ... other commands\n},\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>\u003Cstrong>Note: Do not remove other commands in the scripts property\u003C\u002Fstrong>\u003C\u002Fp>\u003Ch3 id=\"upload-files\">Upload files\u003C\u002Fh3>\u003Cp>Upload the files with the strings to be translated to the Localazy platform using:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run upload\u003C\u002Fcode>\u003C\u002Fpre>\u003Ch3 id=\"view-uploaded-strings\">View uploaded strings\u003C\u002Fh3>\u003Cp>Navigate to the localazy project and view the uploaded strings by selecting the first row or clicking the \u003Cem>Manage \u003C\u002Fem>button. In our case, the source language is English:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-30.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"883\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-30.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-30.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-30.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"add-languages\">Add languages\u003C\u002Fh3>\u003Cp>Add the languages to be translated to by clicking the add languages button and selecting the languages. Let’s add French, German, and Spanish language.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-31.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"886\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-31.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-31.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-31.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch3 id=\"translating-on-the-localazy-dashboard\">Translating on the Localazy dashboard\u003C\u002Fh3>\u003Cp>Localazy offers three general approaches to choose from and blend to translate your project:\u003C\u002Fp>\u003Col>\u003Cli>💪🏻 \u003Cstrong>Translate on your own or invite contributors - \u003C\u002Fstrong>You can \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Ftranslating-strings\">\u003Cu>start translating on your own\u003C\u002Fu>\u003C\u002Fa> and use our built-in suggestion system.\u003C\u002Fli>\u003Cli>🦾 \u003Cstrong>Translate everything in bulk via machine translation - \u003C\u002Fstrong>With the Localazy \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ftiers\u002Fautopilot\">\u003Cu>Autopilot plan\u003C\u002Fu>\u003C\u002Fa>, you can instantly translate all strings by \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fdocs\u002Fgeneral\u002Fadditional-mt-engines#mt-pre-translate\">\u003Cu>running a machine translation over the content\u003C\u002Fu>\u003C\u002Fa>.\u003C\u002Fli>\u003Cli>🚩 \u003Cstrong>Fully automate the translation process with the \u003C\u002Fstrong>\u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Fcontinuous-localization-team\">\u003Cstrong>\u003Cu>Continuous Localization\u003C\u002Fu>\u003C\u002Fstrong>\u003C\u002Fa>\u003Cstrong> services\u003C\u002Fstrong> - Once your Localazy integration is set up, you can order translations from our vetted translators and get your project translated by professionals automatically. The service is also proactive, so you don't have to micromanage translators, and you can visit Localazy only once in a while to check the progress.\u003C\u002Fli>\u003C\u002Fol>\u003Cp>For now, we can translate on our own. To enter the translation session, go to the \u003Cem>Translations\u003C\u002Fem> page of your project, and click on the blue button in one of the language rows. You can also use the context menu to reveal more options:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-32.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"883\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-32.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-32.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-32.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>If you are on a \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Ftiers\u002Ffree\">Free tier\u003C\u002Fa>, you can use the Amazon machine translation suggestions or ShareTM translations to translate your texts. Do this for all the strings and all languages.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-33.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"1113\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-33.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-33.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-33.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cp>Confirm all translations have been done:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-34.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"707\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-34.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-34.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-34.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cblockquote>Localazy also offers continuous translations such as professional translations and proofreading, or more affordable human-assisted machine translations. Read up on these services \u003Ca href=\"https:\u002F\u002Flocalazy.com\u002Fblog\u002Fguide-localazy-translation-services\">\u003Cu>here\u003C\u002Fu>\u003C\u002Fa>.\u003C\u002Fblockquote>\u003Ch3 id=\"download-the-translated-files\">Download the translated files\u003C\u002Fh3>\u003Cp>Download files by running the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run download\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Confirm the successful download by viewing the files in the i18n folder:\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-35.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"508\" height=\"434\">\u003C\u002Ffigure>\u003Ch2 id=\"%F0%9F%9A%A9-the-translated-application\">🚩 The Translated Application\u003C\u002Fh2>\u003Cp>Start the application server with the command:\u003C\u002Fp>\u003Cpre>\u003Ccode>npm run start:dev\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>Make requests to the desired endpoint. We would use \u003Ca href=\"https:\u002F\u002Fghost.localazy.com\u002Fdictionary\u002Fpostman\">Postman\u003C\u002Fa> to send requests.\u003C\u002Fp>\u003Cp>Open the Postman application and send a new request to the endpoint \u003Ccode>http:\u002F\u002Flocalhost:3000\u002Fset-password?lang=es\u003C\u002Fcode>, passing the language as a query parameter called \u003Ccode>lang\u003C\u002Fcode>. View the response in the default language and other languages used by changing the query parameter to the language code.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-36.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"911\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-36.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-36.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-36.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-37.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"903\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-37.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-37.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-37.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Cfigure class=\"kg-card kg-image-card\">\u003Cimg src=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-38.png\" class=\"kg-image\" alt loading=\"lazy\" width=\"1600\" height=\"902\" srcset=\"https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2023\u002F05\u002Fimage-38.png 600w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2023\u002F05\u002Fimage-38.png 1000w, https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2023\u002F05\u002Fimage-38.png 1600w\" sizes=\"(min-width: 720px) 720px\">\u003C\u002Ffigure>\u003Ch2 id=\"%E2%9C%94%EF%B8%8F-conclusion\">✔️ Conclusion\u003C\u002Fh2>\u003Cp>Our application has now been localized using Localazy, and developers can focus on creating applications without worrying about translating applications to ensure it is accessible to a wide range of users.\u003C\u002Fp>\u003Cp>Check out the code on GitHub \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMoyinoluwaA\u002FNestjs-Localazy-Template\">\u003Cu>here\u003C\u002Fu>\u003C\u002Fa>, and feel free to use it as a template for your NestJS applications by following the steps in the README.md file.\u003C\u002Fp>","public","none","2023-05-22T16:38:27.000+02:00","{\"intercomArticleUrl\":\"\"}",[1992],{"id":1861,"name":1862,"slug":1863,"profile_image":1864,"cover_image":7,"bio":1993,"website":1994,"location":1995,"facebook":7,"twitter":7,"meta_title":7,"meta_description":7,"url":1996},"I am a full-stack web developer and technical writer that has worked with JavaScript and its frameworks. I write to share knowledge, and I love creating resources which can guide other developers.","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fmoyinoluwa-adenuga\u002F","Nigeria","https:\u002F\u002Fghost.localazy.com\u002Fauthor\u002Fmoyinoluwa-adenuga\u002F",[1998,2001,2004,2007,2012,2015,2020,2026,2031,2036,2042,2048,2053,2058,2063],{"id":1999,"name":1872,"slug":1873,"description":7,"feature_image":7,"visibility":1987,"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":2000},"646c9ab6047091000193c3ec","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fnestjs\u002F",{"id":2002,"name":1875,"slug":1875,"description":7,"feature_image":7,"visibility":1987,"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":2003},"60f567ab6f8ebe0001bd80ec","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fi18n\u002F",{"id":2005,"name":1877,"slug":1878,"description":1877,"feature_image":7,"visibility":1987,"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":2006},"60a37fc7cf7b6a0001d1f0fa","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fhowto\u002F",{"id":2008,"name":2009,"slug":2010,"description":1887,"feature_image":7,"visibility":1987,"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":2011},"60a37fc7cf7b6a0001d1f15c","[DICT] Integrated Development Environment (IDE)","term-63","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-63\u002F",{"id":2013,"name":1880,"slug":1881,"description":1880,"feature_image":7,"visibility":1987,"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":2014},"60a37fc7cf7b6a0001d1f101","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fautomated-localization\u002F",{"id":2016,"name":2017,"slug":2018,"description":7,"feature_image":7,"visibility":1987,"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":2019},"60fffb486f8ebe0001bd8ddd","[COMSHARE]","comshare","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcomshare\u002F",{"id":2021,"name":2022,"slug":2023,"description":2024,"feature_image":7,"visibility":1987,"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":2025},"60a37fc7cf7b6a0001d1f11a","[CTA] Automate your localization today! ⚙️","cta-12","Use all core localization features for free and automate your localization process with Localazy!","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fcta-12\u002F",{"id":2027,"name":2028,"slug":2029,"description":1900,"feature_image":7,"visibility":1987,"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":2030},"61b867a5df4bcb00010bc9c3","[DICT] API","term-109","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-109\u002F",{"id":2032,"name":2033,"slug":2034,"description":1906,"feature_image":7,"visibility":1987,"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":2035},"60a37fc7cf7b6a0001d1f16c","[DICT] Internationalization (i18n)","term-79","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-79\u002F",{"id":2037,"name":2038,"slug":2039,"description":2040,"feature_image":7,"visibility":1987,"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":2041},"61af9d57df4bcb00010bc95b","[DICT] JSON","term-108","JSON stands for JavaScript Object Notation and it's a widely used File Format.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-108\u002F",{"id":2043,"name":2044,"slug":2045,"description":2046,"feature_image":7,"visibility":1987,"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":2047},"60a37fc7cf7b6a0001d1f11f","[DICT] Localization","term-2","Localization is a process of preparing a product for a particular market.","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-2\u002F",{"id":2049,"name":2050,"slug":2051,"description":1944,"feature_image":7,"visibility":1987,"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":2052},"60a37fc7cf7b6a0001d1f12a","[DICT] Machine translation (MT)","term-13","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-13\u002F",{"id":2054,"name":2055,"slug":2056,"description":1960,"feature_image":7,"visibility":1987,"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":2057},"60a37fc7cf7b6a0001d1f16d","[DICT] NodeJS","term-80","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-80\u002F",{"id":2059,"name":2060,"slug":2061,"description":1969,"feature_image":7,"visibility":1987,"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":2062},"63fcf0be047091000193a87e","[DICT] Postman","term-125","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fterm-125\u002F",{"id":2064,"name":2065,"slug":2066,"description":7,"feature_image":7,"visibility":1987,"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":2067},"64710a2f047091000193ca3d","[INTERCOM]","intercom","https:\u002F\u002Fghost.localazy.com\u002Ftag\u002Fintercom\u002F",{"id":1861,"name":1862,"slug":1863,"profile_image":1864,"cover_image":7,"bio":1993,"website":1994,"location":1995,"facebook":7,"twitter":7,"meta_title":7,"meta_description":7,"url":1996},{"id":1999,"name":1872,"slug":1873,"description":7,"feature_image":7,"visibility":1987,"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":2000},"https:\u002F\u002Fghost.localazy.com\u002Fhow-to-localize-a-nestjs-application-with-nestjs-i18n-and-localazy\u002F",[2072,2091,2113],{"id":2073,"owner":2074,"created_by":7,"sort":7,"title":2079,"slug":2080,"modified_on":764,"created_on":2081,"pinned":15,"badge":7,"priority":1824,"main_image":2082,"status":8,"tags":2083,"dictionary":2090,"reading_time":1838,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"62135cb7df4bcb00010be0df",{"id":2075,"first_name":2076,"last_name":764,"slug":2077,"avatar":2078},"61dc4f36df4bcb00010bd510","Gletjan Muco","gletjan-muco","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2025\u002F09\u002FProfile-Pic---Blue-Background.jpeg","12 reasons why Localazy is better than spreadsheets for localization projects","12-reasons-why-localazy-is-better-than-spreadsheets-for-localization-projects","2022-03-17T01:20:26.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2022\u002F03\u002FLocalazy-better-than-Spreadsheets.png",[2084,2085,2087],{"id":319,"created_on":1828,"status":8,"label":1880,"slug":1881,"on_index_page":15},{"id":319,"created_on":1828,"status":8,"label":795,"slug":2086,"on_index_page":15},"localazy",{"id":319,"created_on":1828,"status":8,"label":2088,"slug":2089,"on_index_page":15},"Tip","tip",[],{"id":2092,"owner":2093,"created_by":7,"sort":7,"title":2098,"slug":2099,"modified_on":764,"created_on":2100,"pinned":15,"badge":7,"priority":1824,"main_image":2101,"status":8,"tags":2102,"dictionary":2112,"reading_time":1838,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"6372308e04709100019374c9",{"id":2094,"first_name":2095,"last_name":764,"slug":2096,"avatar":2097},"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",[2103,2105,2106,2109],{"id":2104,"created_on":1828,"status":8,"label":545,"slug":544,"on_index_page":17},6183,{"id":319,"created_on":1828,"status":8,"label":1877,"slug":1878,"on_index_page":15},{"id":319,"created_on":1828,"status":8,"label":2107,"slug":2108,"on_index_page":17},"DevTips","devtips",{"id":278,"created_on":1828,"status":8,"label":2110,"slug":2111,"on_index_page":15},"Design","design",[],{"id":2114,"owner":2115,"created_by":7,"sort":7,"title":2116,"slug":2117,"modified_on":764,"created_on":2118,"pinned":15,"badge":7,"priority":1824,"main_image":2119,"status":8,"tags":2120,"dictionary":2123,"reading_time":1838,"excerpt":-1,"og_title":764,"og_description":764,"og_image":764},"636a412f0470910001936efc",{"id":2075,"first_name":2076,"last_name":764,"slug":2077,"avatar":2078},"Top 18 Translation Service Provider APIs","list-of-18-translation-service-provider-apis","2022-11-17T18:44:58.000+01:00","https:\u002F\u002Fghost.localazy.com\u002Fcontent\u002Fimages\u002F2022\u002F11\u002FLocalazy-API-1.png",[2121,2122],{"id":319,"created_on":1828,"status":8,"label":655,"slug":659,"on_index_page":15},{"id":319,"created_on":1828,"status":8,"label":1880,"slug":1881,"on_index_page":15},[],{"id":26,"sort":7,"created_on":2125,"name":2126,"cta_link":2127,"banner_image":2128},"2022-03-17T12:23:14.000Z","default","https:\u002F\u002Flocalazy.com\u002Ffeatures\u002Flocalazy-ai",{"id":2129},"72defd59-a21d-44b9-822c-4e183ca62b99"]