|
@@ -1,79 +1,471 @@
|
|
|
-This is a new [**React Native**](https://reactnative.dev) project, bootstrapped using [`@react-native-community/cli`](https://github.com/react-native-community/cli).
|
|
|
|
|
|
-# Getting Started
|
|
|
+<div align='center'>
|
|
|
+ <img align="center" src=".github/newscout_text_light.png" height="50">
|
|
|
+</div>
|
|
|
|
|
|
->**Note**: Make sure you have completed the [React Native - Environment Setup](https://reactnative.dev/docs/environment-setup) instructions till "Creating a new application" step, before proceeding.
|
|
|
|
|
|
-## Step 1: Start the Metro Server
|
|
|
|
|
|
-First, you will need to start **Metro**, the JavaScript _bundler_ that ships _with_ React Native.
|
|
|
+----
|
|
|
|
|
|
-To start Metro, run the following command from the _root_ of your React Native project:
|
|
|
|
|
|
-```bash
|
|
|
-# using npm
|
|
|
-npm start
|
|
|
|
|
|
-# OR using Yarn
|
|
|
-yarn start
|
|
|
+## Table of Contents
|
|
|
+* [Project Setup](#project-setup)
|
|
|
+* [Project Description](#project-description)
|
|
|
+* [Project Structure](#project-structure)
|
|
|
+* [Core APIs](#core-apis)
|
|
|
+* [Development](#development)
|
|
|
+
|
|
|
+
|
|
|
+## Project Setup
|
|
|
+
|
|
|
+### Please refer to the [React Native Documentation](https://reactnative.dev/docs/environment-setup)
|
|
|
+
|
|
|
+#### For Android
|
|
|
+
|
|
|
+1. Install [Node v18](https://www.liquidweb.com/kb/install-nvm-linux/)
|
|
|
+2. Install [Java JDK 17](https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-on-ubuntu-22-04)
|
|
|
+3. Install [Android Studio](https://www.educative.io/answers/how-to-install-android-studio-in-ubuntu)
|
|
|
+4. Clone Project from GOGS
|
|
|
+ ```bash
|
|
|
+ git clone gogs@git.fafadiatech.com:savio/Newscout_Mobile.git
|
|
|
+ cd Newscout_Mobile
|
|
|
+ ```
|
|
|
+5. Check Dependancies by running
|
|
|
+ ```bash
|
|
|
+ npx react-native doctor
|
|
|
+ ```
|
|
|
+ **NOTE:** Please rectify the issues shown by RN Doctor before running the project.
|
|
|
+6. Install NPM Packages
|
|
|
+ ```bash
|
|
|
+ npm install
|
|
|
+ ```
|
|
|
+7. For Debugging, Use an android device or emulator
|
|
|
+ 1. For Android Device
|
|
|
+ 1. Follow this guide for
|
|
|
+ [Running on Device](https://reactnative.dev/docs/running-on-device)
|
|
|
+ 2. For Emulator
|
|
|
+ 1. Install [KVM](https://phoenixnap.com/kb/ubuntu-install-kvm)
|
|
|
+ 2. [Create a Virtual Device with AVD Manager in Android Studio](https://developer.android.com/studio/run/managing-avds)
|
|
|
+
|
|
|
+8. Run Project with
|
|
|
+```bash
|
|
|
+ npx react-native start
|
|
|
```
|
|
|
|
|
|
-## Step 2: Start your Application
|
|
|
+#### For iOS
|
|
|
+
|
|
|
+TBD
|
|
|
+
|
|
|
+## Project Description
|
|
|
+
|
|
|
+### Main Dependancies
|
|
|
+
|
|
|
+1. [toggle-switch-react-native](https://www.npmjs.com/package/toggle-switch-react-native) : Custom Switch Component for Toggle Scenarios.
|
|
|
+2. [react-native-vector-icons](https://www.npmjs.com/package/react-native-vector-icons) : Icon Library for the App
|
|
|
+3. [react-native-reanimated-carousel](https://www.npmjs.com/package/react-native-reanimated-carousel) : Requires [react-native-gesture-handler](https://github.com/kmagiera/react-native-gesture-handler) and [react-native-reanimated-v3](https://github.com/kmagiera/react-native-reanimated)
|
|
|
+4. [react-native-paper](https://callstack.github.io/react-native-paper/docs/guides/getting-started): Supporting Component Library for the App.
|
|
|
+5. [react-native-linear-gradient](https://www.npmjs.com/package/react-native-linear-gradient): Allows to create linear gradient for Views.
|
|
|
+6. [axios](https://axios-http.com/docs/intro): Handles API Handling Functionality
|
|
|
+7. [@react-navigation/bottom-tabs](https://reactnavigation.org/docs/bottom-tab-navigator): Provides Bottom Tabs Navigation for the App
|
|
|
+8. [@react-navigation/drawer](https://reactnavigation.org/docs/drawer-navigator): Provides Drawer Navigation for the App
|
|
|
+9. [@react-navigation/native-stack](https://reactnavigation.org/docs/native-stack-navigator): Provides Platform Specific Stack Navigation for the App
|
|
|
+10. [@react-navigation/native](https://reactnavigation.org/docs/getting-started): Contains Driver Code for other Navigation Packages.
|
|
|
+11. [@gorhom/bottom-sheet](https://www.npmjs.com/package/@gorhom/bottom-sheet): Provides resizable bottom sheet modal for the App
|
|
|
+12. [react](https://react.dev/): The library for web and native user interfaces.
|
|
|
+13. [react-native](https://reactnative.dev/): Cross Platform App Library for creating native apps.
|
|
|
+
|
|
|
+**NOTE:** Please refer the `package.json` file for the versions used for the packages.
|
|
|
+
|
|
|
+## Project Structure
|
|
|
+
|
|
|
+1. Project files are contained in `src` folder.
|
|
|
+2. Project files are divided based on their utility
|
|
|
+ 1. `api`: Contain URL Constants and API Entity Functions
|
|
|
+ 2. `assets`: Contain Static Files like images and fonts
|
|
|
+ 3. `components`: Contain Resuable Components for the Screens. The folder follows [Atomic Development Project Structure](https://medium.com/@prathiba2796/react-native-best-practices-for-organizing-code-with-atomic-folder-structure-131858653eb1).
|
|
|
+ 4. `constants`: Contain Colors, Fonts and Responsive Scaling Constants
|
|
|
+ 5. `utils`: Contain Utility Functions
|
|
|
+ 6. `context`: Contain App Context Files like Theme and Auth. This helps us aggregate the context data accessible from a single point.
|
|
|
+ 7. `navigation`: Contain Logic to navigate across the screens.
|
|
|
+ 8. `screens`: Contains All Pages for the App. Each File represents a Page for the Application. Pages are segregated by their [features / function](https://www.antit.io/tech-blog/by-feature-approach-scaffolding-react-native)
|
|
|
+
|
|
|
+## Core APIs
|
|
|
+
|
|
|
+Please refer the [`data`](src/api/data.js) for API Functions.
|
|
|
+
|
|
|
+**BASE URL** : http://www.newscout.in
|
|
|
+
|
|
|
+### Trending News
|
|
|
|
|
|
-Let Metro Bundler run in its _own_ terminal. Open a _new_ terminal from the _root_ of your React Native project. Run the following command to start your _Android_ or _iOS_ app:
|
|
|
+<details>
|
|
|
+ <summary><code>GET</code> <code><b>/trending</b></code></summary>
|
|
|
|
|
|
-### For Android
|
|
|
+##### Parameters
|
|
|
|
|
|
-```bash
|
|
|
-# using npm
|
|
|
-npm run android
|
|
|
+> | name | type | data type | description |
|
|
|
+> |-----------|-----------|-------------------------|-----------------------------------------------------------------------|
|
|
|
+> | None | required | object (JSON or YAML) | N/A |
|
|
|
+
|
|
|
+
|
|
|
+##### Responses
|
|
|
+
|
|
|
+* **`200`** Response (application/json)
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "header": {
|
|
|
+ "status": "1"
|
|
|
+ },
|
|
|
+ "body": {
|
|
|
+ "results": [
|
|
|
+ {
|
|
|
+ "id": 2515514,
|
|
|
+ "articles": [
|
|
|
+ {
|
|
|
+ "id": 2075649,
|
|
|
+ "title": "Democrat Gabe Amo Becomes Rhode Island's First Black Candidate Elected To Congress",
|
|
|
+ "source": "huffpost.com",
|
|
|
+ "category": "Uncategorised",
|
|
|
+ "hash_tags": [
|
|
|
+ "gabe amo",
|
|
|
+ "congress",
|
|
|
+ "rhode island"
|
|
|
+ ],
|
|
|
+ "source_url": "https://www.huffpost.com/entry/rhode-island-gabe-amo-elected_n_654ae415e4b0e63c9dc1646b",
|
|
|
+ "cover_image": "https://img.huffingtonpost.com/asset/654ae418220000cc11cef254.jpeg?ops=1200_630",
|
|
|
+ "blurb": "Democrat Gabe Amo defeated Republican Gerry Leonard to win Rhode Island’s 1st Congressional District seat Tuesday, becoming the state’s first Black candidate elected to Congress....",
|
|
|
+ "published_on": "2023-11-08T01:29:50Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 123,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 51,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "democrat-gabe-amo-becomes-rhode-islands-first-black-candidate-elected-to-congress-2075649",
|
|
|
+ "root_category": "Uncategorised",
|
|
|
+ "root_category_id": 123
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ "id": 2075495,
|
|
|
+ "title": "Boat captain found guilty for 2019 California boat tragedy that killed 34",
|
|
|
+ "source": "foxnews.com",
|
|
|
+ "category": "Uncategorised",
|
|
|
+ "hash_tags": [],
|
|
|
+ "source_url": "https://www.foxnews.com/us/boat-captain-found-guilty-2019-california-boat-tragedy-killed-34",
|
|
|
+ "cover_image": "https://static.foxnews.com/foxnews.com/content/uploads/2023/11/captain-boat-2-1.jpg",
|
|
|
+ "blurb": "Fox News Flash top headlines are here. Check out whats clicking on Foxnews.com.",
|
|
|
+ "published_on": "2023-11-07T16:39:50Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 123,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 24,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "boat-captain-found-guilty-for-2019-california-boat-tragedy-that-killed-34-2075495",
|
|
|
+ "root_category": "Uncategorised",
|
|
|
+ "root_category_id": 123
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": 2075283,
|
|
|
+ "title": "Captain found guilty of ‘seaman’s manslaughter’ in boat fire that killed 34 off California coast",
|
|
|
+ "source": "washingtontimes.com",
|
|
|
+ "category": "China",
|
|
|
+ "hash_tags": [
|
|
|
+ "b jerry boylan",
|
|
|
+ "b law crime",
|
|
|
+ "b los angeles"
|
|
|
+ ],
|
|
|
+ "source_url": "https://www.washingtontimes.com/news/2023/nov/6/jerry-boylan-captain-guilty-seamans-manslaughter-b/?utm_source=RSS_Feed&utm_medium=RSS",
|
|
|
+ "cover_image": "https://twt-thumbs.washtimes.com/media/image/2023/11/06/California_Boat_Fire_63868--6d532_c0-145-2930-1854_s1200x700.jpg?a8da2264f2a94c98eb4f636ca322450b5b36eb33",
|
|
|
+ "blurb": "LOS ANGELES — A scuba dive boat captain was convicted Monday of criminal negligence in the deaths of 34 people killed in a fire aboard the vessel in 2019, the deadliest maritime disaster in recent U.S. history.....",
|
|
|
+ "published_on": "2023-11-07T04:44:57.499413Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 134,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 16,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "captain-found-guilty-of-seamans-manslaughter-in-boat-fire-that-killed-34-off-california-coast-2075283",
|
|
|
+ "root_category": "Regional Updates",
|
|
|
+ "root_category_id": 132
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "domain": "newscout",
|
|
|
+ "created_at": "2023-11-08T09:31:51.661510Z",
|
|
|
+ "modified_at": "2023-11-08T09:31:51.697270Z",
|
|
|
+ "active": true,
|
|
|
+ "score": 0.0
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+}
|
|
|
|
|
|
-# OR using Yarn
|
|
|
-yarn android
|
|
|
```
|
|
|
|
|
|
-### For iOS
|
|
|
+</details>
|
|
|
+
|
|
|
+
|
|
|
+### Articles by Category
|
|
|
+
|
|
|
+<details>
|
|
|
+ <summary><code>GET</code> <code><b>/article/search/</b></code></summary>
|
|
|
+
|
|
|
+##### Parameters
|
|
|
|
|
|
-```bash
|
|
|
-# using npm
|
|
|
-npm run ios
|
|
|
+> | name | type | data type | description |
|
|
|
+> |-----------|-----------|-------------------------|-----------------------------------------------------------------------|
|
|
|
+> | category | optional | string | N/A |
|
|
|
+> | page | optional | number | N/A|
|
|
|
+
|
|
|
+##### Responses
|
|
|
+
|
|
|
+* **`200`** Response (application/json)
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "header": {
|
|
|
+ "status": "1"
|
|
|
+ },
|
|
|
+ "body": {
|
|
|
+ "results": [
|
|
|
+ {
|
|
|
+ "id": 2075412,
|
|
|
+ "title": "Jack Smith Opposes Trump’s Efforts To Get Federal Election Interference Case Tossed Out",
|
|
|
+ "source": "huffpost.com",
|
|
|
+ "category": "Tech",
|
|
|
+ "hash_tags": [
|
|
|
+ "jack smith",
|
|
|
+ "donald trump"
|
|
|
+ ],
|
|
|
+ "source_url": "https://www.huffpost.com/entry/jack-smith-trump-jan-6-case_n_654a14f0e4b0e63c9dc0cd3b",
|
|
|
+ "cover_image": "https://img.huffingtonpost.com/asset/654a236424000055005533f2.jpeg?cache=OJF7V5KFoP&ops=1200_630",
|
|
|
+ "blurb": "Breaking News Reporter, HuffPost\nSpecial counsel Jack Smith’s team on Monday forcefully rejected former President Donald Trump’s efforts to get his federal election interference case thrown out in a series of court filings Monday.",
|
|
|
+ "published_on": "2023-11-07T13:11:32Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 127,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 51,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "jack-smith-opposes-trumps-efforts-to-get-federal-election-interference-case-tossed-out-2075412",
|
|
|
+ "root_category": "Sector Updates",
|
|
|
+ "root_category_id": 124,
|
|
|
+ "article_score": 66.95
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": 2075374,
|
|
|
+ "title": "Axis Bank inks an MoU with IRMA to promote financial inclusion and literacy",
|
|
|
+ "source": "livemint.com",
|
|
|
+ "category": "Banking",
|
|
|
+ "hash_tags": [
|
|
|
+ "axis bank",
|
|
|
+ "all you need to know",
|
|
|
+ "mintgenie"
|
|
|
+ ],
|
|
|
+ "source_url": "https://www.livemint.com/money/personal-finance/axis-bank-inks-an-mou-with-irma-to-promote-financial-inclusion-and-literacy-in-india-details-here-11699352032103.html",
|
|
|
+ "cover_image": "https://www.livemint.com/lm-img/img/2023/11/07/1600x900/2-0-470760800-axis-bank-0_1680765658586_1699352302423.JPG",
|
|
|
+ "blurb": "\nJust a few days ahead of “National Education Day\" observed on November 11 every year, Axis Bank and the Institute of Rural Management Anand (IRMA) have entered into a Memorandum of Understanding (MoU) on November 06, 2023. The idea behind entering the MoU is to establish the Axis Bank Chair for financial inclusion at IRMA. ....",
|
|
|
+ "published_on": "2023-11-07T11:28:03Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 125,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 49,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "axis-bank-inks-an-mou-with-irma-to-promote-financial-inclusion-and-literacy-2075374",
|
|
|
+ "root_category": "Sector Updates",
|
|
|
+ "root_category_id": 124,
|
|
|
+ "article_score": 78.6
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": 2075369,
|
|
|
+ "title": "Amazon Sale 2023: Want new display? Get up to 69% off on monitors under ₹10000",
|
|
|
+ "source": "livemint.com",
|
|
|
+ "category": "Tech",
|
|
|
+ "hash_tags": [],
|
|
|
+ "source_url": "https://www.livemint.com/technology/gadgets/amazon-sale-2023-want-new-display-get-up-to-69-off-on-monitors-under-rs-10000-11699334735112.html",
|
|
|
+ "cover_image": "https://www.livemint.com/lm-img/img/2023/11/07/1600x900/amazon_sale_1699335717698_1699343218352.jpg",
|
|
|
+ "blurb": "As the Amazon Sale of 2023 draws to a close, the opportunity to enhance your workspace with a brand-new monitor under ₹ 10,000 couldn't be more enticing. ...",
|
|
|
+ "published_on": "2023-11-07T10:50:06Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 127,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 49,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "amazon-sale-2023-want-new-display-get-up-to-69-off-on-monitors-under-10000-2075369",
|
|
|
+ "root_category": "Sector Updates",
|
|
|
+ "root_category_id": 124,
|
|
|
+ "article_score": 66.95
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "filters": {
|
|
|
+ "category": [
|
|
|
+ {
|
|
|
+ "key": "Automotive Industry",
|
|
|
+ "doc_count": 1052
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "Banking",
|
|
|
+ "doc_count": 13785
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "source": [
|
|
|
+ {
|
|
|
+ "key": "business-standard.com",
|
|
|
+ "doc_count": 11865
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "economictimes.indiatimes.com",
|
|
|
+ "doc_count": 3889
|
|
|
+ }
|
|
|
+
|
|
|
+ ],
|
|
|
+ "hash_tags": [
|
|
|
+ {
|
|
|
+ "key": "amazon",
|
|
|
+ "doc_count": 2249
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "apple",
|
|
|
+ "doc_count": 3698
|
|
|
+ }
|
|
|
+
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ "count": 167432,
|
|
|
+ "total_pages": 8372,
|
|
|
+ "current_page": 1,
|
|
|
+ "next": "http://www.newscout.in/api/v1/article/search/?category=Sector+Updates&domain=newscout&page=2",
|
|
|
+ "previous": null
|
|
|
+ }
|
|
|
+}
|
|
|
|
|
|
-# OR using Yarn
|
|
|
-yarn ios
|
|
|
```
|
|
|
|
|
|
-If everything is set up _correctly_, you should see your new app running in your _Android Emulator_ or _iOS Simulator_ shortly provided you have set up your emulator/simulator correctly.
|
|
|
+</details>
|
|
|
|
|
|
-This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.
|
|
|
+### Articles by Search Query
|
|
|
|
|
|
-## Step 3: Modifying your App
|
|
|
+<details>
|
|
|
+ <summary><code>GET</code> <code><b>/article/search/</b></code></summary>
|
|
|
|
|
|
-Now that you have successfully run the app, let's modify it.
|
|
|
+##### Parameters
|
|
|
|
|
|
-1. Open `App.tsx` in your text editor of choice and edit some lines.
|
|
|
-2. For **Android**: Press the <kbd>R</kbd> key twice or select **"Reload"** from the **Developer Menu** (<kbd>Ctrl</kbd> + <kbd>M</kbd> (on Window and Linux) or <kbd>Cmd ⌘</kbd> + <kbd>M</kbd> (on macOS)) to see your changes!
|
|
|
+> | name | type | data type | description |
|
|
|
+> |-----------|-----------|-------------------------|-----------------------------------------------------------------------|
|
|
|
+> | category | optional | string | N/A |
|
|
|
+> | page | optional | number | N/A |
|
|
|
+> | q | optional | string | N/A |
|
|
|
|
|
|
- For **iOS**: Hit <kbd>Cmd ⌘</kbd> + <kbd>R</kbd> in your iOS Simulator to reload the app and see your changes!
|
|
|
+##### Responses
|
|
|
+
|
|
|
+* **`200`** Response (application/json)
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "header": {
|
|
|
+ "status": "1"
|
|
|
+ },
|
|
|
+ "body": {
|
|
|
+ "results": [
|
|
|
+ {
|
|
|
+ "id": 2075766,
|
|
|
+ "title": "India, US to review bilateral ties, key global issues at '2+2' dialogue",
|
|
|
+ "source": "newindianexpress.com",
|
|
|
+ "category": "India",
|
|
|
+ "hash_tags": [
|
|
|
+ "usa",
|
|
|
+ "indo us ties",
|
|
|
+ "india",
|
|
|
+ "2+2 dialogue"
|
|
|
+ ],
|
|
|
+ "source_url": "https://www.newindianexpress.com/nation/2023/nov/08/india-us-to-review-bilateral-ties-key-global-issues-at-22-dialogue-2631234.html",
|
|
|
+ "cover_image": "https://images.newindianexpress.com/uploads/user/imagelibrary/2023/11/8/w600X390/India_US_Two_Plus_Two.jpg",
|
|
|
+ "blurb": "NEW DELHI: India and <em>the</em> US will carry out a comprehensive review of their fast-expanding strategic ties at <em>the</em> next edition of <em>the</em> here on Friday.\nUS Secretary of State Antony Blinken and Defence Secretary Lloyd Austin are visiting India for <em>the</em> dialogue.",
|
|
|
+ "published_on": "2023-11-08T10:04:10.930895Z",
|
|
|
+ "article_media": [],
|
|
|
+ "category_id": 160,
|
|
|
+ "domain": "newscout",
|
|
|
+ "active": true,
|
|
|
+ "source_id": 54,
|
|
|
+ "article_format": null,
|
|
|
+ "author": "",
|
|
|
+ "slug": "india-us-to-review-bilateral-ties-key-global-issues-at-22-dialogue-2075766",
|
|
|
+ "root_category": "Regional Updates",
|
|
|
+ "root_category_id": 132,
|
|
|
+ "article_score": 70.28
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "filters": {
|
|
|
+ "category": [
|
|
|
+ {
|
|
|
+ "key": "Asia",
|
|
|
+ "doc_count": 98997
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "China",
|
|
|
+ "doc_count": 34794
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "source": [
|
|
|
+ {
|
|
|
+ "key": "business-standard.com",
|
|
|
+ "doc_count": 166957
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "financialexpress.com",
|
|
|
+ "doc_count": 71065
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "hash_tags": [
|
|
|
+ {
|
|
|
+ "key": "",
|
|
|
+ "doc_count": 4368
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "key": "apple",
|
|
|
+ "doc_count": 4069
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ "count": 1418743,
|
|
|
+ "total_pages": 70938,
|
|
|
+ "current_page": 1,
|
|
|
+ "next": "http://www.newscout.in/api/v1/article/search/?domain=newscout&page=2&q=the",
|
|
|
+ "previous": null
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+```
|
|
|
|
|
|
-## Congratulations! :tada:
|
|
|
+</details>
|
|
|
|
|
|
-You've successfully run and modified your React Native App. :partying_face:
|
|
|
+## Development
|
|
|
|
|
|
-### Now what?
|
|
|
+### Pre-requisites
|
|
|
|
|
|
-- If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps).
|
|
|
-- If you're curious to learn more about React Native, check out the [Introduction to React Native](https://reactnative.dev/docs/getting-started).
|
|
|
+* [React Navigation](https://reactnavigation.org/)
|
|
|
+* [React Native Paper](https://reactnativepaper.com/)
|
|
|
|
|
|
-# Troubleshooting
|
|
|
+### Key Components / Screens:
|
|
|
|
|
|
-If you can't get this to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page.
|
|
|
+1. [`LandingPageNavigator.jsx`](src/navigation/LandingPageNavigator.jsx): Contains Initial Landing Page and Authentication Workflow Page.
|
|
|
+2. [`HomePageNavigator.jsx`](src/navigation/HomePageNavigator.jsx): Provides Navigation for the Post Login Workflow for User
|
|
|
|
|
|
-# Learn More
|
|
|
+### Creating a Component/Screen from Scratch
|
|
|
|
|
|
-To learn more about React Native, take a look at the following resources:
|
|
|
+**Recommended:** When using VSCode for development, Please use these VSCode Extensions
|
|
|
+* [React Native Tools](https://marketplace.visualstudio.com/items?itemName=msjsdiag.vscode-react-native) for Debugging
|
|
|
+* [ES7+ React/React Native Snippets](https://marketplace.visualstudio.com/items?itemName=dsznajder.es7-react-js-snippets) for Code Snippets Shortcuts
|
|
|
+* [Javascript Docstrings](https://marketplace.visualstudio.com/items?itemName=Massi.javascript-docstrings) for Code Commenting for JS
|
|
|
|
|
|
-- [React Native Website](https://reactnative.dev) - learn more about React Native.
|
|
|
-- [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment.
|
|
|
-- [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**.
|
|
|
-- [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts.
|
|
|
-- [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native.
|
|
|
+**Example:** [News Detail Page](src/screens/News/NewsDetailPage.js)
|