resume_exporter 0.0.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -5,285 +5,218 @@ end
5
5
 
6
6
 
7
7
  json.basics do
8
- json.name @data.dig(:basics, :name)
9
- json.label @data.dig(:basics, :label)
10
- json.image @data.dig(:basics, :image)
11
- json.summary @data.dig(:basics, :summary)
8
+ json.name @data.dig("basics", "name")
9
+ json.label @data.dig("basics", "label")
10
+ json.image @data.dig("basics", "image")
11
+ json.summary @data.dig("basics", "summary")
12
+ json.disposition @data.dig("basics", "disposition")
12
13
  json.contact do
13
- json.email @data.dig(:basics, :contact, :email)
14
- json.phone @data.dig(:basics, :contact, :phone)
15
- json.website @data.dig(:basics, :contact, :website)
16
- json.location @data.dig(:basics, :contact, :location)
17
- json.social @data.dig(:basics, :contact, :social) do |social|
18
- json.network social[:network]
19
- json.user social[:user]
20
- json.url social[:url]
14
+ json.email @data.dig("basics", "contact", "email")
15
+ json.phone @data.dig("basics", "contact", "phone")
16
+ json.website @data.dig("basics", "contact", "website")
17
+ json.location @data.dig("basics", "contact", "location")
18
+ json.social @data.dig("basics", "contact", "social") do |social|
19
+ json.network social["network"]
20
+ json.user social["user"]
21
+ json.url social["url"]
21
22
  end
22
23
  end
23
24
  end
24
25
 
25
- json.employment do
26
- json.summary @data.dig(:employment, :summary)
27
- json.history @data.dig(:employment, :history) do |job|
28
- json.employer job[:employer]
29
- json.position job[:position]
30
- json.url job[:url]
31
- json.startDate job[:startDate]
32
- json.endDate job[:endDate]
33
- json.summary job[:summary]
34
- json.location job[:location]
35
- json.highlights job[:highlights]
36
- json.keywords job[:keywords]
37
- end
38
- end
39
-
40
- json.education do
41
- json.summary @data.dig(:education, :summary)
42
- json.history @data.dig(:education, :history) do |entry|
43
- json.institution entry[:institution]
44
- json.fieldOfStudy entry[:fieldOfStudy]
45
- json.degree entry[:degree]
46
- json.startDate entry[:startDate]
47
- json.endDate entry[:endDate]
48
- json.grade entry[:grade]
49
- json.url entry[:url]
50
- json.summary entry[:summary]
51
- json.location entry[:location]
52
- json.curriculum entry[:curriculum]
53
- json.highlights entry[:highlights]
54
- json.keywords entry[:keywords]
55
- end
56
- end
57
-
58
- json.projects do
59
- json.summary @data.dig(:projects, :summary)
60
- json.history @data.dig(:projects, :history) do |project|
61
- json.title project[:title]
62
- json.description project[:description]
63
- json.url project[:url]
64
- json.repo project[:repo]
65
- json.startDate project[:startDate]
66
- json.endDate project[:endDate]
67
- json.category project[:category]
68
- json.images project[:images] do |image|
69
- json.thumbnail image[:thumbnail]
70
- json.big image[:big]
26
+ json.employment @data.dig("employment") do |job|
27
+ json.employer job["employer"]
28
+ json.position job["position"]
29
+ json.url job["url"]
30
+ json.startDate job["startDate"]
31
+ json.endDate job["endDate"]
32
+ json.summary job["summary"]
33
+ json.location job["location"]
34
+ json.keywords job["keywords"]
35
+ end
36
+ end
37
+
38
+ json.education @data.dig("education") do |entry|
39
+ json.institution entry["institution"]
40
+ json.fieldOfStudy entry["fieldOfStudy"]
41
+ json.degree entry["degree"]
42
+ json.startDate entry["startDate"]
43
+ json.endDate entry["endDate"]
44
+ json.grade entry["grade"]
45
+ json.url entry["url"]
46
+ json.summary entry["summary"]
47
+ json.location entry["location"]
48
+ json.keywords entry["keywords"]
49
+ end
50
+ end
51
+
52
+ json.projects @data.dig("projects") do |project|
53
+ json.title project["title"]
54
+ json.summary project["summary"]
55
+ json.url project["url"]
56
+ json.repo project["repo"]
57
+ json.startDate project["startDate"]
58
+ json.endDate project["endDate"]
59
+ json.category project["category"]
60
+ json.images project["images"] do |image|
61
+ json.thumbnail image["thumbnail"]
62
+ json.big image["big"]
71
63
  end
