ADD index page

This commit is contained in:
salamimitpizza 2017-01-31 23:37:00 +01:00
parent 67874822e2
commit 42c459ee06
10 changed files with 164 additions and 85 deletions

View File

@ -2,7 +2,7 @@
Build your best resume ever!
A collection of beautiful Resumes build with LESS, Mustache Templates and JavaScript. Choose your favorite Curriculum Vitae and easily export it as pdf.
A collection of beautiful resumes build with LESS and Mustache Templates. Choose your favorite Curriculum Vitae and easily export it as pdf.
## Install

1
createPDF.sh Normal file
View File

@ -0,0 +1 @@
electroshot localhost:3000/resume-1 2481x3508 --format pdf --out pdf

View File

@ -1,13 +1,11 @@
@import "resume-1.less";
@brown: #774F38;
@red: #E08E79;
@blue: #C5E0DC;
@powder: #ECE5CE;
@creme: #F1D4AF;
@white: #ffffff;
@header: #4B5B6E;
@background: #CCCCCC;
@darkgrey: #343444;
@briefcase: #F1F2DF;
body {
background: rgb(204, 204, 204);
background: @background;
font-family: 'Open Sans', sans-serif;
margin: 0;
padding: 0;
@ -23,6 +21,51 @@ body {
page-break-after: auto;
overflow: hidden;
}
.index-page {
p {}
header {
background: @header;
color: white;
padding-top: 100px;
padding-bottom: 100px;
h1 {
.fa {
color: @briefcase;
margin-bottom: 10px;
font-size: 70px;
}
width: 100%;
text-align: center;
}
}
main {
padding-left: 5%;
padding-right: 5%;
p {
font-size: 20px;
}
.resume-collection {
a.resume {
img {
height: 300px;
width: auto;
box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
transition: all 0.3s cubic-bezier(.25,.8,.25,1);
&:hover {
box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
}
}
}
}
}
}
}
@media print {
body,

View File

@ -1,12 +1,13 @@
{
"name": "beautifulcv",
"name": "best-resume-ever",
"version": "1.0.0",
"description": "",
"main": "index.js",
"main": "server.js",
"scripts": {
"start": "npm run less && node server.js",
"server": "node server.js",
"start": "npm run less && npm run server",
"pdf": "bash createPDF.bash",
"server": "ws --spa index.html",
"pdf:win": "sh createPDF.sh",
"less": "lessc --clean-css less/style.less public/style.min.css"
},
"repository": {

Binary file not shown.

BIN
public/preview/resume-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@ -1 +1 @@
#resume1 body{font-family:'Source Sans Pro',sans-serif}#resume1 h3{padding-top:20px;margin-bottom:0}#resume1 a,#resume1 a:focus,#resume1 a:hover,#resume1 a:visited{color:#616161}#resume1 span{display:inline-block}#resume1 .row{width:100%}#resume1 .half{width:44%}#resume1 .left{float:left;text-align:right;padding-left:4%;padding-right:2%}#resume1 .right{float:right;text-align:left;padding-right:4%;padding-left:2%}#resume1 .center{margin-left:auto;margin-right:auto}#resume1 .text-center{text-align:center}#resume1 .name{border:1px solid #000;text-transform:uppercase;padding:10px 20px;margin-top:80px;margin-bottom:5px;font-family:'Open Sans',sans-serif;font-size:25px;font-weight:700;letter-spacing:5px}#resume1 .position{text-transform:uppercase;font-family:'Open Sans',sans-serif;font-size:smaller;color:#757575;margin-bottom:40px}#resume1 .image{width:100px;height:100px;margin-top:50px;margin-bottom:50px}#resume1 .image img{width:100%;height:100%;border-radius:50%}#resume1 .contact,#resume1 .experience,#resume1 .experience-block{width:100%}#resume1 .experience-block span{width:100%}#resume1 .education-block span.degree,#resume1 .experience-block span.company{font-weight:700;padding-bottom:10px;padding-top:20px;color:#424242}#resume1 .education-block span.degree-description,#resume1 .experience-block span.job-description,#resume1 .experience-block span.time-period,#resume1 .skills-other{color:#616161}#resume1 .experience-block span.job-title{font-style:italic;color:#616161}#resume1 .skill-block{display:flex;padding-bottom:10px}#resume1 .skill-block .skill{width:100px;color:#616161}#resume1 .skill-block .skill-bar{background:#E0E0E0;overflow:hidden;height:8px;flex:1;border-radius:3px;margin-top:6.5px;position:relative}#resume1 .skill-bar .level{background:#757575;height:100%}#resume1 .skills{margin-top:20px;margin-bottom:20px}#resume1 .contact table{text-align:right;float:right;margin-top:20px}#resume1 .contact table i{padding:5px;color:#616161}#resume1 .contact table tr td:nth-child(2){vertical-align:top}#resume1 .contact table{color:#616161}body{background:#ccc;font-family:'Open Sans',sans-serif;margin:0;padding:0;-webkit-print-color-adjust:exact;box-sizing:border-box}body page{background:#fff;position:relative;width:21cm;height:297mm;display:block;page-break-after:auto;overflow:hidden}@media print{body,page{margin:0;box-shadow:0;width:100%;height:100%}}
#resume1 body{font-family:'Source Sans Pro',sans-serif}#resume1 h3{padding-top:20px;margin-bottom:0}#resume1 a,#resume1 a:focus,#resume1 a:hover,#resume1 a:visited{color:#616161}#resume1 span{display:inline-block}#resume1 .row{width:100%}#resume1 .half{width:44%}#resume1 .left{float:left;text-align:right;padding-left:4%;padding-right:2%}#resume1 .right{float:right;text-align:left;padding-right:4%;padding-left:2%}#resume1 .center{margin-left:auto;margin-right:auto}#resume1 .text-center{text-align:center}#resume1 .name{border:1px solid #000;text-transform:uppercase;padding:10px 20px;margin-top:80px;margin-bottom:5px;font-family:'Open Sans',sans-serif;font-size:25px;font-weight:700;letter-spacing:5px}#resume1 .position{text-transform:uppercase;font-family:'Open Sans',sans-serif;font-size:smaller;color:#757575;margin-bottom:40px}#resume1 .image{width:100px;height:100px;margin-top:50px;margin-bottom:50px}#resume1 .image img{width:100%;height:100%;border-radius:50%}#resume1 .contact,#resume1 .experience,#resume1 .experience-block{width:100%}#resume1 .experience-block span{width:100%}#resume1 .education-block span.degree,#resume1 .experience-block span.company{font-weight:700;padding-bottom:10px;padding-top:20px;color:#424242}#resume1 .education-block span.degree-description,#resume1 .experience-block span.job-description,#resume1 .experience-block span.time-period,#resume1 .skills-other{color:#616161}#resume1 .experience-block span.job-title{font-style:italic;color:#616161}#resume1 .skill-block{display:flex;padding-bottom:10px}#resume1 .skill-block .skill{width:100px;color:#616161}#resume1 .skill-block .skill-bar{background:#E0E0E0;overflow:hidden;height:8px;flex:1;border-radius:3px;margin-top:6.5px;position:relative}#resume1 .skill-bar .level{background:#757575;height:100%}#resume1 .skills{margin-top:20px;margin-bottom:20px}#resume1 .contact table{text-align:right;float:right;margin-top:20px}#resume1 .contact table i{padding:5px;color:#616161}#resume1 .contact table tr td:nth-child(2){vertical-align:top}#resume1 .contact table{color:#616161}body{background:#CCC;font-family:'Open Sans',sans-serif;margin:0;padding:0;-webkit-print-color-adjust:exact;box-sizing:border-box}body page{background:#fff;position:relative;width:21cm;height:297mm;display:block;page-break-after:auto;overflow:hidden}body .index-page header{background:#4B5B6E;color:#fff;padding-top:100px;padding-bottom:100px}body .index-page header h1{width:100%;text-align:center}body .index-page header h1 .fa{color:#F1F2DF;margin-bottom:10px;font-size:70px}body .index-page main{padding-left:5%;padding-right:5%}body .index-page main p{font-size:20px}body .index-page main .resume-collection a.resume img{height:300px;width:auto;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);transition:all .3s cubic-bezier(.25,.8,.25,1)}body .index-page main .resume-collection a.resume img:hover{box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22)}@media print{body,page{margin:0;box-shadow:0;width:100%;height:100%}}

View File

@ -0,0 +1,33 @@
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="/font-awesome/css/font-awesome.min.css" rel="stylesheet">
<link href="/style.min.css" rel="stylesheet">
<title>Best resume ever</title>
</head>
<body>
<div class="index-page">
<header>
<h1>
<i class="fa fa-briefcase"></i>
<br>
best-resume-ever
</h1>
</header>
<main>
<p>Click one of the resumes to preview.</p>
<div class="resume-collection">
<a class="resume" href="/resume-1">
<img src="/preview/resume-1.png" />
</a>
</div>
</main>
</div>
</body>
</html>

View File

@ -10,10 +10,9 @@
</head>
<body>
<page class="a4">
{{> content}}
</page>
{{> content}}
</body>
</html>

View File

@ -1,76 +1,78 @@
<div id="resume1">
<div class="row text-center">
<span class="name">{{person.name}}</span>
</div>
<div class="row text-center">
<p class="position center">{{person.position}}</p>
</div>
<div class="row">
<div class="image center">
<img src="/person.jpg" />
<page class="a4">
<div id="resume1">
<div class="row text-center">
<span class="name">{{person.name}}</span>
</div>
</div>
<div class="left half">
<div class="experience">
<h3>Experience</h3>
{{#person.experience}}
<div class="experience-block">
<span class="company"> {{company}} </span>
<span class="job-title"> {{position}} </span>
<span class="time-period"> {{timeperiod}}</span>
<span class="job-description"> {{description}} </span>
</div>
{{/person.experience}}
<div class="row text-center">
<p class="position center">{{person.position}}</p>
</div>
<div class="contact">
<h3>Contact</h3>
<table>
<tr>
<td><a href="mailto:{{person.contact.email}}">{{person.contact.email}}</a></td>
<td><i class="fa fa-envelope" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="tel:{{person.contact.phone}}">{{person.contact.phone}}</a></td>
<td><i class="fa fa-phone" aria-hidden="true"></i></td>
</tr>
<tr>
<td>{{person.contact.street}} <br> {{person.contact.city}}</td>
<td><i class="fa fa-home" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="{{person.contact.website}}">{{person.contact.website}}</a></td>
<td><i class="fa fa-globe" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="{{person.contact.github}}">{{person.contact.github}}</a></td>
<td><i class="fa fa-github" aria-hidden="true"></i></td>
</tr>
</table>
<div class="row">
<div class="image center">
<img src="/person.jpg" />
</div>
</div>
</div>
<div class="right half">
<div class="education">
<h3>Education</h3>
{{#person.education}}
<div class="education-block">
<span class="degree">{{degree}}</span>
<span class="degree-description">{{description}}</span>
</div>
{{/person.education}}
</div>
<h3>Skills</h3>
<div class="skills">
{{#person.skills}}
<div class="skill-block">
<span class="skill">{{name}}</span>
<div class="skill-bar">
<div style="width: {{level}}%" class="level"> </div>
<div class="left half">
<div class="experience">
<h3>Experience</h3>
{{#person.experience}}
<div class="experience-block">
<span class="company"> {{company}} </span>
<span class="job-title"> {{position}} </span>
<span class="time-period"> {{timeperiod}}</span>
<span class="job-description"> {{description}} </span>
</div>
</div>
{{/person.skills}}
{{/person.experience}}
</div>
<div class="contact">
<h3>Contact</h3>
<table>
<tr>
<td><a href="mailto:{{person.contact.email}}">{{person.contact.email}}</a></td>
<td><i class="fa fa-envelope" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="tel:{{person.contact.phone}}">{{person.contact.phone}}</a></td>
<td><i class="fa fa-phone" aria-hidden="true"></i></td>
</tr>
<tr>
<td>{{person.contact.street}} <br> {{person.contact.city}}</td>
<td><i class="fa fa-home" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="{{person.contact.website}}">{{person.contact.website}}</a></td>
<td><i class="fa fa-globe" aria-hidden="true"></i></td>
</tr>
<tr>
<td><a href="{{person.contact.github}}">{{person.contact.github}}</a></td>
<td><i class="fa fa-github" aria-hidden="true"></i></td>
</tr>
</table>
</div>
</div>
<div class="right half">
<div class="education">
<h3>Education</h3>
{{#person.education}}
<div class="education-block">
<span class="degree">{{degree}}</span>
<span class="degree-description">{{description}}</span>
</div>
{{/person.education}}
</div>
<h3>Skills</h3>
<div class="skills">
{{#person.skills}}
<div class="skill-block">
<span class="skill">{{name}}</span>
<div class="skill-bar">
<div style="width: {{level}}%" class="level"> </div>
</div>
</div>
{{/person.skills}}
</div>
<span class="skills-other"> {{person.skillDescription}} </span>
</div>
<span class="skills-other"> {{person.skillDescription}} </span>
</div>
</div>
</div>
</div>
</page>