diff --git a/README.md b/README.md
index 983b61f..273928b 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,6 @@ Join us - the revolution will rendered artistically!
* [Handlebars](http://handlebarsjs.com/) templates
* ES6 support (provided by [Babel](https://babeljs.io/))
* [Sass/SCSS](http://sass-lang.com/) support
-* Tests with [Mocha](https://mochajs.org/) and [Chai](http://chaijs.com/)
## Prerequisites
You will need the following things properly installed on your computer.
diff --git a/gulpfile.babel.js b/gulpfile.babel.js
index e50c327..4137e14 100644
--- a/gulpfile.babel.js
+++ b/gulpfile.babel.js
@@ -124,6 +124,7 @@ gulp.task('hbs', () => {
helpers: [
'./src/hbs/helpers/repeat.js',
'./src/hbs/helpers/svg-icon.js',
+ './src/hbs/helpers/new-line.js',
'./node_modules/handlebars-helpers/lib/fs.js',
'./node_modules/handlebars-helpers/lib/comparison.js',
'./node_modules/handlebars-helpers/lib/collection.js',
diff --git a/package-lock.json b/package-lock.json
index 08c0c92..7e87f64 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -15487,6 +15487,11 @@
"integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=",
"dev": true
},
+ "vanilla-tilt": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/vanilla-tilt/-/vanilla-tilt-1.4.1.tgz",
+ "integrity": "sha512-yZS4jIejmhqThLlwzJ5juPwDMk6rtf+ekADDK1lAYNiw6H2VGAJr9bt8vCp+ED5kyK6sE0sMq6mxPfV8a/NdFw=="
+ },
"verror": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
diff --git a/src/hbs/helpers/new-line.js b/src/hbs/helpers/new-line.js
new file mode 100644
index 0000000..ce31530
--- /dev/null
+++ b/src/hbs/helpers/new-line.js
@@ -0,0 +1,9 @@
+'use strict';
+
+module.exports.register = function(Handlebars, options) {
+ Handlebars.registerHelper('new-line', function(text) {
+ return new Handlebars.SafeString(
+ text.split(' ').map(word => word + '
').join('')
+ );
+ });
+};
diff --git a/src/hbs/index.hbs b/src/hbs/index.hbs
index 85452a5..0145bcf 100644
--- a/src/hbs/index.hbs
+++ b/src/hbs/index.hbs
@@ -61,6 +61,36 @@ structure:
nextSectionLink: 'Learn more about the team ↓'
counterText: '04 - 06'
+team:
+ header: 'Team -'
+ quote:
+ text: '"Everything I do is some kind of modified borrowing from others who have been close to me either actually or virtually, and the virtual influences are amongst the most profound"'
+ author: 'Douglas Hofstadter'
+ profiles:
+ - name: 'Doge Doe'
+ image: 'images/dog-profile.png'
+ - location: 'New York'
+ name: 'Jessica Angel'
+ image: 'images/jessica-profile.png'
+ - name: 'Jason Teutsch'
+ image: 'images/jason-profile.png'
+ - location: 'Toronto'
+ name: 'Robbie Bent'
+ image: ''
+ - location: 'San Francisco'
+ name: 'Sina Habibian'
+ image: ''
+ - name: 'Emily Hunter'
+ image: ''
+ - name: 'Jane Doe'
+ image: ''
+ - location: 'Toronto'
+ name: 'Aqeel Mohammad'
+ image: ''
+
+ nextSectionLink: 'Learn more about getting involved ↓'
+ counter: '05 - 06'
+
getInvolved:
header: 'Get Involved —'
description:
@@ -97,11 +127,11 @@ getInvolved:
{{> components/introduction introduction=frontMatter.introduction}}
- {{> components/project project=frontMatter.project }}
+ {{> components/project project=frontMatter.project}}
{{> components/structure structure=frontMatter.structure}}
- {{> components/team}}
+ {{> components/team team=frontMatter.team}}
{{> components/get-involved getInvolved=frontMatter.getInvolved}}
diff --git a/src/hbs/partials/components/introduction.hbs b/src/hbs/partials/components/introduction.hbs
index 1cafd28..5043db8 100644
--- a/src/hbs/partials/components/introduction.hbs
+++ b/src/hbs/partials/components/introduction.hbs
@@ -35,11 +35,11 @@
}}
-
+ {{> components/next-section-link
+ class="introduction__link"
+ name=introduction.nextSectionLink
+ }}
+
diff --git a/src/hbs/partials/components/profile.hbs b/src/hbs/partials/components/profile.hbs
new file mode 100644
index 0000000..74ec0da
--- /dev/null
+++ b/src/hbs/partials/components/profile.hbs
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+ {{#if profile.location }} {{ profile.location }} {{else}} undisclosed {{/if}}
+
+
+ {{new-line profile.name }}
+
+
+
diff --git a/src/hbs/partials/components/team.hbs b/src/hbs/partials/components/team.hbs
index 5f15c08..a09bf56 100644
--- a/src/hbs/partials/components/team.hbs
+++ b/src/hbs/partials/components/team.hbs
@@ -1,3 +1,37 @@
+
+ {{> components/heading
+ text=team.header
+ class="team__header"
+ }}
+
+
+
{{ team.quote.text }}
+
- {{ team.quote.author }}
+
+
+
+ {{#each team.profiles as |profile| }}
+ {{> components/profile
+ index=@index
+ class="team__profile"
+ profile=profile
+ }}
+ {{/each}}
+
+
+
{{ team.counter }}
+
+
+
+ {{> components/next-section-link
+ class="team__link"
+ name=team.nextSectionLink
+ }}
+
+
diff --git a/src/images/dog-profile.png b/src/images/dog-profile.png
new file mode 100644
index 0000000..4b24867
Binary files /dev/null and b/src/images/dog-profile.png differ
diff --git a/src/images/jason-profile.png b/src/images/jason-profile.png
new file mode 100644
index 0000000..5f8bb08
Binary files /dev/null and b/src/images/jason-profile.png differ
diff --git a/src/images/jessica-profile.png b/src/images/jessica-profile.png
new file mode 100644
index 0000000..6609a83
Binary files /dev/null and b/src/images/jessica-profile.png differ
diff --git a/src/styles/base/_colors.scss b/src/styles/base/_colors.scss
index d38b189..c69600e 100644
--- a/src/styles/base/_colors.scss
+++ b/src/styles/base/_colors.scss
@@ -6,9 +6,9 @@ $color-navy: #1e1e1e;
$color-black: #000;
$color-fuchsia-pink: #ca4eca;
-$color-fuchsia-blue:#694ac9;
+$color-fuchsia-blue: #5862a9;
$color-citron: #94ac20;
-$color-scampi: #5761aa;
+$color-scampi: #694ac9;
$color-corn: #e4c102;
$color-red: #ef2f00;
$color-turquoise: #6eccce;
diff --git a/src/styles/base/_settings.scss b/src/styles/base/_settings.scss
index 2fb2005..125aab4 100644
--- a/src/styles/base/_settings.scss
+++ b/src/styles/base/_settings.scss
@@ -16,7 +16,8 @@ $container-md: 940px;
$container-lg: 1140px;
$container-xlg: 1340px;
-$screen-xs: 'only screen and (min-width: 1px)';
+$screen-xxs: 'only screen and (min-width: 1px)';
+$screen-xs: 'only screen and (min-width: #{$xs})';
$screen-sm: 'only screen and (min-width: #{$sm})';
$screen-md: 'only screen and (min-width: #{$md})';
$screen-lg: 'only screen and (min-width: #{$lg})';
diff --git a/src/styles/components/_next-section-link.scss b/src/styles/components/_next-section-link.scss
index b442062..e73a1ed 100644
--- a/src/styles/components/_next-section-link.scss
+++ b/src/styles/components/_next-section-link.scss
@@ -1,5 +1,7 @@
.next-section-link {
display: block;
- font-size: 12px;
+ font-family: $base-font-family;
+ font-size: 13px;
+ font-weight: 500;
text-transform: uppercase;
}
diff --git a/src/styles/components/_profile.scss b/src/styles/components/_profile.scss
new file mode 100644
index 0000000..1935ae3
--- /dev/null
+++ b/src/styles/components/_profile.scss
@@ -0,0 +1,137 @@
+.profile {
+ &__container {
+ @media #{$screen-lg} {
+ position: relative;
+ max-width: 250px;
+ }
+ }
+
+ &__image-wrapper {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin: 0;
+ background-color: $color-white;
+ }
+
+ &__image {
+ width: 100%;
+ height: 100%;
+ padding-bottom: 114%;
+ background-position: center center;
+ background-size: cover;
+ }
+
+ &__location,
+ &__name {
+ @include heading;
+
+ text-transform: uppercase;
+ }
+
+ &__location {
+ font-size: 12px;
+ }
+
+ &__name {
+ font-size: 24px;
+
+ @media #{$screen-md} {
+ font-size: 32px;
+ }
+
+ @media #{$screen-lg} {
+ font-size: 48px;
+ }
+ }
+
+ &__detail {
+ margin-top: 10px;
+
+ @media #{$screen-md} {
+ position: absolute;
+ bottom: 0;
+ width: 100%;
+ margin: 0;
+
+ &--index {
+ &-0 {
+ transform: translate(-20%, -100%);
+ }
+
+ &-1 {
+ top: 0;
+ transform: translate(80%, -20%);
+ }
+
+ &-2 {
+ transform: translate(-25%, 40%);
+ }
+
+ &-3 {
+ transform: translate(-20%, 50%);
+ }
+
+ &-4 {
+ transform: translate(20%, 45%);
+ }
+
+ &-5 {
+ transform: translate(55%, -60%);
+ }
+
+ &-6 {
+ transform: translate(-20%, 25%);
+ }
+
+ &-7 {
+ transform: translate(-30%, 40%);
+ }
+ }
+ }
+
+ @media #{$screen-lg} {
+ line-height: 1.1;
+
+ &--index {
+ &-0 {
+ transform: translate(-25%, -50%);
+ }
+
+ &-1 {
+ top: 0;
+ transform: translate(80%, -25%);
+ }
+
+ &-2 {
+ transform: translate(-45%, 45%);
+ }
+
+ &-3 {
+ transform: translate(-25%, 65%);
+ }
+
+ &-4 {
+ transform: translate(20%, 45%);
+ }
+
+ &-5 {
+ transform: translate(75%, -50%);
+ }
+
+ &-6 {
+ transform: translate(-20%, 25%);
+ }
+
+ &-7 {
+ transform: translate(-40%, 45%);
+ }
+ }
+ }
+ }
+
+ @media #{$screen-lg} {
+ width: 33%;
+ max-width: initial;
+ }
+}
diff --git a/src/styles/components/_project.scss b/src/styles/components/_project.scss
index fbf19be..839b2f9 100644
--- a/src/styles/components/_project.scss
+++ b/src/styles/components/_project.scss
@@ -179,7 +179,7 @@
}
@media #{$screen-md} {
- padding: 50px 0;
+ padding: 60px 0 80px;
}
@media #{$screen-xlg} {
diff --git a/src/styles/components/_team.scss b/src/styles/components/_team.scss
index 55117b1..1025144 100644
--- a/src/styles/components/_team.scss
+++ b/src/styles/components/_team.scss
@@ -1,3 +1,199 @@
.team {
+ $profile-colors: (
+ $color-tangerine,
+ $color-fuchsia-blue,
+ $color-citron,
+ $color-corn,
+ $color-red,
+ $color-fuchsia-pink,
+ $color-scampi,
+ $color-turquoise
+ );
+
+ padding: 20px 0;
+ color: $color-white;
background-color: $color-black;
+
+ &__container {
+ @include container;
+
+ position: relative;
+ }
+
+ &__header {
+ margin-bottom: 20px;
+
+ @media #{$screen-md} {
+ position: absolute;
+ top: 42%;
+ z-index: 1;
+ }
+
+ @media #{$screen-lg} {
+ top: 46%;
+ }
+ }
+
+ &__counter {
+ font-size: 20px;
+
+ @media #{$screen-md} {
+ position: absolute;
+ top: 0;
+ right: 0;
+ font-size: 24px;
+ transform: rotate(90deg) translate(70%, 20%);
+ transform-origin: right center;
+ }
+ }
+
+ &__scroll {
+ display: none;
+
+ @media #{$screen-md} {
+ position: absolute;
+ top: 100px;
+ right: -18px;
+ display: block;
+ text-align: center;
+
+ &__text {
+ margin-bottom: 30px;
+ font-size: 12px;
+ font-weight: 600;
+ text-transform: uppercase;
+ transform: rotate(-90deg);
+ }
+ }
+ }
+
+ &__quote {
+ margin-bottom: 20px;
+
+ &__text {
+ margin: 0;
+ }
+
+ &__author {
+ font-size: 12px;
+ font-weight: 600;
+ text-transform: uppercase;
+ }
+
+ @media #{$screen-md} {
+ max-width: 40%;
+ font-size: 24px;
+ font-weight: 300;
+
+ &__author {
+ margin-top: 30px;
+ }
+ }
+ }
+
+ &__profiles {
+ @media #{$screen-xs} {
+ display: flex;
+ flex-flow: row wrap;
+ justify-content: space-between;
+ }
+ }
+
+ &__profile {
+ margin: 10px 0 25px;
+ text-align: center;
+
+ @for $i from 1 through length($profile-colors) {
+ &:nth-of-type(#{$i}) {
+ color: nth($profile-colors, $i);
+ }
+ }
+
+ @media #{$screen-xs} {
+ width: calc(50% - 10px);
+ }
+
+ @media #{$screen-md} {
+ max-width: 250px;
+ margin: 40px 0;
+ text-align: left;
+
+ &:nth-of-type(1) {
+ transform: translate(30%, 0);
+ }
+
+ &:nth-of-type(2) {
+ transform: translate(20%, -55%);
+ }
+
+ &:nth-of-type(3) {
+ transform: translate(0, 10%);
+ }
+
+ &:nth-of-type(4) {
+ transform: translate(10%, 10%);
+ }
+
+ &:nth-of-type(5) {
+ transform: translate(5%, -40%);
+ }
+
+ &:nth-of-type(6) {
+ transform: translate(-10%, 5%);
+ }
+
+ &:nth-of-type(7) {
+ transform: translate(80%, 0%);
+ }
+
+ &:nth-of-type(8) {
+ transform: translate(-30%, 10%);
+ }
+ }
+
+ @media #{$screen-lg} {
+ margin: 55px 0;
+
+ &:nth-of-type(1) {
+ transform: translate(35%, 0);
+ }
+
+ &:nth-of-type(2) {
+ transform: translate(30%, -40%);
+ }
+
+ &:nth-of-type(3) {
+ transform: translate(10%, 20%);
+ }
+
+ &:nth-of-type(4) {
+ transform: translate(10%, 60%);
+ }
+
+ &:nth-of-type(5) {
+ z-index: 1;
+ transform: translate(5%, -20%);
+ }
+
+ &:nth-of-type(6) {
+ transform: translate(-5%, 30%);
+ }
+
+ &:nth-of-type(7) {
+ transform: translate(95%, 0%);
+ }
+
+ &:nth-of-type(8) {
+ transform: translate(40%, 10%);
+ }
+ }
+ }
+
+ @media #{$screen-md} {
+ padding: 50px 0;
+ }
+
+ @media #{$screen-lg} {
+ padding: 60px 0 40px;
+ }
}
diff --git a/src/styles/main.scss b/src/styles/main.scss
index 30e725a..b382b2b 100644
--- a/src/styles/main.scss
+++ b/src/styles/main.scss
@@ -28,3 +28,4 @@
@import './components/button';
@import './components/heading';
@import './components/next-section-link';
+@import './components/profile';