Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0fb3c3a

Browse files
new update
1 parent 5c7ae29 commit 0fb3c3a

File tree

13 files changed

+473
-205
lines changed

13 files changed

+473
-205
lines changed

‎.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,3 +44,4 @@ app.*.map.json
4444
/android/app/debug
4545
/android/app/profile
4646
/android/app/release
47+
/android/keystore.properties

‎android/app/google-services.json

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"project_info": {
3+
"project_number": "1092153925094",
4+
"project_id": "hashnode-576ce",
5+
"storage_bucket": "hashnode-576ce.appspot.com"
6+
},
7+
"client": [
8+
{
9+
"client_info": {
10+
"mobilesdk_app_id": "1:1092153925094:android:1de66ffff3d3fa159c4a27",
11+
"android_client_info": {
12+
"package_name": "com.acctgen1.hashnode"
13+
}
14+
},
15+
"oauth_client": [
16+
{
17+
"client_id": "1092153925094-9ef81r0j14jql6uiljoeflvpjo5phv2u.apps.googleusercontent.com",
18+
"client_type": 1,
19+
"android_info": {
20+
"package_name": "com.acctgen1.hashnode",
21+
"certificate_hash": "7572c5fc6600714a4863e96e5da671657a1c303b"
22+
}
23+
},
24+
{
25+
"client_id": "1092153925094-aian7qo8mgbucsmvtoapip9ck7tj89in.apps.googleusercontent.com",
26+
"client_type": 3
27+
}
28+
],
29+
"api_key": [
30+
{
31+
"current_key": "AIzaSyCJchO-TXUI879iUYGvtDvwz8p9ywoC2uE"
32+
}
33+
],
34+
"services": {
35+
"appinvite_service": {
36+
"other_platform_oauth_client": [
37+
{
38+
"client_id": "1092153925094-aian7qo8mgbucsmvtoapip9ck7tj89in.apps.googleusercontent.com",
39+
"client_type": 3
40+
}
41+
]
42+
}
43+
}
44+
}
45+
],
46+
"configuration_version": "1"
47+
}

‎lib/db/devinfo.dart

