first commit

This commit is contained in:
Hope87
2021-05-26 13:35:57 +03:00
parent 21a43fbd61
commit f772d1c0fa
29 changed files with 737 additions and 62 deletions

View File

@ -0,0 +1,25 @@
import React from 'react';
import { NavLink } from 'react-router-dom';
// import PhotoBlock from './PhotoBlock';
// import { candidatesList } from '../Home/Home'
import classes from './Candidate.module.scss';
const Candidate = () => {
// const { id: candidateId } = useParams();
// const currentCandidate = candidatesList.find((el) => el.id === Number(candidateId));
return (
<div className={classes.wrapper}>
<NavLink to="/">Home</NavLink>
{/* <h1>
Candidate name: <span>{currentCandidate.name}</span>
</h1>
<PhotoBlock /> */}
</div>
);
};
export default Candidate;

View File

@ -0,0 +1,4 @@
.wrapper {
font-size: 30px;
color: red;
}

View File

@ -0,0 +1,12 @@
import React from 'react';
const PhotoBlock = () => {
return (
<div>
PhotoBlock
</div>
);
};
export default PhotoBlock;

View File

@ -0,0 +1,3 @@
import Candidate from './Candidate';
export default Candidate;

View File

@ -0,0 +1,17 @@
import React from 'react';
import Outstaffing from './sections/Outstaffing';
import Description from './sections/Description';
const Home = () => {
return (
<div>
{/* <h1>HomePage</h1>
<ul>{renderCandidatesList}</ul> */}
<Outstaffing />
<Description />
</div>
);
};
export default Home;

View File

@ -0,0 +1,3 @@
import Home from './Home';
export default Home;

View File

@ -0,0 +1,74 @@
import React from 'react';
import style from './Description.module.scss';
import photo from '../../../images/medium_male.png';
import rectangle from '../../../images/rectangle_secondPage.png';
import arrowLeft from '../../../images/arrow_left.png';
import arrowRight from '../../../images/arrow_right.png';
import { Link } from 'react-router-dom';
export const candidatesList = [
{ id: 1, name: 'Artyom' },
{ id: 2, name: 'Vitaliy' },
];
const Description = () => {
return (
<section className={style.description}>
<div className="container">
<div className={style.description__wrapper}>
{candidatesList.map((el) => (
<div className="row" key={el.id}>
<div className="col-2">
<img className={style.description__img} src={photo} alt="" />
</div>
<div className="col-6">
<h3 className={style.description__title}>Frontend разработчик, Middle</h3>
<p className={style.description__text}>
- 10 лет пишу приложения под IOS, отлично владею Objective-C и Swift.
</p>
<p className={style.description__text}>- 5 лет руковожу командами мобильной разработки.</p>
<p className={style.description__text}>- 3 года преподаю в IOS-школе Сбера</p>
</div>
<div className="col-4">
<Link to={`/candidate/${el.id}`}>
<button className={style.description__button}>Подробное резюме</button>
</Link>
</div>
<div className="col-12">
<span className={style.description__sp}>
{' '}
JavaScript · Typescript · ReactJS · Vue.js · Redux · MobX · Storybook · Jest · Адаптивная верстка ·
БЭМ
</span>
<img className={style.description__rectangle} src={rectangle} alt="" />
</div>
</div>
))}
</div>
<div className="row">
<div className="col-12">
<div className={style.description__footer}>
<div className={style.description__footer__btn}>
<button>
<a href="#">Загрузить еще</a>
</button>
</div>
<div className={style.description__footer__box}>
<div className={style.arrow__left}>
<img src={arrowLeft} alt="" />
</div>
<span className={style.description__footer__sp}>1/15</span>
<div className={style.arrow__right}>
<img src={arrowRight} alt="" />
</div>
</div>
</div>
</div>
</div>
</div>
</section>
);
};
export default Description;

View File

