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