Skip to content

Commit 1c9ee1a

Browse files
committed
Add features
1 parent b08fba6 commit 1c9ee1a

File tree

11 files changed

+92
-51
lines changed

11 files changed

+92
-51
lines changed
+16-17
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,36 @@
11
.feature {
2-
margin: 1.5rem auto;
2+
margin: 2.5rem auto;
33
width: 15rem;
44
text-align: center;
5-
letter-spacing: 1px;
65
}
76

87
.iconWrapper {
9-
margin: 0 auto;
10-
width: 10rem;
11-
height: 10rem;
8+
margin: 0 auto 1rem;
9+
width: 1.75rem;
10+
height: 1.75rem;
1211
}
1312

14-
@media (min-width: 25em) {
15-
16-
.feature {
17-
lost-column: 1/2 2 2rem;
18-
}
19-
20-
}
13+
.text {
14+
margin: 0;
15+
}
2116

22-
@media (min-width: 40em) {
17+
@media (min-width: 25em) {
2318

2419
.feature {
25-
lost-column: 1/3 3 2rem;
20+
lost-column: 1/2 2 4rem flex;
2621
}
2722

2823
}
2924

30-
@media (min-width: 75em) {
25+
@media (min-width: 48em) {
3126

3227
.feature {
33-
lost-column: 1/6 6 3rem;
28+
display: flex;
3429
text-align: left;
3530
}
3631

37-
}
32+
.iconWrapper {
33+
flex: 0 0 1.75rem;
34+
margin: 0 1rem 0 0;
35+
}
36+
}

src/components/public/feature/index.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@ const Feature = props => (
88
<div className={styles.iconWrapper}>
99
{props.icon}
1010
</div>
11-
<p className={styles.text}>{props.text}</p>
11+
<div className={styles.textWrapper}>
12+
<h3 className={styles.text}>{props.text}</h3>
13+
<p className={styles.description}>{props.description}</p>
14+
</div>
1215
</li>
1316
);
1417

src/pages/public/home/features.js

+22-23
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,29 @@
11
import React from 'react';
22

3-
import IconCapture from './ic_capture.svg';
4-
import IconPermissions from './ic_permissions.svg';
5-
import IconScaling from './ic_scaling.svg';
6-
import IconMethods from './ic_methods.svg';
7-
import IconFocus from './ic_focus.svg';
8-
import IconTouch from './ic_touch.svg';
3+
import IconSimple from './ic_simple.svg';
4+
import IconTested from './ic_tested.svg';
5+
import IconDualCam from './ic_dual_cam.svg';
6+
import IconVR from './ic_vr_addons.svg';
97

108
export default [
119
{
12-
icon: <IconCapture />,
13-
text: 'Seamless image and video capture',
14-
}, {
15-
icon: <IconPermissions />,
16-
text: 'Auto permission handling',
17-
}, {
18-
icon: <IconScaling />,
19-
text: 'Auto preview scaling',
20-
}, {
21-
icon: <IconMethods />,
22-
text: 'Multiple capture methods',
23-
}, {
24-
icon: <IconFocus />,
25-
text: 'Built-in continuous focus',
26-
}, {
27-
icon: <IconTouch />,
28-
text: 'Built-in tap to focus',
10+
icon: <IconSimple />,
11+
text: 'Easy to implement',
12+
description: 'Some text goes here. Some text goes here. Some text goes here.'
13+
},
14+
{
15+
icon: <IconTested />,
16+
text: 'Extensively Tested',
17+
description: 'Some text goes here.'
18+
},
19+
{
20+
icon: <IconDualCam />,
21+
text: 'All Camera Features',
22+
description: 'Some text goes here.'
23+
},
24+
{
25+
icon: <IconVR />,
26+
text: 'Addons Support',
27+
description: 'Some text goes here.'
2928
},
3029
];

src/pages/public/home/features.scss

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
.heading {
2+
flex: 1 1 100%;
3+
}
4+
5+
.list {
6+
flex: 1 1 100%;
7+
}
8+
9+
.heading {
10+
margin-bottom: 3rem;
11+
}
12+
13+
14+
@media (min-width: 62em) {
15+
.heading {
16+
flex: 1 1 33%;
17+
padding-right: 3rem;
18+
margin-bottom: 0;
19+
}
20+
21+
.list {
22+
flex: 1 1 66%;
23+
}
24+
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

src/pages/public/home/index.js

+17-10
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import features from './features';
1414
import sponsors from './sponsors';
1515

1616
import styles from './home.scss';
17+
import featureStyles from './features.scss';
1718
import intro from './intro.scss';
1819

1920
function scrollDown () {
@@ -41,16 +42,22 @@ const Home = () => (
4142
</section>
4243
<section id="features" className={styles.section}>
4344
<div className="container">
44-
<h2 className={styles.heading}>Features</h2>
45-
<ul className={`${styles.list} ${styles.flexWrapper}`}>
46-
{features.map(feature => (
47-
<Feature
48-
key={feature.text}
49-
text={feature.text}
50-
icon={feature.icon}
51-
/>
52-
))}
53-
</ul>
45+
<div className={featureStyles.main}>
46+
<h2 className='heading--small'>Features</h2>
47+
<div className={styles.flexWrapper}>
48+
<p className={`heading--large ${featureStyles.heading}`}>High-level, simple, and extremely performant</p>
49+
<ul className={`${styles.list} ${styles.flexWrapper} ${featureStyles.list}`}>
50+
{features.map(feature => (
51+
<Feature
52+
key={feature.text}
53+
text={feature.text}
54+
description={feature.description}
55+
icon={feature.icon}
56+
/>
57+
))}
58+
</ul>
59+
</div>
60+
</div>
5461
</div>
5562
</section>
5663
<section className={styles.section}>

src/styles.global.scss

+8
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ a {
5151
}
5252

5353
.heading--large {
54+
color: $dark-grey;
5455
font-size: 2rem;
5556
font-weight: 100;
5657
line-height: 1.2;
@@ -59,3 +60,10 @@ a {
5960
font-size: 3rem;
6061
}
6162
}
63+
64+
.heading--small {
65+
font-size: 1rem;
66+
font-weight: 500;
67+
text-transform: uppercase;
68+
letter-spacing: 0.05rem;
69+
}

src/styles/variables.scss

+1
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@ $light-grey: #CFD8DC;
33
$mid-grey: #77829b;
44
$dark-grey: #3E445B;
55
$primary: #6b60e9;
6+

0 commit comments

Comments
 (0)