resume_exporter 0.0.1 → 1.0.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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/bin/resume_exporter +4 -2
  3. data/lib/exporters/html.rb +33 -0
  4. data/lib/exporters/pdf.rb +13 -0
  5. data/lib/extractors/html/linkedin.rb +145 -169
  6. data/lib/extractors/html/stackoverflow.rb +60 -72
  7. data/lib/extractors/html/xing.rb +46 -60
  8. data/lib/extractors/html.rb +1 -1
  9. data/lib/extractors/json/fresh.rb +196 -233
  10. data/lib/extractors/json/json_resume.rb +107 -127
  11. data/lib/extractors/json/prtflio.rb +20 -24
  12. data/lib/extractors/json.rb +7 -6
  13. data/lib/resume_exporter.rb +6 -0
  14. data/lib/templates/default.json.jbuilder +162 -229
  15. data/lib/templates/default.md.erb +99 -244
  16. data/lib/templates/default.txt.erb +99 -224
  17. data/lib/templates/default.xml.builder +162 -227
  18. data/lib/templates/fresh.json.jbuilder +149 -155
  19. data/lib/templates/html/_affiliation.liquid +53 -0
  20. data/lib/templates/html/_basics.liquid +19 -0
  21. data/lib/templates/html/_contact.liquid +27 -0
  22. data/lib/templates/html/_css.liquid +324 -0
  23. data/lib/templates/html/_disposition.liquid +13 -0
  24. data/lib/templates/html/_education.liquid +56 -0
  25. data/lib/templates/html/_employment.liquid +67 -0
  26. data/lib/templates/html/_extracurricular.liquid +53 -0
  27. data/lib/templates/html/_footer.liquid +1 -0
  28. data/lib/templates/html/_governance.liquid +52 -0
  29. data/lib/templates/html/_image.liquid +7 -0
  30. data/lib/templates/html/_interests.liquid +23 -0
  31. data/lib/templates/html/_languages.liquid +22 -0
  32. data/lib/templates/html/_open_source.liquid +53 -0
  33. data/lib/templates/html/_patents.liquid +50 -0
  34. data/lib/templates/html/_projects.liquid +53 -0
  35. data/lib/templates/html/_qualifications.liquid +53 -0
  36. data/lib/templates/html/_reading.liquid +52 -0
  37. data/lib/templates/html/_recognition.liquid +54 -0
  38. data/lib/templates/html/_references.liquid +28 -0
  39. data/lib/templates/html/_resume.liquid +49 -0
  40. data/lib/templates/html/_service.liquid +53 -0
  41. data/lib/templates/html/_skills.liquid +35 -0
  42. data/lib/templates/html/_social.liquid +25 -0
  43. data/lib/templates/html/_speaking.liquid +53 -0
  44. data/lib/templates/html/_writing.liquid +52 -0
  45. data/lib/templates/html/default.liquid +1 -0
  46. data/lib/templates/json_resume.json.jbuilder +72 -72
  47. metadata +119 -20
@@ -1,383 +1,258 @@
1
- <%= @data.dig(:basics, :name) %>
1
+ <%= @data.dig("basics", "name") %>
2
2
 
3
- <%= @data.dig(:basics, :label) %>
3
+ <%= @data.dig("basics", "label") %>
4
4
 
5
- <%= @data.dig(:basics, :summary) %>
5
+ <%= @data.dig("basics", "summary") %>
6
6
 
7
7
 
8
8
  CONTACT
9
- Email: <%= @data.dig(:basics, :contact, :email) %>
10
- Phone: <%= @data.dig(:basics, :contact, :phone) %>
11
- Website: <%= @data.dig(:basics, :contact, :website) %>
12
- Address: <%= @data.dig(:basics, :contact, :location) %>
13
- <% for social in @data.dig(:basics, :contact, :social) %>
14
- <%= social[:network] %>: <%= social[:user] %> (<%= social[:url] %>)
9
+ Email: <%= @data.dig("basics", "contact", "email") %>
10
+ Phone: <%= @data.dig("basics", "contact", "phone") %>
11
+ Website: <%= @data.dig("basics", "contact", "website") %>
12
+ Address: <%= @data.dig("basics", "contact", "location") %>
13
+ <% for social in @data.dig("basics", "contact", "social") %>
14
+ <%= social["network"] %>: <%= social["user"] %> (<%= social["url"] %>)
15
15
  <% end %>
16
16
 
17
17
 
18
- WORK EXPERIENCE
19
- <%= @data.dig(:employment, :summary) %>
18
+ DISPOSITION
20
19
 
