jsonresume-theme-engineering 0.6.3 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -1
- package/index.js +9 -4
- package/package.json +1 -1
- package/partials/item-details.hbs +1 -5
- package/partials/item-header.hbs +16 -4
- package/partials/item.hbs +1 -2
- package/style.css +19 -6
- package/views/basics.hbs +2 -2
- package/views/work.hbs +1 -1
- package/.nvmrc +0 -1
- package/.prettierignore +0 -3
package/README.md
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
# jsonresume-theme-engineering [](https://www.npmjs.org/package/jsonresume-theme-engineering)
|
|
2
2
|
|
|
3
|
-
This is the engineering theme for [JSON Resume](http://jsonresume.org/), based
|
|
3
|
+
This is the engineering theme for [JSON Resume](http://jsonresume.org/), based on [jsonresume-theme-business-professional-compact](https://github.com/yechoorv/jsonresume-theme-business-professional-compact); it aims to implement the best practices for engineering resumes described in https://www.reddit.com/r/EngineeringResumes/wiki/index/.
|
|
4
|
+
|
|
5
|
+
It is intended for [senior/staff level engineers](https://www.reddit.com/r/EngineeringResumes/wiki/index/#wiki_senior_engineers_and_above_.2810.2B_yoe.29), meaning engineers who already have a professional track record. Therefore, it is possible to group several positions at a company under a single heading in order to visualize promotions. Similarly, consulting work for several projects can be displayed for a consulting agency.
|
|
6
|
+
|
|
7
|
+
This can be done by multiple work items with the same (company) name like this:
|
|
8
|
+
```
|
|
9
|
+
"work": [
|
|
10
|
+
{
|
|
11
|
+
"name": "Stripe",
|
|
12
|
+
"position": "Staff Software Engineer",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "Stripe",
|
|
16
|
+
"position": "Senior Software Engineer"
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
```
|
|
4
20
|
|
|
5
21
|
<p align="center">
|
|
6
22
|
<kbd>
|
package/index.js
CHANGED
|
@@ -33,10 +33,15 @@ Handlebars.registerHelper({
|
|
|
33
33
|
return moment(date).format('MMM YYYY');
|
|
34
34
|
},
|
|
35
35
|
|
|
36
|
-
getValueIfDiffFromPrevious: function (array, index,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
getValueIfDiffFromPrevious: function (array, index, checkKey, returnKey) {
|
|
37
|
+
const current = array[index];
|
|
38
|
+
const previous = array[index - 1];
|
|
39
|
+
|
|
40
|
+
if (previous && previous[checkKey] === current[checkKey]) {
|
|
41
|
+
return '';
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return current[typeof returnKey === 'string' ? returnKey : checkKey];
|
|
40
45
|
},
|
|
41
46
|
});
|
|
42
47
|
|
package/package.json
CHANGED
package/partials/item-header.hbs
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
<div class="item-header">
|
|
2
|
+
{{#if subtitle}}
|
|
2
3
|
{{#if title}}
|
|
3
4
|
<div class="item-header-title">
|
|
4
|
-
{{title}}
|
|
5
|
+
{{title}}{{#if location}}<span class="item-location">, {{location}}</span>{{/if}}
|
|
5
6
|
</div>
|
|
6
7
|
{{/if}}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
<div class="item-header-subtitle-row">
|
|
9
|
+
<div class="item-header-subtitle">
|
|
10
|
+
{{subtitle}}
|
|
11
|
+
</div>
|
|
12
|
+
{{> item-details startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
|
|
13
|
+
</div>
|
|
14
|
+
{{else}}
|
|
15
|
+
<div class="item-header-title-row">
|
|
16
|
+
{{#if title}}
|
|
17
|
+
<div class="item-header-title">
|
|
18
|
+
{{title}}{{#if location}}<span class="item-location">, {{location}}</span>{{/if}}
|
|
19
|
+
</div>
|
|
20
|
+
{{/if}}
|
|
21
|
+
{{> item-details startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
|
|
10
22
|
</div>
|
|
11
23
|
{{/if}}
|
|
12
24
|
</div>
|
package/partials/item.hbs
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
<div class="item">
|
|
2
|
-
{{> item-header title=title subtitle=subtitle }}
|
|
3
|
-
{{> item-details location=location startDate=startDate endDate=endDate }}
|
|
2
|
+
{{> item-header title=title subtitle=subtitle location=location startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
|
|
4
3
|
<div class="clearfix"></div>
|
|
5
4
|
{{> @partial-block }}
|
|
6
5
|
</div>
|
package/style.css
CHANGED
|
@@ -44,7 +44,6 @@ a {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
.item>.item-header {
|
|
47
|
-
float: left;
|
|
48
47
|
display: block;
|
|
49
48
|
}
|
|
50
49
|
|
|
@@ -52,16 +51,27 @@ a {
|
|
|
52
51
|
font-weight: bold;
|
|
53
52
|
}
|
|
54
53
|
|
|
55
|
-
.item
|
|
54
|
+
.item-location {
|
|
55
|
+
font-weight: normal;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.item-header-subtitle-row,
|
|
59
|
+
.item-header-title-row {
|
|
60
|
+
display: flex;
|
|
61
|
+
justify-content: space-between;
|
|
62
|
+
align-items: baseline;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.item-header-subtitle-row>.item-header-subtitle {
|
|
56
66
|
font-style: italic;
|
|
57
67
|
}
|
|
58
68
|
|
|
59
|
-
.item
|
|
60
|
-
float: right;
|
|
69
|
+
.item-header .item-details {
|
|
61
70
|
text-align: right;
|
|
71
|
+
flex-shrink: 0;
|
|
62
72
|
}
|
|
63
73
|
|
|
64
|
-
.item
|
|
74
|
+
.item-header .item-details>.item-details-title {
|
|
65
75
|
font-weight: bold;
|
|
66
76
|
}
|
|
67
77
|
|
|
@@ -91,6 +101,7 @@ a {
|
|
|
91
101
|
size: portrait;
|
|
92
102
|
margin: 10mm 25mm;
|
|
93
103
|
}
|
|
104
|
+
|
|
94
105
|
#resume {
|
|
95
106
|
max-width: 100%;
|
|
96
107
|
border: 0px;
|
|
@@ -98,13 +109,15 @@ a {
|
|
|
98
109
|
box-shadow: none;
|
|
99
110
|
-webkit-box-shadow: none;
|
|
100
111
|
}
|
|
112
|
+
|
|
101
113
|
body,
|
|
102
114
|
html,
|
|
103
115
|
#resume {
|
|
104
116
|
margin: 0px;
|
|
105
117
|
padding: 0px;
|
|
106
118
|
}
|
|
119
|
+
|
|
107
120
|
.controls {
|
|
108
121
|
display: none;
|
|
109
122
|
}
|
|
110
|
-
}
|
|
123
|
+
}
|
package/views/basics.hbs
CHANGED
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
{{#if location~}}
|
|
12
12
|
<span class="vertical-separator">{{location.city}}, {{location.countryCode}}</span>
|
|
13
13
|
{{~/if}}
|
|
14
|
-
{{#if
|
|
15
|
-
<span class="vertical-separator">{{wrapURL
|
|
14
|
+
{{#if url~}}
|
|
15
|
+
<span class="vertical-separator">{{wrapURL url}}</span>
|
|
16
16
|
{{~/if}}
|
|
17
17
|
</div>
|
|
18
18
|
{{#if summary}}
|
package/views/work.hbs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<section id="work">
|
|
3
3
|
<h2>Work Experience</h2>
|
|
4
4
|
{{#each resume.work}}
|
|
5
|
-
{{#> item title=(getValueIfDiffFromPrevious @root.resume.work @index "
|
|
5
|
+
{{#> item title=(getValueIfDiffFromPrevious @root.resume.work @index "name") subtitle=position location=(getValueIfDiffFromPrevious @root.resume.work @index "name" "location") startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
|
|
6
6
|
|
|
7
7
|
{{#if highlights.length}}
|
|
8
8
|
<ul class="highlights">
|
package/.nvmrc
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
24.14.0
|
package/.prettierignore
DELETED