Skip to content

Commit 9fa8107

Browse files
authored
Merge pull request #18 from DanKhoo/CAP
Add CAP Page
2 parents bf2c1a8 + 06edc92 commit 9fa8107

File tree

2 files changed

+145
-0
lines changed

2 files changed

+145
-0
lines changed

src/components/cap/CapComponent.js

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
import React, { Component } from 'react';
2+
import { Link } from 'gatsby';
3+
4+
import { withStyles } from '@material-ui/core/styles';
5+
import Typography from '@material-ui/core/Typography';
6+
import Button from '@material-ui/core/Button';
7+
8+
import BannerImage from '../BannerImage';
9+
import { primary, hoverPrimary } from '../../utils/Colors';
10+
11+
const styles = theme => ({
12+
root: {
13+
position: 'relative',
14+
background: 'linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5))',
15+
padding: '4rem 2rem 4rem 2rem',
16+
textAlign: 'center',
17+
[theme.breakpoints.up('md')]: {
18+
padding: '8rem 6rem 8rem 6rem',
19+
},
20+
},
21+
bgImg: {
22+
position: 'absolute !important',
23+
top: 0,
24+
left: 0,
25+
height: '100%',
26+
width: '100%',
27+
zIndex: '-1',
28+
},
29+
title: {
30+
color: '#f5f5f5',
31+
fontSize: '1.75rem',
32+
fontWeight: 700,
33+
marginBottom: '1.25em',
34+
[theme.breakpoints.up('md')]: {
35+
fontSize: '2.125rem',
36+
lineHeight: 1.5,
37+
},
38+
},
39+
description: {
40+
marginBottom: 50,
41+
color: '#f5f5f5',
42+
textAlign: 'justify',
43+
fontSize: '0.9rem',
44+
[theme.breakpoints.up('md')]: {
45+
fontSize: '1.1rem',
46+
},
47+
},
48+
btn: {
49+
backgroundColor: primary,
50+
color: '#fff',
51+
marginBottom: 10,
52+
padding: '8px 24px',
53+
textTransform: 'capitalize',
54+
'&:hover': {
55+
backgroundColor: hoverPrimary,
56+
},
57+
[theme.breakpoints.up('md')]: {
58+
padding: '10px 30px',
59+
},
60+
},
61+
links: {
62+
textDecoration: 'none',
63+
color: '#000',
64+
},
65+
a: {
66+
color: '#fff',
67+
'&:hover': {
68+
color: 'rgba(255, 255, 255, 0.5)',
69+
},
70+
},
71+
});
72+
73+
class CapComponent extends Component {
74+
render() {
75+
const { classes } = this.props;
76+
77+
return (
78+
<div className={classes.root}>
79+
<BannerImage
80+
filename={'events/upstars-001/20171104_130347_cover.jpg'}
81+
classProps={classes.bgImg}
82+
/>
83+
<Typography variant="h4" className={classes.title}>
84+
CAP
85+
</Typography>
86+
<Typography variant="body1" className={classes.description}>
87+
Welcome to the CAP program by SoC Student Life under its Code for
88+
Community project. The #socFamily team is very excited that you have
89+
found us!
90+
<br />
91+
<br />
92+
CAP - Code to Achieve Potential is a program designed in collaboration
93+
with{' '}
94+
<a href="https://www.autism.org.sg" className={classes.a}>
95+
Autism Resource Centre, Singapore
96+
</a>{' '}
97+
to create code specific learning opportunities for youth with Autism.{' '}
98+
<br />
99+
<br />
100+
We want YOU to teach coding to ARC students to help them improve their
101+
employability. So let’s get started on this awesome journey!
102+
</Typography>
103+
<Link to={'/join-us'} className={classes.links}>
104+
<Button className={classes.btn}>Join Us</Button>
105+
</Link>
106+
</div>
107+
);
108+
}
109+
}
110+
111+
export default withStyles(styles)(CapComponent);

src/pages/cap.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import React from 'react';
2+
import { graphql } from 'gatsby';
3+
4+
import Layout from '../components/layout';
5+
import SEO from '../components/seo';
6+
7+
import YoungCoderComponent from '../components/cap/CapComponent';
8+
import FooterComponent from '../components/home/footer/FooterComponent';
9+
10+
import 'typeface-roboto';
11+
12+
import withRoot from '../components/withRoot';
13+
14+
const IndexPage = props => (
15+
<Layout>
16+
<SEO
17+
title="CAP"
18+
keywords={['canvas', 'volunteer', 'singapore', 'computing']}
19+
/>
20+
<YoungCoderComponent />
21+
<FooterComponent data={props.data.site} />
22+
</Layout>
23+
);
24+
25+
export default withRoot(IndexPage);
26+
27+
// Query for buildTime
28+
export const pageQuery = graphql`
29+
query Cap_Query {
30+
site {
31+
buildTimeZone
32+
}
33+
}
34+
`;

0 commit comments

Comments
 (0)