21
- <% for job in @data.dig(:employment, :history) %>
22
- <%= job[:employer] %> (<%= job[:url] %>)
20
+ <%= @data.dig("employment", "disposition") %>
23
21
 
24
- <%= job[:position] %> | <%= job[:startDate] %> - <%= job[:endDate] %>
25
- <%= job[:location] %>
26
22
 
27
- <%= job[:summary] %>
23
+ WORK EXPERIENCE
28
24
 
29
- Highlights:
30
- <% for highlight in job[:highlights] %>
31
- - <%= highlight %>
32
- <% end %>
25
+ <% for job in @data.dig("employment") %>
26
+ <%= job["employer"] %> (<%= job["url"] %>)
33
27
 
34
- <%= job[:keywords].join(", ") %>
28
+ <%= job["position"] %> | <%= job["startDate"] %> - <%= job["endDate"] %>
29
+ <%= job["location"] %>
35
30
 
36
- <% end %>
31
+ <%= job["summary"] %>
37
32
 
38
- EDUCATION
39
- <%= @data.dig(:education, :summary) %>
33
+ <%= job["keywords"].join(", ") %>
40
34
 
41
- <% for entry in @data.dig(:education, :history) %>
42
- <%= entry[:institution] %> (<%= entry[:url] %>)
35
+ <% end %>
43
36
 
44
- <%= entry[:fieldOfStudy] %>, <%= entry[:degree] %>, <%= entry[:grade] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
45
- <%= entry[:location] %>
37
+ EDUCATION
46
38
 
47
- <%= entry[:summary] %>
39
+ <% for entry in @data.dig("education") %>
40
+ <%= entry["institution"] %> (<%= entry["url"] %>)
48
41
 
