that's an app with the following features: PS: it's not perfect and needs many modifications
- The app has a main screen that shows a list of News article headings + picture in a Navigation
- clicking on a heading opens a detailed screen with the whole news text, bigger picture and meta data as author, create date etc
- the data for the news is fetched from online news feed (example https://newsapi.org/ )
- on top of main screen, there is a Search field, that will dynamically filter the news by the typed word
- the main screen has a Pull to refresh functionality that updates the news on screen
- Used Typescript for the app
- Added Multiple languages support: English and Arabic
- Introduced a bottom tab menu with 2 Menu items: "News" and "Settings"
- Has a language switcher in the Settings, that changes language Realtime or with App restart
- Add dark mode support for the application with different colors for dark background and light text
- App style dynamically updates on changes from light to dark mode and not require full restart
- Add support for deep linking
for Settings screen: npx uri-scheme open "exp://127.0.0.1:19000/--/NewsBottomTabs/Settings" --ios
for Main News screen: npx uri-scheme open "exp://127.0.0.1:19000/--/NewsBottomTabs/News" --ios
Video:
Screen.Recording.2023-05-27.at.10.51.31.PM.mov
Screen.Recording.2023-05-27.at.10.55.36.PM.mov
IOS lightmode:
![Screenshot 2023-05-28 at 6 07 32 PM](https://private-user-images.githubusercontent.com/15037761/241568901-68aeaec6-2278-4d49-8e37-df50601429c9.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE1Njg5MDEtNjhhZWFlYzYtMjI3OC00ZDQ5LThlMzctZGY1MDYwMTQyOWM5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU5NTA3YjUzYWU5NjJhOTVjMDRmZTFmZGRlYzQ0YjM2NGZhMjM3Y2JlNjcwODdjNWE1N2MyMmUwMzlmODRmNDMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.6e5A2Lb8OAKX34m79y73LDGr60-8961WazpdBkXcU0o)
![Screenshot 2023-05-27 at 11 05 23 PM](https://private-user-images.githubusercontent.com/15037761/241428189-9d32a558-2a4f-42cb-8d3c-01d3af3fba37.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE0MjgxODktOWQzMmE1NTgtMmE0Zi00MmNiLThkM2MtMDFkM2FmM2ZiYTM3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTBjN2RkZjI0MTI5NjE4NDAwZTJkNGY3ZjhiMmVlMGZiM2Q2ZTZhMzQ4OGRlYmVlYTMyNDQwNzMxYzk0NmQxMDQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.XHgtfYE66eHWBFviKvtLq5vmrZUB8TarfQ5wTAA_3KI)
IOS darkmode:
![Screenshot 2023-05-28 at 6 07 07 PM](https://private-user-images.githubusercontent.com/15037761/241568944-492d8458-797a-46ad-b58d-3fd9083d6c74.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE1Njg5NDQtNDkyZDg0NTgtNzk3YS00NmFkLWI1OGQtM2ZkOTA4M2Q2Yzc0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWEyMmUwNWVjMTNkNWNhOWNlNWRiZGNjZTNjNTYyYzYxY2Q1ZjA2NThiNmE1ZWM5NzJiYjFkYzFhZjNhZTZiMjEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Zu6R-455gIxHY2e8ruw4Mln8mwOVK9GwPA0eCAPkU2c)
![Screenshot 2023-05-27 at 11 03 47 PM](https://private-user-images.githubusercontent.com/15037761/241428138-77083250-c230-4509-ab67-c7f9f992f71b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE0MjgxMzgtNzcwODMyNTAtYzIzMC00NTA5LWFiNjctYzdmOWY5OTJmNzFiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTk2ZDY1N2RmODhlMTgzMWI0ZGNhMDZiNTY4MjM4NGRmM2Y0YWE5ZjJmZTNhN2E0ZjE0MTY5Zjc2NmJhY2QyZDMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.TMlPttF21PzAAw57wMCR7LFJ0qLd4LDAxD91WXcqtE8)
Arabic Localization:
![Screenshot 2023-05-28 at 6 10 15 PM](https://private-user-images.githubusercontent.com/15037761/241569097-89d01c30-3c5d-45e6-a97a-902ea8cdb0fc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE1NjkwOTctODlkMDFjMzAtM2M1ZC00NWU2LWE5N2EtOTAyZWE4Y2RiMGZjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTdmMGZlZDA3YjI3ZDZjNTRkNjYwMTQ3MGZlOWU0ZTdjMGE5MGNlYjI4MjQ0YWRiMmE3ZGYxZjE1YzY3MzUxMzAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.OnUxbSVlL08Zzte-t-8pK847JGDXGNLO-BllXcKVGow)
![Screenshot 2023-05-28 at 6 10 07 PM](https://private-user-images.githubusercontent.com/15037761/241569102-73e161df-7877-42d8-b80b-bcb8d1f28d42.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE1NjkxMDItNzNlMTYxZGYtNzg3Ny00MmQ4LWI4MGItYmNiOGQxZjI4ZDQyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU5MzBlOTFjMzUwNGVjODNkZTczZTIwZTE5MTk4YzMzMDljMzhmOGJlYmNhZDliNDFlN2Q4ZWFmN2NmYWJjM2ImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.eVSs2R5UrGoLsgPVT5r9J2BXasOqbHbk4WtDT4q7aSI)
![Screenshot 2023-05-28 at 6 09 59 PM](https://private-user-images.githubusercontent.com/15037761/241569104-b60e7349-6f97-43e5-a48c-aabdfb69f031.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE1NjkxMDQtYjYwZTczNDktNmY5Ny00M2U1LWE0OGMtYWFiZGZiNjlmMDMxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTM2MmY1MzU4YWEzNGFlMDg0ZDQzYmI3YTg0YmZhNjhjZWJmODY3M2IxMGE5OThiN2I2MjZlYjM4ZjBlZGE5ZjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Cowd-FfGg2lzuPINQwDsFJmWQ0_eGuVAd6mV6EcLil0)
Andriod:
![Screenshot 2023-05-27 at 10 41 32 PM](https://private-user-images.githubusercontent.com/15037761/241427495-6787ce53-4a15-4a33-aca6-203c07bb0aa4.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE0Mjc0OTUtNjc4N2NlNTMtNGExNS00YTMzLWFjYTYtMjAzYzA3YmIwYWE0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTdmZjFhNTk2M2Q4ZTUwYjU1ODZmMmU3YTA2ODJkNGM1YWE3OWMzZmRmMDVjOWFjZDhkMTRhYjhhMWE2ZTIyMTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.u-GOda9r4lWmS5qjECaaNgUgGoOmrNCZTJNP_6pUy_s)
![Screenshot 2023-05-27 at 10 42 00 PM](https://private-user-images.githubusercontent.com/15037761/241427500-89def6d7-4f94-4d95-9036-410169096622.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE0Mjc1MDAtODlkZWY2ZDctNGY5NC00ZDk1LTkwMzYtNDEwMTY5MDk2NjIyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlmNzVkYzI1NWIyYTNkYzJiNjFiNzk0NTE3ZjExNDQ1MThiZTU2YmU5NDY2MTQyYjE4YTNiODIwZTBlMWRjMTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.NaLds-kLa-LaMOEPO5Fpczlg7ZH9ilNra9SU3jsIlf0)
![Screenshot 2023-05-27 at 10 42 15 PM](https://private-user-images.githubusercontent.com/15037761/241427504-ff2433f7-bee0-41c1-b555-5caa7db83ff8.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMzI4MjAsIm5iZiI6MTcyMDEzMjUyMCwicGF0aCI6Ii8xNTAzNzc2MS8yNDE0Mjc1MDQtZmYyNDMzZjctYmVlMC00MWMxLWI1NTUtNWNhYTdkYjgzZmY4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDIyMzUyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPThjODAwOWI3YjRkZTgxNWQ4Y2ZmOTdjNzVhNjUwNGNjNGI3YzgzMDIyYjEwM2VkYWFiZjhjODQ5ZGMyYzJjMDMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.iNfV7Ehd6p7ix_b-BsRdQhFGZzPf46JmiQoDjynj29o)