{"action":"opened","issue":{"url":"https://api.github.com/repos/lingui/js-lingui/issues/350","repository_url":"https://api.github.com/repos/lingui/js-lingui","labels_url":"https://api.github.com/repos/lingui/js-lingui/issues/350/labels{/name}","comments_url":"https://api.github.com/repos/lingui/js-lingui/issues/350/comments","events_url":"https://api.github.com/repos/lingui/js-lingui/issues/350/events","html_url":"https://github.com/lingui/js-lingui/issues/350","id":366241076,"node_id":"MDU6SXNzdWUzNjYyNDEwNzY=","number":350,"title":"Write a tutorial using LinguiJS with React","user":{"login":"tricoder42","id":827862,"node_id":"MDQ6VXNlcjgyNzg2Mg==","avatar_url":"https://avatars2.githubusercontent.com/u/827862?v=4","gravatar_id":"","url":"https://api.github.com/users/tricoder42","html_url":"https://github.com/tricoder42","followers_url":"https://api.github.com/users/tricoder42/followers","following_url":"https://api.github.com/users/tricoder42/following{/other_user}","gists_url":"https://api.github.com/users/tricoder42/gists{/gist_id}","starred_url":"https://api.github.com/users/tricoder42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tricoder42/subscriptions","organizations_url":"https://api.github.com/users/tricoder42/orgs","repos_url":"https://api.github.com/users/tricoder42/repos","events_url":"https://api.github.com/users/tricoder42/events{/privacy}","received_events_url":"https://api.github.com/users/tricoder42/received_events","type":"User","site_admin":false},"labels":[{"id":628294129,"node_id":"MDU6TGFiZWw2MjgyOTQxMjk=","url":"https://api.github.com/repos/lingui/js-lingui/labels/good%20first%20issue","name":"good first issue","color":"0e8a16","default":true},{"id":706374671,"node_id":"MDU6TGFiZWw3MDYzNzQ2NzE=","url":"https://api.github.com/repos/lingui/js-lingui/labels/hacktoberfest","name":"hacktoberfest","color":"3140a0","default":false},{"id":576882153,"node_id":"MDU6TGFiZWw1NzY4ODIxNTM=","url":"https://api.github.com/repos/lingui/js-lingui/labels/%F0%9F%93%96%20documentation","name":"📖 documentation","color":"84b6eb","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-10-03T09:08:28Z","updated_at":"2018-10-03T09:08:28Z","closed_at":null,"author_association":"MEMBER","body":"This is a [HactoberFest](https://hacktoberfest.digitalocean.com/) issue! Read the [contest details](https://hacktoberfest.digitalocean.com/details) for more info.\r\n\r\n## Before you begin\r\n\r\n- Confirm that you're working on this issue so I can add [👩‍💻assigned](https://github.com/lingui/js-lingui/issues?q=is%3Aopen+is%3Aissue+label%3A%F0%9F%91%A9%E2%80%8D%F0%9F%92%BBassigned) label.\r\n- Use `next` branch as a base for your PR. This feature should be released in upcoming [v3](https://github.com/lingui/js-lingui/issues/334).\r\n- Read the [contribution guide](https://github.com/lingui/js-lingui/blob/master/CONTRIBUTING.md) for info how to setup project, run tests and use development version of packages\r\n- Join us on [gitter](https://gitter.im/lingui/js-lingui) to get support\r\n\r\n## Starting point\r\n\r\n- Use the [existing tutorial](https://lingui.js.org/tutorials/react.html) to learn about LinguiJS\r\n- Use [create-react-app](https://github.com/facebook/create-react-app) to bootstrap example project. You should use create-react-app v2.\r\n- Install `@lingui/react` and add `@lingui/cli @lingui/macro` as development dependencies\r\n\r\n## Content\r\n\r\n- You might use [existing tutorial](https://lingui.js.org/tutorials/react.html) as a starting point but feel free to provide your own example.\r\n- **(optional)** The challenge is that existing tutorial is written for LinguiJS v2, but the new tutorial should be for v3. If you feel ambitious, checkout [migration guide](https://lingui.js.org/next/releases/migration-3.html) for the list of changes. Otherwise, feel free to write the tutorial for LinguiJS v2 and I'll rewrite examples afterwards. No big deal at all!\r\n- **(optional)** Don't worry about formatting! The documentation uses [reStructuredText](http://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html). It's very similar to Markdown. If you find it confusing, focus on content and I'll fix the markup once it's finished.\r\n- The tutorial should cover following topics:\r\n  - Installation\r\n  - Project setup (`i18n` manager, `I18nProvider`)\r\n  - `Trans` component for messages, including how to use variables and inline tags\r\n  - Translation of props using `i18n` manager (accessed through `I18n` render prop component or `withI18n` hoc)\r\n  - Pluralization using `Plural`\r\n  - Date/Number formatting using `DateFormat` and `NumberFormat`\r\n  - Working with CLI (adding locales, extracting, compiling)\r\n  - Loading catalogs into app (either directly or using `@lingui/loader` webpack loader)\r\n\r\n## Additional requirements\r\n\r\nIt might be beneficial if you have some experience with `react-intl` or any internationalization library. I believe for the best result you shouldn't be too much familiar with `LinguiJS`. The tutorial should be for the first time users and for that reason it's hard for me to write it.\r\n\r\nThis is a very long task, so it might take several hours to finish it. Feel free to reach me at [gitter](https://gitter.im/lingui/js-lingui) anytime."}}
{"actor":{"display_login":"tricoder42"}}