72
- json.roles project[:roles]
73
- json.highlights project[:highlights]
74
- json.keywords project[:keywords]
75
- end
76
- end
77
-
78
- json.openSource do
79
- json.summary @data.dig(:openSource, :summary)
80
- json.history @data.dig(:openSource, :history) do |project|
81
- json.title project[:title]
82
- json.description project[:description]
83
- json.role project[:role]
84
- json.url project[:url]
85
- json.repo project[:repo]
86
- json.startDate project[:startDate]
87
- json.endDate project[:endDate]
88
- json.category project[:category]
89
- json.roles project[:roles]
90
- json.highlights project[:highlights]
91
- json.keywords project[:keywords]
64
+ json.keywords project["keywords"]
92
65
  end
93
66
  end
94
67
 
95
- json.skills do
96
- json.summary @data.dig(:skills, :summary)
97
- json.sets @data.dig(:skills, :sets) do |skill|
98
- json.name skill[:name]
99
- json.description skill[:description]
100
- json.keywords skill[:keywords]
68
+ json.openSource @data.dig("openSource") do |project|
69
+ json.title project["title"]
70
+ json.summary project["summary"]
71
+ json.role project["role"]
72
+ json.url project["url"]
73
+ json.repo project["repo"]
74
+ json.startDate project["startDate"]
75
+ json.endDate project["endDate"]
76
+ json.category project["category"]
77
+ json.keywords project["keywords"]
101
78
  end
102
79
  end
103
80
 
104
- json.qualifications do
105
- json.summary @data.dig(:qualifications, :summary)
106
- json.history @data.dig(:qualifications, :history) do |qualification|
107
- json.category qualification[:category]
108
- json.title qualification[:title]
109
- json.startDate qualification[:startDate]
110
- json.endDate qualification[:endDate]
111
- json.from qualification[:from]
112
- json.summary qualification[:summary]
113
- json.url qualification[:url]
114
- json.highlights qualification[:highlights]
115
- json.keywords qualification[:keywords]
81
+ json.skills @data.dig("skills") do |skill|
82
+ json.name skill["name"]
83
+ json.summary skill["summary"]
84
+ json.keywords skill["keywords"]
116
85
  end
117
86
  end
118
87
 
119
- json.recognition do
120
- json.summary @data.dig(:recognition, :summary)
121
- json.history @data.dig(:recognition, :history) do |entry|
122
- json.category entry[:category]
123
- json.title entry[:title]
124
- json.startDate entry[:startDate]
125
- json.endDate entry[:endDate]
126
- json.from entry[:from]
127
- json.summary entry[:summary]
128
- json.url entry[:url]
129
- json.highlights entry[:highlights]
130
- json.keywords entry[:keywords]
88
+ json.qualifications @data.dig("qualifications") do |qualification|
89
+ json.category qualification["category"]
90
+ json.title qualification["title"]
91
+ json.startDate qualification["startDate"]
92
+ json.endDate qualification["endDate"]
93
+ json.from qualification["from"]
94
+ json.summary qualification["summary"]
95
+ json.url qualification["url"]
96
+ json.keywords qualification["keywords"]
131
97
  end
132
98
  end
133
99
 
134
- json.writing do
135
- json.summary @data.dig(:writing, :summary)
136
- json.history @data.dig(:writing, :history) do |entry|
137
- json.title entry[:title]
138
- json.category entry[:category]
139
- json.publisher entry[:publisher]
140
- json.date entry[:date]
141
- json.url entry[:url]
142
- json.summary entry[:summary]
143
- json.highlights entry[:highlights]
144
- json.keywords entry[:keywords]
100
+ json.recognition @data.dig("recognition") do |entry|
101
+ json.category entry["category"]
102
+ json.title entry["title"]
103
+ json.startDate entry["startDate"]
104
+ json.endDate entry["endDate"]
105
+ json.from entry["from"]
106
+ json.summary entry["summary"]
107
+ json.url entry["url"]
108
+ json.keywords entry["keywords"]
145
109
  end
