Skip to content

Commit cf13cd4

Browse files
committed
experience timeline integration phase 1, created initial monolithic component, moved svgs to imports and used external library for scroll animation to easily replace jquery. css is still seperate. next steps are breaking down components further, reducing repeat logic, bring css into the component, likely more
1 parent bd7553b commit cf13cd4

4 files changed

Lines changed: 120 additions & 2 deletions

File tree

.env.development

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
NAV=true
22
DOWN_ARROWS=true
3-
SKILLS=true
3+
SKILLS=true
4+
EXPERIENCE=true

.env.production

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
DOWN_ARROWS=true
2-
SKILLS=true
2+
SKILLS=true
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 suitcaseSvg from '../img/suitcase.svg';
3+
import capSvg from '../img/cap.svg';
4+
import ScrollAnimation from 'react-animate-on-scroll';
5+
6+
export default class componentName extends Component {
7+
render() {
8+
return (
9+
<section id="experience-education" className="section-experience-education bgPrimaryColor">
10+
<h2>Experience &amp; Education</h2>
11+
<ul className="timeline">
12+
<li>
13+
<div className="icon">
14+
<img src={suitcaseSvg} alt />
15+
</div>
16+
17+
<div className="animation-chain overflow-hidden">
18+
<ScrollAnimation animateIn="fadeInLeft" animateOnce={true}>
19+
<h3>UI / UX Designer</h3>
20+
<h4>Amazing Design</h4>
21+
<div className="date">Aug 2007 - Now</div>
22+
</ScrollAnimation>
23+
</div>
24+
25+
<p>
26+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Soluta exercitationem nam
27+
perferendis tempora eius repellat expedita numquam, beatae eaque nihil? Aliquam
28+
architecto voluptatum provident animi, excepturi fugit ut! Impedit, eum!
29+
</p>
30+
</li>
31+
<li>
32+
<div className="icon">
33+
<img src={suitcaseSvg} alt />
34+
</div>
35+
<div className="animation-chain overflow-hidden">
36+
<ScrollAnimation animateIn="fadeInRight" animateOnce={true}>
37+
<h3>Front-End Web Developer</h3>
38+
<h4>AudioJungle</h4>
39+
<div className="date">Aug 2007 - Jan 2010</div>
40+
</ScrollAnimation>
41+
</div>
42+
<p>
43+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Id error atque debitis
44+
tempora soluta, modi voluptatum sunt optio, ut quidem quam dolore. Unde minus quasi
45+
consequuntur consequatur, tempore repudiandae aperiam?
46+
</p>
47+
</li>
48+
<li>
49+
<div className="icon">
50+
<img src={capSvg} alt />
51+
</div>
52+
<div className="animation-chain overflow-hidden">
53+
<ScrollAnimation animateIn="fadeInLeft" animateOnce={true}>
54+
<h3>Professional Diploma in Graphic Design </h3>
55+
<h4>Beautiful College</h4>
56+
<div className="date">Sep 2012 - Aug 2013</div>
57+
</ScrollAnimation>
58+
</div>
59+
</li>
60+
<li>
61+
<div className="icon">
62+
<img src={capSvg} alt />
63+
</div>
64+
<div className="animation-chain overflow-hidden">
65+
<ScrollAnimation animateIn="fadeInRight" animateOnce={true}>
66+
<h3>Master of Engineering in Computer Engineering</h3>
67+
<h4>Fantastic University</h4>
68+
<div className="date">Sep 2010 - Aug 2012</div>
69+
</ScrollAnimation>
70+
</div>
71+
<p>
72+
Thesis: Nulla, Omnis Vitae Illum Molestiae Rem<br />GPA: 4.0
73+
</p>
74+
</li>
75+
<li>
76+
<div className="icon">
77+
<img src={suitcaseSvg} alt />
78+
</div>
79+
<div className="animation-chain overflow-hidden">
80+
<ScrollAnimation animateIn="fadeInLeft" animateOnce={true}>
81+
<h3>Back-End Web Developer</h3>
82+
<h4>PhotoDune</h4>
83+
<div className="date">Aug 2007 - Jan 2010</div>
84+
</ScrollAnimation>
85+
</div>
86+
<p>
87+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Id error atque debitis
88+
tempora soluta, modi voluptatum sunt optio, ut quidem quam dolore. Unde minus quasi
89+
consequuntur consequatur, tempore repudiandae aperiam?
90+
</p>
91+
</li>
92+
<li>
93+
<div className="icon">
94+
<img src={capSvg} alt />
95+
</div>
96+
<div className="animation-chain overflow-hidden">
97+
<ScrollAnimation animateIn="fadeInRight" animateOnce={true}>
98+
<h3>Bachelor of Engineering in Computer Science</h3>
99+
<h4>Incredible University</h4>
100+
<div className="date">Aug 2005 - Aug 2009</div>
101+
</ScrollAnimation>
102+
</div>
103+
<p>
104+
First-class honors<br />GPA: 4.33
105+
</p>
106+
</li>
107+
</ul>
108+
</section>
109+
);
110+
}
111+
}

src/pages/index.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import Link from 'gatsby-link';
33
import Hero from '../components/Hero';
44
import Skills from '../components/Skills';
55
import About from '../components/About';
6+
import ExperienceTimeline from '../components/ExperienceTimeline';
67

78
export default class IndexPage extends React.Component {
89
render() {
@@ -18,6 +19,11 @@ export default class IndexPage extends React.Component {
1819
return <Skills />;
1920
}
2021
})()}
22+
{(() => {
23+
if (process.env.EXPERIENCE) {
24+
return <ExperienceTimeline />;
25+
}
26+
})()}
2127
</div>
2228
);
2329
}

0 commit comments

Comments
 (0)