{"id":13463046,"url":"https://github.com/attentiveness/reading","last_synced_at":"2025-05-14T21:06:39.880Z","repository":{"id":2917777,"uuid":"47775543","full_name":"attentiveness/reading","owner":"attentiveness","description":"iReading App  Write In React-Native","archived":false,"fork":false,"pushed_at":"2022-12-06T19:46:32.000Z","size":22759,"stargazers_count":3417,"open_issues_count":14,"forks_count":884,"subscribers_count":165,"default_branch":"master","last_synced_at":"2025-04-13T17:46:47.436Z","etag":null,"topics":["android","ios","react-native","react-navigation","redux","redux-saga"],"latest_commit_sha":null,"homepage":"https://richardcao.me/2016/07/05/Talk-About-Reading/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/attentiveness.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-12-10T17:00:10.000Z","updated_at":"2025-03-30T13:56:37.000Z","dependencies_parsed_at":"2022-08-06T13:00:34.498Z","dependency_job_id":null,"html_url":"https://github.com/attentiveness/reading","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/attentiveness%2Freading","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/attentiveness%2Freading/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/attentiveness%2Freading/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/attentiveness%2Freading/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/attentiveness","download_url":"https://codeload.github.com/attentiveness/reading/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254227611,"owners_count":22035669,"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":["android","ios","react-native","react-navigation","redux","redux-saga"],"created_at":"2024-07-31T13:00:44.880Z","updated_at":"2025-05-14T21:06:34.857Z","avatar_url":"https://github.com/attentiveness.png","language":"JavaScript","readme":"# iReading\n\n![iReading_Logo](./Reading_Logo.png)\n\n[![Build Status](https://travis-ci.org/attentiveness/reading.svg?branch=master)](https://travis-ci.org/attentiveness/reading)\n[![Code Climate](https://codeclimate.com/github/attentiveness/reading/badges/gpa.svg)](https://codeclimate.com/github/attentiveness/reading)\n[![Join the chat at https://gitter.im/attentiveness/reading](https://badges.gitter.im/attentiveness/reading.svg)](https://gitter.im/attentiveness/reading)\n[![License Apache2.0](https://img.shields.io/hexpm/l/plug.svg)](https://raw.githubusercontent.com/attentiveness/reading/master/LICENSE)\n[![GitHub release](https://img.shields.io/github/release/attentiveness/reading.svg?maxAge=2592000?style=flat-square)](https://github.com/attentiveness/reading/releases)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/attentiveness/reading/pulls)\n\niReading App Write In React-Native（Studying and Programing）\n\n**Support: Android 4.1 (API 16)+   IOS(8.0+)**\n\n\u003e No Profit, No Advertisement, Only Feelings\n\n## Screenshot\n\n![iReading_Main](./screenshot/iReading_Main.png)\n![iReading_Article](./screenshot/iReading_Article.png)\n![iReading_Category](./screenshot/iReading_Category.png)\n![iReading_IOS_Main](./screenshot/iReading_iOS_Main.png)\n![iReading_IOS_Share](./screenshot/iReading_iOS_Share.png)\n\n## Download\n\n### β Version(master branch)\n\n*Android:* [Download iReading](http://fir.im/w7gu)\n\n### From Android Market(Old)\n\n*360 Android Market:* [Download iReading](http://zhushou.360.cn/detail/index/soft_id/3217938?recrefer=SE_D_Reading)\n\n*Wandou Labs:* [Download iReading](http://www.wandoujia.com/apps/com.reading)\n\n### From App Store(Old)\n\n[Download iReading](https://itunes.apple.com/cn/app/ireading/id1135411121?l=zh\u0026ls=1\u0026mt=8)\n\n## Application Architecture\n\n- [Microsoft Code Push](https://github.com/Microsoft/react-native-code-push) for dynamic update.\n- [Redux](https://github.com/reactjs/redux) is a predictable state container for reading application, together with [React Native](https://github.com/facebook/react-native).\n- [Redux-Saga](https://github.com/yelouafi/redux-saga/) is a library that aims to make side effects in reading application easier and better.\n- [react-navigation](https://github.com/react-community/react-navigation) is an extensible yet easy-to-use navigation solution, can also be used across React and React Native projects allowing for a higher degree of shared code.\n- [Jest](https://facebook.github.io/jest/) for testing [React Native](https://github.com/facebook/react-native) components and UT.\n- [Eslint](https://github.com/eslint/eslint) is a tool for identifying and reporting on patterns found in reading application code.\n- [react-native-exceptions-manager](https://github.com/Richard-Cao/react-native-exceptions-manager) for handling crashes in release version.\n\n## Development Workflow\n\n### Step One\n\n```\nyarn(or npm) install -g react-native-cli\n```\n### Step Two\n\n```\nyarn(or npm) install\n```\n### Step Three\n\n```\nreact-native start\n```\n### Run Test\n\n```\nyarn(or npm) test\n```\n\n### Format Code\n\n```\nyarn(or npm run) format\n```\n\n### Run Lint\n\n```\nyarn(or npm run) lint\n```\n\n## Importance\n\n[ShowAPI](https://www.showapi.com/api/lookPoint/582/2) was used by iReading from free to charge, so my key doesn't work. You could apply for a new key and replace in [UrlUtil.js](https://github.com/attentiveness/reading/blob/master/app/utils/UrlUtil.js), it will work properly.\nReference this issue: [Cannot convert undefined or null to object](https://github.com/attentiveness/reading/issues/127).\nI apologize to inconvenience you.\n\n## Release Note\n\n[Reading Release Note](https://github.com/attentiveness/reading/releases)\n\n## Contributing\n\n**For more information about contributing PRs and issues, see our [Contribution Guidelines](https://github.com/attentiveness/reading/blob/master/CONTRIBUTING.md).**\n\n## License\n\nApache License 2.0\n","funding_links":[],"categories":["Open Source Apps","JavaScript","开源APP","开源App"],"sub_categories":["Other Platforms","系列教程","项目实践\u0026教程"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fattentiveness%2Freading","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fattentiveness%2Freading","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fattentiveness%2Freading/lists"}