-
Notifications
You must be signed in to change notification settings - Fork 0
/
Projects.js
327 lines (277 loc) · 11.9 KB
/
Projects.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
import React,{Fragment} from 'react';
import { StyleSheet, Text, View,Dimensions,Animated,ScrollView,Image,ImageBackground, Linking} from 'react-native';
import {Video} from 'expo-av';
import { createStackNavigator, createAppContainer, createDrawerNavigator} from "react-navigation";
import styled from "styled-components/native";
import { TextInput,Button ,Title,Paragraph,Card} from 'react-native-paper';
import { Ionicons } from '@expo/vector-icons';
const SCREEN_WIDTH = Dimensions.get("window").width;
const xOffset = new Animated.Value(0);
const Screen = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/AuDu.jpg')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:30,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1}}}>AuDu</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',alignSelf:'center',fontSize:20,marginVertical:7,fontWeight:'bold'}}>AuDu - Automatic Dustbin</Text>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>This is a automatic dustbin, which works using arduino and the phone's inbuilt gyroscope. This dustbin also contains a lid which can be automatically opened or closed when waste materials and brought near it.</Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://github.com/Hyper-Matrix/AuDu-The-automatic-dustbin')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,marginTop:5,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'flex-end'}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const Screen1 = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[ transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/fire.jpg')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:30,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1},textAlign:'center'}}>Fire Emergency System</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>Fires in general are a big problem and risk to life. Having a device which can point the location of fire and alarm the officials of it.Our fire emergency system helps to cure this problem.
</Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://spectrumcet.com/First_project.html')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,marginTop:5,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'center'}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const Screen2 = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[ transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/yt.jpg')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:30,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1}}}>YoPlaDo</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',alignSelf:'center',fontSize:19,marginVertical:7,fontWeight:'bold'}}>YoPlaDo-Youtube-Playlist-Downloader</Text>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>A simple python program to download Youtube Playlist at once.Project is a simple combination of Web Scrapping and Youtube-Downloading.Our approach enables the user be able to download youtube videos in a playlist at one go.</Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://github.com/Dstri26/YoPlaDo-Youtube-Playlist-Downloader')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,marginTop:5,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'center'}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const Screen3 = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[ transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/sis.jpg')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:30,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1}}}>S.I.S</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',alignSelf:'center',fontSize:19,marginVertical:7,fontWeight:'bold'}}>S.I.S - Smart Irrigation System</Text>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>This project proposes an intelligent Irrigation system which describes how irrigation can be handled smartly using IOT. The objective of this system is to detect the moisture content of the soil and depending on it sprinkle water.</Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://spectrumcet.com/third_project.html')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'center',marginTop:5}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const Screen4 = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[ transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/breast_cancer.png')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:15,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1},textAlign:'center'}}>NEURON MODEL FOR BREAST CANCER CLASSIFICATION(MALIGN/BENIGN)</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>A MP Neuron model to classify breast cancer as malign or benign as per given data.This is a simple McCulloch-Pitts Neuron Model for testing whether a breast cancer is malignant or benign by checking it's features such as radius, texture, area, etc.
</Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://github.com/C3Suryansu/CNN-using-CIFAR10')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'center',marginTop:5}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const Screen5 = props => {
return (
<View style={styles.scrollPage}>
<Animated.View style={[ transitionAnimation(props.index)]}>
<Card
style={{margin:10,borderRadius:10,borderColor:'white',borderWidth:5,backgroundColor:'rgba(0,0,0,0.6)'}}>
<Card.Cover source={require('./media/cifar.png')} />
<Card.Content>
<Title style={{color:'white',alignSelf:'center',fontSize:15,marginTop:5,letterSpacing:2,fontWeight:'bold',shadowColor:'black',textShadowRadius:13,textShadowOffset:{width:-1,height:1}}}>CIFAR 10 IMAGE CLASSIFICATION USING CNN</Title>
<View style={{borderWidth:1,borderColor:'white'}}/>
<Text style={{color:'white',textAlign:'justify',fontSize:15,fontWeight:'bold'}}>A multi class-classification using PyTorch and GPU Cuda support, and using CNN for this purpose.A CNN model using CNN as well as using PyTorch's sequential and inbuilt modules, to build a image classifier on CIFAR 10 dataset. </Text>
</Card.Content>
<Card.Actions>
<Button
onPress={()=>Linking.openURL('https://spectrumcet.com/third_project.html')}
mode="contained"
color="#00BCD4"
labelStyle={{color:"white",letterSpacing:3}}
style ={{margin:5, height:50,padding:8,width:300,borderRadius:30,borderColor
:"black",borderWidth:3,padding:5,alignSelf:'center',marginTop:5}
}>GET THE CODE</Button>
</Card.Actions>
</Card>
</Animated.View>
</View>
);
};
const transitionAnimation = index => {
return {
transform: [
{ perspective: 800 },
{
scale: xOffset.interpolate({
inputRange: [
(index - 1) * SCREEN_WIDTH,
index * SCREEN_WIDTH,
(index + 1) * SCREEN_WIDTH
],
outputRange: [0.25, 1, 0.25]
})
},
{
rotateX: xOffset.interpolate({
inputRange: [
(index - 1) * SCREEN_WIDTH,
index * SCREEN_WIDTH,
(index + 1) * SCREEN_WIDTH
],
outputRange: ["45deg", "0deg", "45deg"]
})
},
{
rotateY: xOffset.interpolate({
inputRange: [
(index - 1) * SCREEN_WIDTH,
index * SCREEN_WIDTH,
(index + 1) * SCREEN_WIDTH
],
outputRange: ["-45deg", "0deg", "45deg"]
})
}
]
};
};
export default class Projects extends React.Component {
render() {
return (
<ImageBackground
source={require('./media/homeback.jpg')}
style={styles.image}
>
<View style={styles.container}>
<Text style={{color:'white',fontSize:30,marginTop:10,alignSelf:'center',fontWeight:'bold',textShadowColor:'black',textShadowOffset: {width: -1, height: 1},
textShadowRadius: 15,letterSpacing:3}}>PROJECTS</Text>
<Animated.ScrollView
scrollEventThrottle={16}
onScroll={Animated.event(
[{ nativeEvent: { contentOffset: { x: xOffset } } }],
{ useNativeDriver: true }
)}
horizontal
pagingEnabled
style={styles.scrollView}
indicatorStyle={{color:'white'}}
>
<Screen index={0} />
<Screen1 index={1} />
<Screen2 index={2} />
<Screen3 index={3} />
<Screen4 index={4} />
<Screen5 index={5} />
</Animated.ScrollView>
</View>
</ImageBackground>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: 'transparent',
},
image:{
flex:1,
resizeMode: "cover",
},
cardimage:{
resizeMode:'stretch',
height:322,
}, scrollView: {
flexDirection: "row",
},
scrollPage: {
width: SCREEN_WIDTH,
padding: 20,
},
screen: {
height: 600,
justifyContent: "center",
alignItems: "center",
borderRadius: 25,
backgroundColor: "white"
},
text: {
fontSize: 45,
fontWeight: "bold"
}
})