146
110
  end
147
111
 
148
- json.reading do
149
- json.summary @data.dig(:reading, :summary)
150
- json.history @data.dig(:reading, :history) do |entry|
151
- json.title entry[:title]
152
- json.category entry[:category]
153
- json.url entry[:url]
154
- json.author entry[:author]
155
- json.date entry[:date]
156
- json.summary entry[:summary]
157
- json.highlights entry[:highlights]
158
- json.keywords entry[:keywords]
112
+ json.writing @data.dig("writing") do |entry|
113
+ json.title entry["title"]
114
+ json.category entry["category"]
115
+ json.publisher entry["publisher"]
116
+ json.date entry["date"]
117
+ json.url entry["url"]
118
+ json.summary entry["summary"]
119
+ json.keywords entry["keywords"]
159
120
  end
160
121
  end
161
122
 
162
- json.speaking do
163
- json.summary @data.dig(:speaking, :summary)
164
- json.history @data.dig(:speaking, :history) do |entry|
165
- json.title entry[:title]
166
- json.event entry[:event]
167
- json.location entry[:location]
168
- json.url entry[:url]
169
- json.date entry[:date]
170
- json.summary entry[:summary]
171
- json.highlights entry[:highlights]
172
- json.keywords entry[:keywords]
123
+ json.reading @data.dig("reading") do |entry|
124
+ json.title entry["title"]
125
+ json.category entry["category"]
126
+ json.url entry["url"]
127
+ json.author entry["author"]
128
+ json.date entry["date"]
129
+ json.summary entry["summary"]
130
+ json.keywords entry["keywords"]
173
131
  end
174
132
  end
175
133
 
176
- json.patents do
177
- json.summary @data.dig(:patents, :summary)
178
- json.history @data.dig(:patents, :history) do |patent|
179
- json.title patent[:title]
180
- json.url patent[:url]
181
- json.number patent[:number]
182
- json.status patent[:status]
183
- json.description patent[:description]
184
- json.date patent[:date]
185
- json.highlights patent[:highlights]
186
- json.keywords patent[:keywords]
134
+ json.speaking @data.dig("speaking") do |entry|
135
+ json.title entry["title"]
136
+ json.event entry["event"]
137
+ json.location entry["location"]
138
+ json.url entry["url"]
139
+ json.date entry["date"]
140
+ json.summary entry["summary"]
141
+ json.keywords entry["keywords"]
187
142
  end
188
143
  end
189
144
 
190
- json.languages do
191
- json.summary @data.dig(:languages, :summary)
192
- json.list @data.dig(:languages, :list) do |language|
193
- json.language language[:language]
194
- json.level language[:level]
195
- json.years language[:years]
145
+ json.patents @data.dig("patents") do |patent|
146
+ json.title patent["title"]
147
+ json.url patent["url"]
148
+ json.number patent["number"]
149
+ json.status patent["status"]
150
+ json.summary patent["summary"]
151
+ json.date patent["date"]
152
+ json.keywords patent["keywords"]
196
153
  end
197
154
  end
198
155
 
199
- json.interests do
200
- json.summary @data.dig(:interests, :summary)
201
- json.list @data.dig(:interests, :list) do |interest|
202
- json.name interest[:name]
203
- json.description interest[:description]
156
+ json.languages @data.dig("languages") do |language|
157
+ json.language language["language"]
158
+ json.level language["level"]
159
+ json.years language["years"]
204
160
  end
205
161
  end
206
162
 
207
- json.extracurriculars do
208
- json.summary @data.dig(:extracurriculars, :summary)
209
- json.history @data.dig(:extracurriculars, :history) do |entry|
210
- json.title entry[:title]
211
- json.summary entry[:summary]
212
- json.category entry[:category]
213
- json.url entry[:url]
214
- json.location entry[:location]
215
- json.startDate entry[:startDate]
216
- json.endDate entry[:endDate]
217
- json.highlights entry[:highlights]
218
- json.keywords entry[:keywords]
163
+ json.interests @data.dig("interests") do |interest|
164
+ json.name interest["name"]
165
+ json.summary interest["summary"]
219
166
  end
220
167
  end
221
168
 