49
- Curriculum:
50
- <% for course in entry[:curriculum] %>
51
- - <%= course %>
52
- <% end %>
42
+ <%= entry["fieldOfStudy"] %>, <%= entry["degree"] %>, <%= entry["grade"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
43
+ <%= entry["location"] %>
53
44
 
54
- Highlights:
55
- <% for highlight in entry[:highlights] %>
56
- - <%= highlight %>
57
- <% end %>
45
+ <%= entry["summary"] %>
58
46
 
59
- <%= entry[:keywords].join(", ") %>
47
+ <%= entry["keywords"].join(", ") %>
60
48
 
61
49
  <% end %>
62
50
 
63
51
 
64
52
  PROJECTS
65
- <%= @data.dig(:projects, :summary) %>
66
-
67
- <% for project in @data.dig(:projects, :history) %>
68
- <%= project[:title] %> (<%= project[:url] %>)
69
-
70
- <%= project[:category] %>, <%= project[:repo] %>, <%= project[:repo] %> | <%= project[:startDate] %> - <%= project[:endDate] %>
71
53
 
72
- <%= project[:description] %>
73
-
74
- Roles:
75
- <% for role in project[:roles] %>
76
- -<%= role %>
77
- <% end %>
54
+ <% for project in @data.dig("projects") %>
55
+ <%= project["title"] %> (<%= project["url"] %>)
78
56
 
57
+ <%= project["category"] %>, <%= project["repo"] %>, <%= project["repo"] %> | <%= project["startDate"] %> - <%= project["endDate"] %>
79
58
 
80
- Highlights:
81
- <% for highlight in project[:highlights] %>
82
- - <%= highlight %>
83
- <% end %>
59
+ <%= project["summary"] %>
84
60
 
85
- <%= project[:keywords].join(", ") %>
61
+ <%= project["keywords"].join(", ") %>
86
62
 
87
63
  <% end %>
88
64
 
89
65
 
90
66
 
91
67
  OPEN SOURCE
92
- <%= @data.dig(:openSource, :summary) %>
93
-
94
- <% for project in @data.dig(:openSource, :history) %>
95
- <%= project[:title] %> (<%= project[:url] %>)
96
-
97
- <%= project[:category] %>, <%= project[:repo] %>, <%= project[:repo] %> | <%= project[:startDate] %> - <%= project[:endDate] %>
98
-
99
- <%= project[:description] %>
100
68
 
101
- Roles:
102
- <% for role in project[:roles] %>
103
- -<%= role %>
104
- <% end %>
69
+ <% for project in @data.dig("openSource") %>
70
+ <%= project["title"] %> (<%= project["url"] %>)
105
71
 
72
+ <%= project["category"] %>, <%= project["repo"] %>, <%= project["repo"] %> | <%= project["startDate"] %> - <%= project["endDate"] %>
106
73
 
107
- Highlights:
108
- <% for highlight in project[:highlights] %>
109
- - <%= highlight %>
110
- <% end %>
74
+ <%= project["summary"] %>
111
75
 
112
- <%= project[:keywords].join(", ") %>
76
+ <%= project["keywords"].join(", ") %>
113
77
 
114
78
  <% end %>
115
79
 
116
80
 
117
81
  SKILLS
118
- <%= @data.dig(:skills, :summary) %>
119
82
 
120
- <% for skill in @data.dig(:skills, :sets) %>
121
- <%= skill[:name] %>
122
- <%= skill[:description] %>
123
- <%= skill[:keywords].join(", ") %>
83
+ <% for skill in @data.dig("skills") %>
84
+ <%= skill["name"] %>
85
+ <%= skill["summary"] %>
86
+ <%= skill["keywords"].join(", ") %>
124
87
 
125
88
  <% end %>
126
89
 
127
90
 
128
91
 
129
92
  QUALIFICATIONS
130
- <%= @data.dig(:qualifications, :summary) %>
131
-
132
- <% for qualification in @data.dig(:qualifications, :history) %>
133
- <%= qualification[:title] %> (<%= qualification[:url] %>)
134
93
 
135
- <%= qualification[:category] %>, <%= qualification[:from] %> | <%= qualification[:startDate] %> - <%= qualification[:endDate] %>
94
+ <% for qualification in @data.dig("qualifications") %>
95
+ <%= qualification["title"] %> (<%= qualification["url"] %>)
136
96
 
137
- <%= qualification[:summary] %>
97
+ <%= qualification["category"] %>, <%= qualification["from"] %> | <%= qualification["startDate"] %> - <%= qualification["endDate"] %>
138
98
 
139
- Highlights:
140
- <% for highlight in qualification[:highlights] %>
141
- - <%= highlight %>
142
- <% end %>
99
+ <%= qualification["summary"] %>
143
100
 
144
- <%= qualification[:keywords].join(", ") %>
101
+ <%= qualification["keywords"].join(", ") %>
145
102
 
146
103
  <% end %>
147
104
 
148
105
 
149
106
  RECOGNITION
150
- <%= @data.dig(:recognition, :summary) %>
151
-
152
- <% for entry in @data.dig(:recognition, :history) %>
153
- <%= entry[:title] %> (<%= entry[:url] %>)
154
107
 
155
- <%= entry[:category] %>, <%= entry[:from] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
108
+ <% for entry in @data.dig("recognition") %>
109
+ <%= entry["title"] %> (<%= entry["url"] %>)
156
110
 
157
- <%= entry[:summary] %>
111
+ <%= entry["category"] %>, <%= entry["from"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
158
112
 
159
- Highlights:
160
- <% for highlight in entry[:highlights] %>
161
- - <%= highlight %>
162
- <% end %>
113
+ <%= entry["summary"] %>
163
114
 
164
- <%= entry[:keywords].join(", ") %>
115
+ <%= entry["keywords"].join(", ") %>
165
116
 
166
117
  <% end %>
167
118
 
168
119
 
169
120
  WRITING
170
- <%= @data.dig(:writing, :summary) %>
171
121
 
172
- <% for entry in @data.dig(:writing, :history) %>
173
- <%= entry[:title] %> (<%= entry[:url] %>)
122
+ <% for entry in @data.dig("writing") %>
123
+ <%= entry["title"] %> (<%= entry["url"] %>)
174
124
 
175
- <%= entry[:category] %>, <%= entry[:publisher] %> | <%= entry[:date] %>
125
+ <%= entry["category"] %>, <%= entry["publisher"] %> | <%= entry["date"] %>
176
126
 
177
- <%= entry[:summary] %>
127
+ <%= entry["summary"] %>
178
128
 
179
- Highlights:
180
- <% for highlight in entry[:highlights] %>
181
- - <%= highlight %>
182
- <% end %>
183
-
184
- <%= entry[:keywords].join(", ") %>
129
+ <%= entry["keywords"].join(", ") %>
185
130
 
186
131
  <% end %>
187
132
 
188
133
 
189
134
  READING
190
- <%= @data.dig(:reading, :summary) %>
191
-
192
- <% for entry in @data.dig(:reading, :history) %>
193
- <%= entry[:title] %> (<%= entry[:url] %>)
194
135
 
195
- <%= entry[:category] %>, <%= entry[:author] %> | <%= entry[:date] %>
136
+ <% for entry in @data.dig("reading") %>
137
+ <%= entry["title"] %> (<%= entry["url"] %>)
196
138
 
197
- <%= entry[:summary] %>
139
+ <%= entry["category"] %>, <%= entry["author"] %> | <%= entry["date"] %>
198
140
 
199
- Highlights:
200
- <% for highlight in entry[:highlights] %>
201
- - <%= highlight %>
202
- <% end %>
141
+ <%= entry["summary"] %>
203
142
 
204
- <%= entry[:keywords].join(", ") %>
143
+ <%= entry["keywords"].join(", ") %>
205
144
 
206
145
  <% end %>
207
146
 
208
147
 
209
148
  SPEAKING
210
- <%= @data.dig(:speaking, :summary) %>
211
-
212
- <% for entry in @data.dig(:speaking, :history) %>
213
- <%= entry[:title] %> (<%= entry[:url] %>)
214
149
 
215
- <%= entry[:event] %>, <%= entry[:location] %> | <%= entry[:date] %>
150
+ <% for entry in @data.dig("speaking") %>
151
+ <%= entry["title"] %> (<%= entry["url"] %>)
216
152
 
217
- <%= entry[:summary] %>
153
+ <%= entry["event"] %>, <%= entry["location"] %> | <%= entry["date"] %>
218
154
 
219
- Highlights:
220
- <% for highlight in entry[:highlights] %>
221
- - <%= highlight %>
222
- <% end %>
155
+ <%= entry["summary"] %>
223
156
 
224
- <%= entry[:keywords].join(", ") %>
157
+ <%= entry["keywords"].join(", ") %>
225
158
 
226
159
  <% end %>
227
160
 
228
161
 
229
162
  PATENTS
230
- <%= @data.dig(:patents, :summary) %>
231
163
 
232
- <% for patent in @data.dig(:patents, :history) %>
233
- <%= patent[:title] %> (<%= patent[:url] %>)
164
+ <% for patent in @data.dig("patents") %>
165
+ <%= patent["title"] %> (<%= patent["url"] %>)
234
166
 
235
- <%= patent[:number] %>, <%= patent[:status] %> | <%= patent[:date] %>
167
+ <%= patent["number"] %>, <%= patent["status"] %> | <%= patent["date"] %>
236
168
 
237
- <%= patent[:description] %>
169
+ <%= patent["summary"] %>
238
170
 
239
- Highlights:
240
- <% for highlight in patent[:highlights] %>
241
- - <%= highlight %>
242
- <% end %>
243
-
244
- <%= patent[:keywords].join(", ") %>
171
+ <%= patent["keywords"].join(", ") %>
245
172
 
246
173
  <% end %>
247
174
 
248
175
 
249
176
  LANGUAGES
250
- <%= @data.dig(:languages, :summary) %>
251
177
 
252
- <% for language in @data.dig(:languages, :list) %>
253
- - <%= language[:language] %>, <%= language[:level] %> (<%= language[:years] %> years)
178
+ <% for language in @data.dig("languages") %>
179
+ - <%= language["language"] %>, <%= language["level"] %> (<%= language["years"] %> years)
254
180
  <% end %>
255
181
 
256
182
 
257
183
  INTEREST
258
- <%= @data.dig(:interests, :summary) %>
259
184
 
260
- <% for interest in @data.dig(:interests, :list) %>
261
- <%= interest[:name] %>
262
- <%= interest[:description] %>
185
+ <% for interest in @data.dig("interests") %>
186
+ <%= interest["name"] %>
187
+ <%= interest["summary"] %>
263
188
 
264
189
  <% end %>
265
190
 
266
191
 
267
192
  EXTRACURRICULAR
268
- <%= @data.dig(:extracurriculars, :summary) %>
269
-
270
- <% for entry in @data.dig(:extracurriculars, :history) %>
271
193
 
272
- <%= entry[:title] %> (<%= entry[:url] %>)
194
+ <% for entry in @data.dig("extracurriculars") %>
273
195
 
274
- <%= entry[:category] %>, <%= entry[:location] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
196
+ <%= entry["title"] %> (<%= entry["url"] %>)
275
197
 
276
- <%= entry[:summary] %>
198
+ <%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
277
199
 
278
- Highlights:
279
- <% for highlight in entry[:highlights] %>
280
- - <%= highlight %>
281
- <% end %>
200
+ <%= entry["summary"] %>
282
201
 
283
- <%= entry[:keywords].join(", ") %>
202
+ <%= entry["keywords"].join(", ") %>
284
203
  <% end %>
285
204
 
286
205
 
287
206
  AFFILIATION
288
- <%= @data.dig(:affiliations, :summary) %>
289
-
290
- <% for entry in @data.dig(:affiliations, :history) %>
291
-
292
- <%= entry[:organization] %> (<%= entry[:url] %>)
293
207
 
294
- <%= entry[:category] %>, <%= entry[:location] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
208
+ <% for entry in @data.dig("affiliations") %>
295
209
 
296
- <%= entry[:summary] %>
210
+ <%= entry["organization"] %> (<%= entry["url"] %>)
297
211
 
298
- Roles:
299
- <% for role in entry[:roles] %>
300
- -<%= role %>
301
- <% end %>
212
+ <%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
302
213
 
303
- Highlights:
304
- <% for highlight in entry[:highlights] %>
305
- - <%= highlight %>
306
- <% end %>
214
+ <%= entry["summary"] %>
307
215
 
308
- <%= entry[:keywords].join(", ") %>
216
+ <%= entry["keywords"].join(", ") %>
309
217
  <% end %>
310
218
 
311
219
 
312
220
  GOVERNANCE
313
- <%= @data.dig(:governance, :summary) %>
314
-
315
- <% for entry in @data.dig(:governance, :history) %>
316
221
 
317
- <%= entry[:organization] %> (<%= entry[:url] %>)
222
+ <% for entry in @data.dig("governance") %>
318
223
 
319
- <%= entry[:summary] %>
224
+ <%= entry["organization"] %> (<%= entry["url"] %>)
320
225
 
321
- <%= entry[:category] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
226
+ <%= entry["summary"] %>
322
227
 
323
- Roles:
324
- <% for role in entry[:roles] %>
325
- -<%= role %>
326
- <% end %>
327
-
328
- Highlights:
329
- <% for highlight in entry[:highlights] %>
330
- - <%= highlight %>
331
- <% end %>
228
+ <%= entry["category"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
332
229
 
333
- <%= entry[:keywords].join(", ") %>
230
+ <%= entry["keywords"].join(", ") %>
334
231
  <% end %>
335
232
 
336
233
 
337
234
  SERVICE
338
- <%= @data.dig(:service, :summary) %>
339
235
 
340
- <% for entry in @data.dig(:service, :history) %>
236
+ <% for entry in @data.dig("service") %>
341
237
 
342
- <%= entry[:organization] %> (<%= entry[:url] %>)
238
+ <%= entry["organization"] %> (<%= entry["url"] %>)
343
239
 
344
- <%= entry[:category] %>, <%= entry[:location] %> | <%= entry[:startDate] %> - <%= entry[:endDate] %>
240
+ <%= entry["category"] %>, <%= entry["location"] %> | <%= entry["startDate"] %> - <%= entry["endDate"] %>
345
241
 
346
- <%= entry[:summary] %>
242
+ <%= entry["summary"] %>
347
243
 
348
- Roles:
349
- <% for role in entry[:roles] %>
350
- -<%= role %>
351
- <% end %>
352
-
353
- Highlights:
354
- <% for highlight in entry[:highlights] %>
355
- - <%= highlight %>
356
- <% end %>
357
-
358
- <%= entry[:keywords].join(", ") %>
244
+ <%= entry["keywords"].join(", ") %>
359
245
  <% end %>
360
246
 
361
247
 
362
248
  REFERENCES
363
- <%= @data.dig(:references, :summary) %>
364
249
 
365
- <% for reference in @data.dig(:references, :history) %>
250
+ <% for reference in @data.dig("references") %>
366
251
 
367
- <%= reference[:name] %>
368
- <%= reference[:role] %>, <%= reference[:company] %>
252
+ <%= reference["name"] %>
253
+ <%= reference["role"] %>, <%= reference["company"] %>
369
254
 
370
- <%= reference[:summary] %>
255
+ <%= reference["summary"] %>
371
256
 
372
257
  <% end %>
373
258
 
374
-
375
- DISPOSITION
376
- <%= @data.dig(:disposition, :summary) %>
377
-
378
- Percentage of time willing to travel: <%= @data.dig(:disposition, :travel) %>
379
- Work authorization: <%= @data.dig(:disposition, :authorization) %>
380
- Types of work commitment desired: <%= @data.dig(:disposition, :commitment).join(", ") %>
381
- Open to remote employment opportunities: <%= @data.dig(:disposition, :remote) %>
382
- Willing to relocate: <%= @data.dig(:disposition, :relocation, :willing) %>
383
- Preferred destinations for relocation: <%= @data.dig(:disposition, :relocation, :destinations).join(", ") %>