{"id":16123934,"url":"https://github.com/evenchange4/react-intl-po-example","last_synced_at":"2025-06-10T10:08:45.550Z","repository":{"id":20117408,"uuid":"88842905","full_name":"evenchange4/react-intl-po-example","owner":"evenchange4","description":"👉 This is a standalone project for using react-intl-po with CRA.","archived":false,"fork":false,"pushed_at":"2025-04-19T04:25:51.000Z","size":602,"stargazers_count":38,"open_issues_count":12,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-19T12:38:27.386Z","etag":null,"topics":["create-react-app","react","react-intl","react-intl-po"],"latest_commit_sha":null,"homepage":"https://github.com/evenchange4/react-intl-po","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evenchange4.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-04-20T08:55:06.000Z","updated_at":"2023-12-19T17:40:18.000Z","dependencies_parsed_at":"2023-01-12T05:15:37.743Z","dependency_job_id":"7f72329f-ba2f-4c60-a96f-2ec5859ba7ca","html_url":"https://github.com/evenchange4/react-intl-po-example","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evenchange4%2Freact-intl-po-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evenchange4%2Freact-intl-po-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evenchange4%2Freact-intl-po-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evenchange4%2Freact-intl-po-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evenchange4","download_url":"https://codeload.github.com/evenchange4/react-intl-po-example/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evenchange4%2Freact-intl-po-example/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259053525,"owners_count":22798438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["create-react-app","react","react-intl","react-intl-po"],"created_at":"2024-10-09T21:19:12.731Z","updated_at":"2025-06-10T10:08:45.528Z","avatar_url":"https://github.com/evenchange4.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"## React-intl-po-example [![Build Status](https://travis-ci.org/evenchange4/react-intl-po-example.svg?branch=master)](https://travis-ci.org/evenchange4/react-intl-po-example)\n\n\u003e This is a standalone project for using react-intl-po with CRA. Futher Reading: [中文](https://medium.com/@evenchange4/i18n-workflow-for-react-project-9f9ff8fe9aef)\n\n## Screenshots\n\n![Demo](./docs/demo.png)\n\n## Tutorials\n\n### Step 0. Create a project with zero config\n\n```\n$ npm i create-react-app -g\n$ create-react-app react-intl-po-example\n$ cd react-intl-po-example\n$ yarn start\n```\n\n### Step 1. Extract messages of CRA-Project from the command line.\n\n```\n$ yarn add react-intl react-intl-cra\n```\n\n```diff\n+ \"extract:messages\": \"react-intl-cra 'src/**/*.js' -o 'output/messages.json'\",\n```\n\n-   Input: Your React-intl Components\n-   Output: [output/messages.json](./output/messages.json)\n\n### Step 2. Extract pot with react-intl-po\n\n```\n$ yarn add react-intl-po\n```\n\n```diff\n+ \"extract:pot\": \"react-intl-po json2pot 'output/messages.json' -o 'output/messages.pot'\"\n```\n\n-   Input: Output step1 [output/messages.json](./output/messages.json)\n-   Output: [output/messages.pot](./output/messages.pot)\n\n#### Option\n[How to translate the same message into two different meanings?](https://github.com/evenchange4/react-intl-po/blob/master/README.md#how-to-translate-the-same-message-into-two-different-meanings) (By [@Sand1929](https://github.com/Sand1929) in [#83](https://github.com/evenchange4/react-intl-po/issues/83))\n\n```diff\n- \"extract:pot\": \"react-intl-po json2pot 'output/messages.json' -o 'output/messages.pot'\"\n+ \"extract:pot\": \"react-intl-po json2pot 'output/messages.json' -c 'id' -o 'output/messages.pot'\"\n```\n\n-   Input: Output of step1 [output/messages.json](./output/messages.json)\n-   Output: [output/messages-c.pot](./output/messages-c.pot)\n\n### Step 3. Translate (po =\u003e json)\n\n```diff\n+ \"extract:po\": \"react-intl-po po2json 'input/*.po' -c 'id' -m 'output/messages.json' -o 'output/translation.json'\"\n```\n\n-   Input: From translator (Poedit editor) [input/zh-TW.po](./input/zh-TW.po)\n-   Output: [output/translation.json](./output/translation.json)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevenchange4%2Freact-intl-po-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevenchange4%2Freact-intl-po-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevenchange4%2Freact-intl-po-example/lists"}