Lines changed: 267 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,267 @@
1+
import 'package:flutter/gestures.dart';
2+
import 'package:flutter/material.dart';
3+
import 'package:google_fonts/google_fonts.dart';
4+
import 'package:hashnode/theme/colors.dart';
5+
import 'package:url_launcher/url_launcher.dart';
6+
7+
class ContactDev extends StatefulWidget {
8+
ContactDev({Key key}) : super(key: key);
9+
10+
@override
11+
_ContactDevState createState() => _ContactDevState();
12+
}
13+
14+
class _ContactDevState extends State<ContactDev> {
15+
@override
16+
Widget build(BuildContext context) {
17+
return Scaffold(
18+
appBar: AppBar(
19+
title: Text('Developer',
20+
style: GoogleFonts.poppins(color: AppColor().mainColor)),
21+
centerTitle: true,
22+
backgroundColor: Colors.white,
23+
elevation: 0,
24+
),
25+
body: SingleChildScrollView(
26+
child: Padding(
27+
padding: const EdgeInsets.all(10),
28+
child: Center(
29+
child: Column(
30+
children: [
31+
FittedBox(
32+
child: Row(
33+
crossAxisAlignment: CrossAxisAlignment.center,
34+
children: [
35+
CircleAvatar(
36+
backgroundImage: AssetImage('assets/user.png'),
37+
backgroundColor: Colors.transparent,
38+
radius: 68,
39+
),
40+
Column(
41+
children: [
42+
Text(' Samuel Adekunle',
43+
style: GoogleFonts.aBeeZee(
44+
fontSize: 22,
45+
fontWeight: FontWeight.w900,
46+
)),
47+
Text(' Software Engineer'),
48+
],
49+
),
50+
],
51+
),
52+
),
53+
Divider(),
54+
SizedBox(height: 7),
55+
Text(
56+
'I\'m a tech enthusiast, a programmer, tutor, and an IT consultant. I make friends, developing, or learning from them.\n'
57+
'I developer all kinds of mobile apps basically'
58+
' e.g ecommerce, food ordering, payment app, exercise, news app, job search etc. gaming app excluded. \n'
59+
'I also love to write about technology and programming in a whole. For projects, contact me on whatsapp/via email. Thanks',
60+
style: GoogleFonts.aBeeZee(
61+
fontSize: 14, fontWeight: FontWeight.w400),
62+
),
63+
SizedBox(height: 10),
64+
Row(
65+
mainAxisAlignment: MainAxisAlignment.spaceBetween,
66+
children: [
67+
GestureDetector(
68+
onTap: () {
69+
launch('https://facebook.com/acctgen1');
70+
},
71+
child: Column(
72+
children: [
73+
CircleAvatar(
74+
backgroundImage: AssetImage('assets/facebook.png'),
75+
backgroundColor: Colors.transparent,
76+
radius: 28,
77+
),
78+
Text('Facebook')
79+
],
80+
),
81+
),
82+
GestureDetector(
83+
onTap: () {
84+
launch('https://twitter.com/iamsamadekunle');
85+
},
86+
child: Column(
87+
children: [
88+
CircleAvatar(
89+
backgroundImage: AssetImage('assets/twitter.jpg'),
90+
backgroundColor: Colors.transparent,
91+
radius: 28,
92+
),
93+
Text('Twitter')
94+
],
95+
),
96+
),
97+
GestureDetector(
98+
onTap: () {
99+
launch('https://wa.me/message/JLGQNNTPG64IH1');
100+
},
101+
child: Column(
102+
children: [
103+
CircleAvatar(
104+
backgroundImage: AssetImage('assets/what.jpg'),
105+
backgroundColor: Colors.transparent,
106+
radius: 28,
107+
),
108+
Text('WhatsApp')
109+
],
110+
),
111+
),
112+
GestureDetector(
113+
onTap: () {
114+
launch('https://github.com/acctgen1');
115+
},
116+
child: Column(
117+
children: [
118+
CircleAvatar(
119+
backgroundImage: AssetImage('assets/git.png'),
120+
backgroundColor: Colors.transparent,
121+
radius: 28,
122+
),
123+
Text('GitHub')
124+
],
125+
),
126+
),
127+
],
128+
),
129+
SizedBox(height: 10),
130+
Row(
131+
mainAxisAlignment: MainAxisAlignment.spaceBetween,
132+
children: [
133+
GestureDetector(
134+
onTap: () {
135+
launch('https://acctgen1.medium.com');
136+
},
137+
child: Column(
138+
children: [
139+
CircleAvatar(
140+
backgroundImage: AssetImage('assets/medium.png'),
141+
backgroundColor: Colors.transparent,
142+
radius: 28,
143+
),
144+
Text('Medium')
145+
],
146+
),
147+
),
148+
GestureDetector(
149+
onTap: () {
150+
launch('https://acctgen1.hashnode.dev');
151+
},
152+
child: Column(
153+
children: [
154+
CircleAvatar(
155+
backgroundImage: AssetImage('assets/hash.jpg'),
156+
backgroundColor: Colors.transparent,
157+
radius: 28,
158+
),
159+
Text('Hashnode')
160+
],
161+
),
162+
),
163+
GestureDetector(
164+
onTap: () {
165+
launch(
166+
'https://stackoverflow.com/users/12172250/acctgen1');
167+
},
168+
child: Column(
169+
children: [
170+
CircleAvatar(
171+
backgroundImage: AssetImage('assets/stack.png'),
172+
backgroundColor: Colors.transparent,
173+
radius: 28,
174+
),
175+
Text('stack overflow')
176+
],
177+
),
178+
),
179+
GestureDetector(
180+
onTap: () {
181+
launch('https://www.linkedin.com/in/acctgen1/');
182+
},
183+
child: Column(
184+
children: [
185+
CircleAvatar(
186+
backgroundImage: AssetImage('assets/link.png'),
187+
backgroundColor: Colors.transparent,
188+
radius: 28,
189+
),
190+
Text('LinkedIn')
191+
],
192+
),
193+
),
194+
],
195+
),
196+
SizedBox(height: 10),
197+
Row(
198+
mainAxisAlignment: MainAxisAlignment.spaceAround,
199+
children: [
200+
GestureDetector(
201+
onTap: () {
202+
launch(
203+
'https://www.youtube.com/channel/UCRYjIF5HAXc9m52rC6dmOCQ?sub_confirmation=1');
204+
},
205+
child: Column(
206+
children: [
207+
CircleAvatar(
208+
backgroundImage: AssetImage('assets/youtube.png'),
209+
backgroundColor: Colors.transparent,
210+
radius: 28,
211+
),
212+
Text('Youtube')
213+
],
214+
),
215+
),
216+
GestureDetector(
217+
onTap: () {
218+
launch('https://www.messenger.com/t/acctgen');
219+
},
220+
child: Column(
221+
children: [
222+
CircleAvatar(
223+
backgroundImage: AssetImage('assets/msg.png'),
224+
backgroundColor: Colors.transparent,
225+
radius: 28,
226+
),
227+
Text('Messenger')
228+
],
229+
),
230+
),
231+
],
232+
),
233+
SizedBox(height: 20),
234+
Divider(),
235+
RichText(
236+
text: TextSpan(
237+
text: 'This app is powered by ',
238+
style: GoogleFonts.roboto(
239+
color: Colors.black,
240+
fontSize: 16,
241+
fontWeight: FontWeight.w500,
242+
),
243+
children: [
244+
TextSpan(
245+
text: 'Hashnode API',
246+
recognizer: TapGestureRecognizer()
247+
..onTap = () {
248+
launch('https://api.hashnode.com/');
249+
},
250+
style: GoogleFonts.poppins(
251+
color: AppColor().mainColor,
252+
fontSize: 17,
253+
fontWeight: FontWeight.w700,
254+
decoration: TextDecoration.underline,
255+
decorationStyle: TextDecorationStyle.double,
256+
)),
257+
]),
258+
),
259+
SizedBox(height: 50),
260+
],
261+
),
262+
),
263+
),
264+
),
265+
);
266+
}
267+
}