222
- json.affiliations do
223
- json.summary @data.dig(:affiliations, :summary)
224
- json.history @data.dig(:affiliations, :history) do |entry|
225
- json.category entry[:category]
226
- json.organization entry[:organization]
227
- json.roles entry[:roles]
228
- json.url entry[:url]
229
- json.startDate entry[:startDate]
230
- json.endDate entry[:endDate]
231
- json.summary entry[:summary]
232
- json.location entry[:location]
233
- json.highlights entry[:highlights]
234
- json.keywords entry[:keywords]
169
+ json.extracurriculars @data.dig("extracurriculars") do |entry|
170
+ json.title entry["title"]
171
+ json.summary entry["summary"]
172
+ json.category entry["category"]
173
+ json.url entry["url"]
174
+ json.location entry["location"]
175
+ json.startDate entry["startDate"]
176
+ json.endDate entry["endDate"]
177
+ json.keywords entry["keywords"]
235
178
  end
236
179
  end
237
180
 
238
- json.governance do
239
- json.summary @data.dig(:governance, :summary)
240
- json.history @data.dig(:governance, :history) do |entry|
241
- json.summary entry[:summary]
242
- json.category entry[:category]
243
- json.url entry[:url]
244
- json.roles entry[:roles]
245
- json.organization entry[:organization]
246
- json.startDate entry[:startDate]
247
- json.endDate entry[:endDate]
248
- json.keywords entry[:keywords]
249
- json.highlights entry[:highlights]
181
+ json.affiliations @data.dig("affiliations") do |entry|
182
+ json.category entry["category"]
183
+ json.organization entry["organization"]
184
+ json.url entry["url"]
185
+ json.startDate entry["startDate"]
186
+ json.endDate entry["endDate"]
187
+ json.summary entry["summary"]
188
+ json.location entry["location"]
189
+ json.keywords entry["keywords"]
250
190
  end
251
191
  end
252
192
 
253
- json.service do
254
- json.summary @data.dig(:service, :summary)
255
- json.history @data.dig(:service, :history) do |entry|
256
- json.category entry[:category]
257
- json.organization entry[:organization]
258
- json.roles entry[:roles]
259
- json.url entry[:url]
260
- json.startDate entry[:startDate]
261
- json.endDate entry[:endDate]
262
- json.summary entry[:summary]
263
- json.location entry[:location]
264
- json.highlights entry[:highlights]
265
- json.keywords entry[:keywords]
193
+ json.governance @data.dig("governance") do |entry|
194
+ json.summary entry["summary"]
195
+ json.category entry["category"]
196
+ json.url entry["url"]
197
+ json.organization entry["organization"]
198
+ json.startDate entry["startDate"]
199
+ json.endDate entry["endDate"]
200
+ json.keywords entry["keywords"]
266
201
  end
267
202
  end
268
203
 
269
- json.references do
270
- json.summary @data.dig(:references, :summary)
271
- json.history @data.dig(:references, :history) do |reference|
272
- json.name reference[:name]
273
- json.role reference[:role]
274
- json.company reference[:company]
275
- json.summary reference[:summary]
204
+ json.service @data.dig("service") do |entry|
205
+ json.category entry["category"]
206
+ json.organization entry["organization"]
207
+ json.url entry["url"]
208
+ json.startDate entry["startDate"]
209
+ json.endDate entry["endDate"]
210
+ json.summary entry["summary"]
211
+ json.location entry["location"]
212
+ json.keywords entry["keywords"]
276
213
  end
277
214
  end
278
215
 
279
- json.disposition do
280
- json.summary @data.dig(:disposition, :summary)
281
- json.travel @data.dig(:disposition, :travel)
282
- json.authorization @data.dig(:disposition, :authorization)
283
- json.commitment @data.dig(:disposition, :commitment)
284
- json.remote @data.dig(:disposition, :remote)
285
- json.relocation do
286
- json.willing @data.dig(:disposition, :relocation, :willing)
287
- json.destinations @data.dig(:disposition, :relocation, :destinations)
216
+ json.references @data.dig("references") do |reference|
217
+ json.name reference["name"]
218
+ json.role reference["role"]
219
+ json.company reference["company"]
220
+ json.summary reference["summary"]
288
221
  end
289
222
  end