diff --git a/Abhishek krishnan U V/assets/portfolioImage.jpeg b/Abhishek krishnan U V/assets/portfolioImage.jpeg new file mode 100644 index 0000000..2118d3d Binary files /dev/null and b/Abhishek krishnan U V/assets/portfolioImage.jpeg differ diff --git a/Abhishek krishnan U V/lib/main.dart b/Abhishek krishnan U V/lib/main.dart new file mode 100644 index 0000000..08334e1 --- /dev/null +++ b/Abhishek krishnan U V/lib/main.dart @@ -0,0 +1,32 @@ + +//News App UI by Abhishek krishnan U V +import 'package:flutter/material.dart'; +import 'Screens/config/themes/themes.dart'; +import 'Screens/details/detail_news.dart'; + +import 'Screens/home/home.dart'; +import 'Screens/profile/profile.dart'; + + +void main(){ + runApp(MyApp()); +} + +class MyApp extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'NewsApp', + theme: Themes(), + debugShowCheckedModeBanner: false, + routes: { + Profile.routename: (ctx) => Profile(), + Homepage.routename: (ctx) => Homepage(), + DetailNews.routename: (ctx) => DetailNews(), + }, + home: Homepage(), + ); + } + + +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/config/themes/themes.dart b/Abhishek krishnan U V/lib/screens/config/themes/themes.dart new file mode 100644 index 0000000..b675e99 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/config/themes/themes.dart @@ -0,0 +1,16 @@ +import 'package:flutter/material.dart'; + +ThemeData Themes() { + return ThemeData( + primarySwatch: Colors.blue, + textTheme: TextTheme( + bodyText1: TextStyle(color: Colors.black45) + ), + primaryTextTheme: TextTheme( + headline4: TextStyle(color: Colors.blueGrey), + headline3: TextStyle(color: Colors.blueGrey, fontWeight: FontWeight.w600), + headline5: TextStyle(color: Colors.blueGrey), + bodyText1: TextStyle(color: Colors.blueGrey), + ), + ); +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/config/var/var.dart b/Abhishek krishnan U V/lib/screens/config/var/var.dart new file mode 100644 index 0000000..0d56ebf --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/config/var/var.dart @@ -0,0 +1,8 @@ +import 'package:newsapp_ui_by_abhishek/Screens/profile/profile.dart'; + +final String profileImage = 'https://images.unsplash.com/photo-1628260412297-a3377e45006f?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=774&q=80'; +final String newspaperImage = 'https://images.unsplash.com/photo-1623934199716-dc28818a6ec7?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1032&q=80'; +final String newspaperImage1 ='https://images.unsplash.com/photo-1632633173522-47456de71b76?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=871&q=80'; +final String newspaperImage2 ='https://images.unsplash.com/photo-1606728035253-49e8a23146de?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=870&q=80'; +final String newspaperImage3 ='https://images.unsplash.com/photo-1536924940846-227afb31e2a5?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=866&q=80'; +final String newspaperImage4 ='https://images.unsplash.com/photo-1555680202-c86f0e12f086?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=870&q=80'; \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/details/detail_news.dart b/Abhishek krishnan U V/lib/screens/details/detail_news.dart new file mode 100644 index 0000000..85d35ac --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/details/detail_news.dart @@ -0,0 +1,44 @@ +import 'package:newsapp_ui_by_abhishek/Screens/home/widgets/main_bar.dart'; +import 'package:flutter/material.dart'; + +class DetailNews extends StatelessWidget { + static const routename = 'DetailNews'; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + backgroundColor: Colors.transparent, + elevation: 0, + actions: [ + Padding( + padding: const EdgeInsets.all(8.0), + child: Icon( + Icons.share, + color: Colors.black, + ), + ), + ], + leading: IconButton( + onPressed: () { + Navigator.of(context).pop(); + }, + icon: Icon( + Icons.arrow_back_ios, + color: Colors.black, + ), + ), + ), + body: SafeArea( + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [MainBar(), const SizedBox(height: 10), Text('China has continued with its crackdown on cryptocurrencies, resulting in a sharp fall in GPU prices in the country. The move has also plummetted Bitcoin value worldwide as crypto mining operations were halted.As reported by the state-owned publication, Global Times, Bitcoin mines in Southwest China’s Sichuan province were shut down on Sunday as local authorities ordered all mining operations in the region to stop last Friday. Authorities in other mining hubs in the north and southwest region have taken similar steps, which means over 90 percentage of China’s Bitcoin capacity can be shut down. ')], + ), + ), + )), + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/home.dart b/Abhishek krishnan U V/lib/screens/home/home.dart new file mode 100644 index 0000000..5e0ce72 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/home.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; +import 'widgets/category_list.dart'; +import 'widgets/custom_app_bar.dart'; + +import 'widgets/title_bar.dart'; + +class Homepage extends StatelessWidget { + static const routename = 'HomePage'; + + @override + Widget build(BuildContext context) { + final screenWidth = MediaQuery.of(context).size.width; + return Scaffold( + body: SafeArea( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + CustomAppBar(), + const Divider(thickness: 2,), + const CategoryList(), + const Divider(thickness: 2,), + TitleBar(screenWidth: screenWidth), + + ], + ), + ), + ); + } +} diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/category_list.dart b/Abhishek krishnan U V/lib/screens/home/widgets/category_list.dart new file mode 100644 index 0000000..4b119d7 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/category_list.dart @@ -0,0 +1,28 @@ +import 'package:flutter/material.dart'; + +class CategoryList extends StatelessWidget { + const CategoryList({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container( + color: Colors.grey, + height: 55, + child: ListView( + scrollDirection: Axis.horizontal, + children: const [ + Padding( + padding: EdgeInsets.all(12), + child: Text(' Top news',style: TextStyle(fontSize: 20,),), + ), + Padding( + padding: EdgeInsets.all(12), + child: Text(' All',style: TextStyle(fontSize: 20,)), + ), + + ],), + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/custom_app_bar.dart b/Abhishek krishnan U V/lib/screens/home/widgets/custom_app_bar.dart new file mode 100644 index 0000000..90103bd --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/custom_app_bar.dart @@ -0,0 +1,16 @@ +import 'package:newsapp_ui_by_abhishek/Screens/profile/profile.dart'; +import 'package:flutter/material.dart'; +import 'profile_pic.dart'; + +class CustomAppBar extends StatelessWidget { + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 8), + child: GestureDetector( + onTap: (){Navigator.of(context).pushNamed(Profile.routename);}, + child: ProfilePic()), + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/main_bar.dart b/Abhishek krishnan U V/lib/screens/home/widgets/main_bar.dart new file mode 100644 index 0000000..c78e60a --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/main_bar.dart @@ -0,0 +1,48 @@ +import 'package:flutter/material.dart'; +import 'package:newsapp_ui_by_abhishek/Screens/config/var/var.dart' as configvar; + +class MainBar extends StatelessWidget { + const MainBar({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + final screenWidth = MediaQuery.of(context).size.width; + return Column( + children: [ + ClipRRect( + + child: Image.network(configvar.newspaperImage4), + ), + const SizedBox(height: 10), + Container( + width: screenWidth * 0.8, + child: Text( + 'GPU and Crypto prices fall sharply...........', + style: Theme.of(context).primaryTextTheme.headline5, + ), + ), + const SizedBox(height: 0), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + + + const SizedBox(width: 10), + Text( + '', + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ), + + ], + ), + const Divider(thickness: 3), + ], + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/news_tile.dart b/Abhishek krishnan U V/lib/screens/home/widgets/news_tile.dart new file mode 100644 index 0000000..10876c2 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/news_tile.dart @@ -0,0 +1,82 @@ +import 'package:flutter/material.dart'; +import 'package:newsapp_ui_by_abhishek/Screens/config/var/var.dart' as configvar; + +class CustomTile extends StatelessWidget { + const CustomTile({ + Key? key, + required this.screenWidth, + }) : super(key: key); + + final double screenWidth; + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric( + vertical: 10, horizontal: 10), + child: Row( + children: [ + Container( + height: 80, + width: 100, + child: ClipRRect( + borderRadius: BorderRadius.circular(8), + child: Image.network( + configvar.newspaperImage3, + fit: BoxFit.cover, + ), + )), + const SizedBox(width: 10), + Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Container( + width: screenWidth * 0.5, + child: Text( + 'Canon sued for 5 million dollars for disabling scanner when printers run out of ink', + style: Theme.of(context) + .textTheme + .bodyText1! + .merge( + const TextStyle(fontWeight: FontWeight.w900,)), + ), + ), + const SizedBox(height: 12), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: const [ + + ], + ) + ], + ) + ], + ), + ); + } +} + +class IconText extends StatelessWidget { + final IconData iconData; + final String title; + + // ignore: use_key_in_widget_constructors + const IconText({required this.iconData, required this.title}); + + @override + Widget build(BuildContext context) { + return Row( + children: [ + Icon( + iconData, + size: 17, + ), + const SizedBox(width: 6), + Text( + title, + style: Theme.of(context).textTheme.bodyText1, + ), + ], + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/profile_pic.dart b/Abhishek krishnan U V/lib/screens/home/widgets/profile_pic.dart new file mode 100644 index 0000000..0fa9519 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/profile_pic.dart @@ -0,0 +1,48 @@ +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; + +class ProfilePic extends StatelessWidget { + const ProfilePic({ + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + const CircleAvatar( + radius: 22, + backgroundImage: AssetImage('assets/portfolioimage.jpeg'), + ), + SizedBox(width: 85), + Text( + 'NEWS app', + style: GoogleFonts.merriweather( + backgroundColor: Colors.white, + textStyle: + const TextStyle(fontSize: 25, color: Colors.black), + ), + ), + SizedBox(width: 10), + Text( + ' by Abhishek', + style: GoogleFonts.merriweatherSans( + backgroundColor: Colors.white, + textStyle: + const TextStyle(fontSize: 17, color: Colors.redAccent), + ), + ), + ], + ), + + ], + ), + ], + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/home/widgets/title_bar.dart b/Abhishek krishnan U V/lib/screens/home/widgets/title_bar.dart new file mode 100644 index 0000000..aa96b32 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/home/widgets/title_bar.dart @@ -0,0 +1,32 @@ +import 'package:flutter/material.dart'; +// ignore: unused_import +import 'package:newsapp_ui_by_abhishek/Screens/config/var/var.dart' as configvar; +import 'package:newsapp_ui_by_abhishek/Screens/details/detail_news.dart'; +import 'main_bar.dart'; + +class TitleBar extends StatelessWidget { + const TitleBar({ + Key? key, + required this.screenWidth, + }) : super(key: key); + + final double screenWidth; + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 5, horizontal: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Hot News ', + style: Theme.of(context).primaryTextTheme.headline3), + const SizedBox(height: 10), + GestureDetector( + onTap: (){Navigator.of(context).pushNamed(DetailNews.routename);}, + child: const MainBar()), + ], + ), + ); + } +} diff --git a/Abhishek krishnan U V/lib/screens/profile/profile.dart b/Abhishek krishnan U V/lib/screens/profile/profile.dart new file mode 100644 index 0000000..1d3a242 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/profile/profile.dart @@ -0,0 +1,39 @@ +import 'package:newsapp_ui_by_abhishek/Screens/profile/profile_info.dart'; +import 'package:flutter/material.dart'; + +class Profile extends StatelessWidget { + static const routename = 'Profile'; + + @override + Widget build(BuildContext context) { + return MaterialApp( + debugShowCheckedModeBanner: false, + home: Scaffold( + backgroundColor: Colors.white, + + + appBar: AppBar( + + + title: const Text('Profile'), + titleTextStyle: const TextStyle( + fontSize: 30, fontFamily: 'Gluten', color: Colors.black), + centerTitle: true, + + backgroundColor: Colors.transparent, + leading: IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: () { Navigator.of(context).pop();}, + color: Colors.black, + ), + actions: [ + IconButton( + onPressed: () {}, + icon: const Icon(Icons.settings), + color: Colors.black, + ) + ]), + body: info(), + )); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/lib/screens/profile/profile_info.dart b/Abhishek krishnan U V/lib/screens/profile/profile_info.dart new file mode 100644 index 0000000..c5c9568 --- /dev/null +++ b/Abhishek krishnan U V/lib/screens/profile/profile_info.dart @@ -0,0 +1,92 @@ +import 'package:flutter/material.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; + + +class info extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Container( + child: Scaffold( + body: Container( + color: Colors.blue[50], + child: Column(children:const [ + + Padding( + padding: EdgeInsets.only(top: 15), + ), + CircleAvatar( + backgroundImage: AssetImage("assets/portfolioimage.jpeg"), + radius: 70, + ), + Text('Abhishek krishnan U V',textScaleFactor: 2,style: TextStyle(fontFamily: 'Poppins'),), + Text('Flutter Developer'), + + ListTile( + title: Text(' 1500 followers 1700 following ',style: TextStyle(fontSize: 20,)), + + tileColor: Colors.white, + + ), + + + Padding(padding:EdgeInsets.only(top: 25)), + ListTile( + title: Text('Email'), + tileColor: Colors.white, + subtitle: Text('abhishek@example.com'), + leading:Icon(FontAwesomeIcons.mailBulk), + ), + Divider( + height: 4, + thickness: 2, + color: Colors.black12, + indent: 20, + endIndent: 20, + ), + ListTile( + title: Text('Mobile'), + tileColor: Colors.white, + subtitle: Text('0000000000'), + leading:Icon(FontAwesomeIcons.mobile), + ), + Divider( + height: 4, + thickness: 2, + color: Colors.black12, + indent: 20, + endIndent: 20, + ), + ListTile( + title: Text('Facebook'), + tileColor: Colors.white, + subtitle: Text('www.facebook/abhishek'), + leading:Icon(FontAwesomeIcons.facebook), + ), + Divider( + height: 4, + thickness: 2, + color: Colors.black12, + indent: 20, + endIndent: 20, + ), + ListTile( + title: Text('Twitter'), + tileColor: Colors.white, + subtitle: Text('www.twitter/abhishek'), + leading:Icon(FontAwesomeIcons.twitter), + ), + Divider( + height: 4, + thickness: 2, + color: Colors.black12, + indent: 20, + endIndent: 20, + ), + + ] + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/Abhishek krishnan U V/pubspec.yaml.yaml b/Abhishek krishnan U V/pubspec.yaml.yaml new file mode 100644 index 0000000..ee218f3 --- /dev/null +++ b/Abhishek krishnan U V/pubspec.yaml.yaml @@ -0,0 +1,91 @@ +name: newsapp_ui_by_abhishek +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + google_fonts: ^2.1.0 + font_awesome_flutter: ^9.1.0 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + assets: + - assets/portfolioimage.jpeg + + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages \ No newline at end of file diff --git a/Abhishek krishnan U V/test/widget_test.dart b/Abhishek krishnan U V/test/widget_test.dart new file mode 100644 index 0000000..5aafc72 --- /dev/null +++ b/Abhishek krishnan U V/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility that Flutter provides. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:newsapp_ui_by_abhishek/main.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget( MyApp()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +} \ No newline at end of file diff --git a/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(Home screen news app.).png b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(Home screen news app.).png new file mode 100644 index 0000000..5402642 Binary files /dev/null and b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(Home screen news app.).png differ diff --git a/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(News detailed page).png b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(News detailed page).png new file mode 100644 index 0000000..36b7948 Binary files /dev/null and b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(News detailed page).png differ diff --git a/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(profile page news app.).png b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(profile page news app.).png new file mode 100644 index 0000000..c14264f Binary files /dev/null and b/screenshots of app/Abhishek krishnan U V (News app screenshots)/Abhishek krishnan U V(profile page news app.).png differ