@ -0,0 +1,129 @@
.description {
margin-top: 120px;
margin-bottom: 120px;
&__wrapper {
border: 2px solid whitesmoke;
padding-top: 60px;
border-bottom: none;
}
&__img {
margin-left: 40px;
margin-top: 16px;
}
&__title {
font-family: "GT Eesti Pro Display";
font-size: 25px;
font-weight: 700;
font-style: normal;
letter-spacing: normal;
line-height: 36px;
text-align: left;
margin-bottom: 10px;
}
&__text {
font-family: "GT Eesti Pro Display";
font-size: 20px;
font-weight: 400;
font-style: normal;
letter-spacing: normal;
line-height: 24px;
text-align: left;
line-height: 36px;
}
&__button {
width: 290px;
height: 62px;
border-radius: 100px;
background-color: #5ab426;
border: none;
color: #ffffff;
font-family: "Muller Extra Bold";
font-size: 18px;
font-weight: 600;
font-style: normal;
letter-spacing: normal;
text-align: center;
margin-top: 74px;
}
&__sp {
display: block;
font-family: "GT Eesti Pro Display";
font-size: 18px;
font-weight: 700;
font-style: normal;
letter-spacing: normal;
line-height: 36px;
text-align: center;
margin-top: 20px;
}
&__rectangle {
display: block;
margin: 60px auto;
}
&__footer {
display: flex;
justify-content: center;
margin-top: 60px;
&__btn {
& button {
width: 220px;
height: 60px;
border-radius: 100px;
border: 1px solid #5ab424;
background-color: white;
margin-right: 60px;
& a {
text-decoration: none;
color: #a0a0a0;
font-family: "GT Eesti Pro Display";
font-size: 18px;
font-weight: 600;
font-style: normal;
letter-spacing: normal;
line-height: normal;
text-align: left;
}
}
}
&__box {
display: flex;
align-items: center;
& span {
color: #705fa3;
font-family: Circe;
font-size: 16px;
font-weight: 400;
font-style: normal;
letter-spacing: normal;
text-align: center;
margin: 0 10px;
}
& .arrow__left {
position: relative;
width: 30px;
height: 30px;
border-radius: 20px;
background-color: #f6f6f6;
& img {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
& .arrow__right {
position: relative;
width: 30px;
height: 30px;
border-radius: 20px;
background-color: #74be4d;
& img {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
}
}
}

View File

@ -0,0 +1,75 @@
import React from 'react';
import style from './Outstaffing.module.scss';
import front from '../../../images/front_end.png';
import back from '../../../images/back_end.png';
import design from '../../../images/design.png';
const Outstaffing = () => {
return (
<section className={style.outstaffing}>
<div className="container">
<div className="row">
<div className="col-12">
<div className={style.outstaffing__title}>
<h2>
<span>Аутстаффинг</span> it-персонала
</h2>
</div>
</div>
</div>
<div className="row">
<div className="col-4">
<div className={style.outstaffing__box}>
<img src={front} alt="" />
<ul className={style.items}>
<li>Ruby on Rails</li>
<li>Nginx</li>
<li>Docker</li>
<li>PostgreSQL</li>
<li>Git</li>
<li>Typescript</li>
<li>ReactJS</li>
</ul>
</div>
</div>
<div className="col-4">
<div className={style.outstaffing__box}>
<img src={back} alt="" />
<ul className={style.items}>
<li>Ruby on Rails</li>
<li>Nginx</li>
<li>Docker</li>
<li>PostgreSQL</li>
<li>Git</li>
<li>Typescript</li>
<li>ReactJS</li>
</ul>
</div>
</div>
<div className="col-4">
<div className={style.outstaffing__box}>
<img src={design} alt="" />
<ul className={style.items}>
<li>Ruby on Rails</li>
<li>Nginx</li>
<li>Docker</li>
<li>PostgreSQL</li>
<li>Git</li>
<li>Typescript</li>
<li>ReactJS</li>
</ul>
</div>
</div>
</div>
</div>
</section>
);
};
export default Outstaffing;

View File

@ -0,0 +1,44 @@
.outstaffing {
&__title {
margin-top: 60px;
& h2 {
text-align: center;
color: #52b709;
font-family: 'GT Eesti Pro Display';
font-size: 53px;
font-weight: 700;
font-style: normal;
letter-spacing: normal;
line-height: 77.81px;
& span {
color: #282828;
font-style: normal;
letter-spacing: 0.56px;
line-height: normal;
}
}
}
&__box {
margin-top: 120px;
display: flex;
flex-direction: column;
align-items: center;
& img {
max-width: 240px;
max-height: 120px;
}
& .items {
margin-top: 60px;
& li {
font-family: 'GT Eesti Pro Display - Thin';
font-size: 18px;
font-weight: 400;
font-style: normal;
letter-spacing: normal;
line-height: 36px;
text-align: left;
list-style: none;
}
}
}
}