jsonresume-theme-engineering 0.1.4 → 0.1.6

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 CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  This is the engineering theme for [JSON Resume](http://jsonresume.org/), which aims to implement the best practices for engineering resumes described in https://www.reddit.com/r/EngineeringResumes/wiki/index/. 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).
4
4
 
5
+ ![Richard Hendriks Resume](./resume.png)
6
+
5
7
  ## Getting started
6
8
 
7
9
  To get started with theme development, this is what you'll need:
@@ -61,9 +63,16 @@ Preview: http://localhost:4000
61
63
  Press ctrl-c to stop
62
64
  ```
63
65
 
64
- Congratulations, you've made it!
66
+ Congratulations, you've made it! You can now edit or replace the `resume.json` with your own data or start to modify this theme (see Development section below).
67
+
68
+ ## Exporting your resume
69
+ To export your resume, you can run the following command below. This will automatically create a `resume.pdf` file within your current directory:
70
+
71
+ ```
72
+ npm run export
73
+ ```
65
74
 
66
- __The theme development can now begin.__
75
+ Alternatively, you can also do a **print page** on the browser and save it as as PDF (by setting margins to none and removing header/footers.)
67
76
 
68
77
  ## Development
69
78
 
@@ -88,7 +97,7 @@ Lastly, you can put all of your theme dependencies in the `dependencies` field.
88
97
 
89
98
  ### index.js
90
99
 
91
- The `index.js` is where all the compiliing of your theme, and neccessary edits will go.
100
+ The `index.js` is where all the compiling of your theme, and necessary edits will go.
92
101
 
93
102
  At the top, you can already see the Node.js `require` function being used with the dependencies. You can obviously add own dependencies, if you are planning on using a different templating system, you can remove it.
94
103
 
@@ -106,7 +115,7 @@ Last but not least, the `style.css` defines your styles. Technically, this is co
106
115
 
107
116
  ## Deployment
108
117
 
109
- If you are familar with NPM, you should be done with this in no time.
118
+ If you are familiar with NPM, you should be done with this in no time.
110
119
 
111
120
  If you already have an NPM account, you can run `npm login` and enter your username and password. If not, you can run `npm adduser` and fill in the proper fields.
112
121
 
package/index.js CHANGED
@@ -47,9 +47,12 @@ handlebars.registerHelper({
47
47
 
48
48
  formatDate: function (date) {
49
49
  return moment(date).format('MMM YYYY');
50
- }
51
- });
50
+ },
52
51
 
52
+ getValueIfDiffFromPrevious: function (array, index, key) {
53
+ return (array[index-1] && (array[index][key] === array[index-1][key])) ? '' : array[index][key];
54
+ },
55
+ });
53
56
 
54
57
  function render(resume) {
55
58
  let dir = __dirname,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jsonresume-theme-engineering",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "JSON Resume theme for engineers",
5
5
  "author": "Sören König",
6
6
  "repository": {
@@ -9,7 +9,8 @@
9
9
  },
10
10
  "license": "MIT",
11
11
  "scripts": {
12
- "start": "resume serve --theme ."
12
+ "start": "resume serve --theme .",
13
+ "export": "resume export --theme . resume.pdf"
13
14
  },
14
15
  "dependencies": {
15
16
  "address-format": "0.0.3",
package/resume.png ADDED
Binary file
package/style.css CHANGED
@@ -1,29 +1,29 @@
1
1
  /* Template level */
2
2
  body {
3
- font: 12px Times, sans-serif;
4
- margin: 24px 48px;
3
+ font-family: Georgia, serif;
4
+ font-size: 11px;
5
+ margin: 24px 48px;
5
6
  }
6
7
 
7
8
  h1 {
8
- font: 26px Georgia, serif;
9
- text-align: center;
10
- margin: 5px;
9
+ font-size: 26px;
10
+ text-align: center;
11
+ margin: 5px;
11
12
  }
12
13
 
13
14
  h2 {
14
- font-variant-caps: all-small-caps;
15
- border-width: 1px;
16
- border-style: none none solid none;
17
- margin: 5px 0 2.5px 0;
15
+ border-width: 1px;
16
+ border-style: none none solid none;
17
+ margin: 10px 0 2.5px 0;
18
18
  }
19
19
 
20
20
  section {
21
- margin: 3px 0;
21
+ margin: 3px 0;
22
22
  }
23
23
 
24
24
  ul {
25
- margin: 0;
26
- padding-left: 40px;
25
+ margin: 0;
26
+ padding-left: 20px;
27
27
  }
28
28
 
29
29
  a {
@@ -32,47 +32,71 @@ a {
32
32
  }
33
33
 
34
34
  .item {
35
- margin-top: 8px;
35
+ margin-top: 8px;
36
36
  }
37
37
 
38
38
  .item>.item-header {
39
- float: left;
40
- display: block;
39
+ float: left;
40
+ display: block;
41
41
  }
42
42
 
43
43
  .item>.item-header>.item-header-title {
44
- font-weight: bold;
44
+ font-weight: bold;
45
45
  }
46
46
 
47
47
  .item>.item-header>.item-header-subtitle {
48
- font-style: italic;
48
+ font-style: italic;
49
49
  }
50
50
 
51
51
  .item>.item-details {
52
- float: right;
53
- text-align: right;
52
+ float: right;
53
+ text-align: right;
54
54
  }
55
55
 
56
56
  .item>.item-details>.item-details-title {
57
- font-weight: bold;
57
+ font-weight: bold;
58
58
  }
59
59
 
60
60
  .clearfix {
61
- clear: both;
61
+ clear: both;
62
62
  }
63
63
 
64
64
  .centered {
65
- text-align: center;
65
+ text-align: center;
66
66
  }
67
67
 
68
68
  /* Section specific */
69
69
  /* basics */
70
70
  .vertical-separator {
71
- text-align: center;
72
- padding: 0 10px;
71
+ text-align: center;
72
+ padding: 0 10px;
73
73
  }
74
74
 
75
75
  .vertical-separator:not(:first-child) {
76
- border-left: 1px solid #000;
77
- text-align: center;
76
+ border-left: 1px solid #000;
77
+ text-align: center;
78
+ }
79
+
80
+ /* Set some print settings. */
81
+ @media print {
82
+ @page {
83
+ size: portrait;
84
+ margin: 10mm 25mm;
85
+ }
86
+ .resume {
87
+ max-width: 100%;
88
+ border: 0px;
89
+ background: #fff;
90
+ box-shadow: none;
91
+ -webkit-box-shadow: none;
92
+ }
93
+ body,
94
+ html,
95
+ .resume {
96
+ margin: 0px;
97
+ padding: 0px;
98
+ }
99
+ .controls {
100
+ display: none;
101
+ }
78
102
  }
package/views/work.hbs CHANGED
@@ -2,15 +2,16 @@
2
2
  <section id="work">
3
3
  <h2>Work Experience</h2>
4
4
  {{#each resume.work}}
5
- {{#> item title=name subtitle=position location=location startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
6
- {{#if highlights.length}}
7
- <ul class="highlights">
8
- {{#each highlights}}
9
- <li>{{.}}</li>
10
- {{/each}}
11
- </ul>
12
- {{/if}}
13
- {{/item}}
5
+ {{#> item title=(getValueIfDiffFromPrevious @root.resume.work @index "company") subtitle=position location=location startDate=startDate endDate=endDate startDate2=startDate2 endDate2=endDate2}}
6
+
7
+ {{#if highlights.length}}
8
+ <ul class="highlights">
9
+ {{#each highlights}}
10
+ <li>{{.}}</li>
11
+ {{/each}}
12
+ </ul>
13
+ {{/if}}
14
+ {{/item}}
14
15
  {{/each}}
15
16
  </section>
16
- {{/if}}
17
+ {{/if}}