‎lib/functions/webview.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@ class _BlogViewsState extends State<BlogViews> {
2525
return Scaffold(
2626
appBar: AppBar(
2727
backgroundColor: Colors.white,
28-
title: Text(title, style: AppTextStyle().appbarStyle,),
28+
title: Text(
29+
title,
30+
style: AppTextStyle().appbarStyle,
31+
),
2932
centerTitle: true,
3033
elevation: 0,
3134
actions: [

‎lib/models/bestmodel.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class BestModel {
1212
if (this.data != null) {
1313
data['data'] = this.data.toJson();
1414
}
15-
return data;
15+
return data;
1616
}
1717
}
1818

@@ -42,7 +42,7 @@ class Data {
4242
class StoriesFeed {
4343
String title;
4444
Author author;
45-
String coverImage;
45+
String coverImage;
4646
String slug;
4747
int replyCount;
4848

‎lib/screens/best.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class BestPage extends StatefulWidget {
1919
class _BestPageState extends State<BestPage> {
2020
final GlobalKey<RefreshIndicatorState> _refreshIndicatorKey =
2121
GlobalKey<RefreshIndicatorState>();
22-
Future best;
22+
Future<BestModel> best;
2323

2424
@override
2525
void initState() {
@@ -66,10 +66,10 @@ class _BestPageState extends State<BestPage> {
6666
break;
6767
case ConnectionState.done:
6868
if (lists.hasError) {
69-
return Text(
69+
return Text(
7070
CustomText().apiErr,
7171
style: AppTextStyle().errStyle,
72-
);
72+
);
7373
} else if (lists.hasData) {
7474
if (lists.data.data == null) {
7575
return Center(

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /