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
@@ -5,99 +5,99 @@ json.meta do
5
5
  end
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.email @data.dig(:basics, :contact, :email)
12
- json.phone @data.dig(:basics, :contact, :phone)
13
- json.url @data.dig(:basics, :contact, :website)
14
- json.summary @data.dig(:basics, :summary)
15
- json.location @data.dig(:basics, :location) || @data.dig(:basics, :contact, :location)
16
- json.profiles @data.dig(:basics, :contact, :social) do |social|
17
- json.network social[:network]
18
- json.username social[:user]
19
- json.url social[:url]
8
+ json.name @data.dig("basics", "name")
9
+ json.label @data.dig("basics", "label")
10
+ json.image @data.dig("basics", "image")
11
+ json.email @data.dig("basics", "contact", "email")
12
+ json.phone @data.dig("basics", "contact", "phone")
13
+ json.url @data.dig("basics", "contact", "website")
14
+ json.summary @data.dig("basics", "summary")
15
+ json.location @data.dig("basics", "location") || @data.dig("basics", "contact", "location")
16
+ json.profiles @data.dig("basics", "contact", "social") do |social|
17
+ json.network social["network"]
18
+ json.username social["user"]
19
+ json.url social["url"]
20
20
  end
21
21
  end
22
22
 
23
- json.work @data.dig(:employment, :history) do |job|
24
- json.name job[:employer]
25
- json.description job[:description]
26
- json.position job[:position]
27
- json.url job[:url]
28
- json.startDate job[:startDate]
29
- json.endDate job[:endDate]
30
- json.summary job[:summary]
31
- json.highlights job[:highlights]
23
+ json.work @data.dig("employment") do |job|
24
+ json.name job["employer"]
25
+ json.description job["description"]
26
+ json.position job["position"]
27
+ json.url job["url"]
28
+ json.startDate job["startDate"]
29
+ json.endDate job["endDate"]
30
+ json.summary job["summary"]
31
+ json.highlights job["highlights"]
32
32
  end
33
33
 
34
- json.volunteer @data.dig(:service, :history).select{|s| s[:category].downcase.include?("volunteer") } do |volunteer|
35
- json.organization volunteer[:organization]
36
- json.position volunteer[:position]
37
- json.url volunteer[:url]
38
- json.startDate volunteer[:startDate]
39
- json.endDate volunteer[:endDate]
40
- json.summary volunteer[:summary]
41
- json.highlights volunteer[:highlights]
34
+ json.volunteer @data.dig("service").select{|s| s["category"].downcase.include?("volunteer") } do |volunteer|
35
+ json.organization volunteer["organization"]
36
+ json.position volunteer["position"]
37
+ json.url volunteer["url"]
38
+ json.startDate volunteer["startDate"]
39
+ json.endDate volunteer["endDate"]
40
+ json.summary volunteer["summary"]
41
+ json.highlights volunteer["highlights"]
42
42
  end
43
43
 
44
- json.education @data.dig(:education, :history) do |education|
45
- json.institution education[:institution]
46
- json.area education[:fieldOfStudy]
47
- json.studyType education[:degree]
48
- json.startDate education[:startDate]
49
- json.endDate education[:endDate]
50
- json.gpa education[:grade]
51
- json.courses education[:curriculum]
44
+ json.education @data.dig("education") do |education|
45
+ json.institution education["institution"]
46
+ json.area education["fieldOfStudy"]
47
+ json.studyType education["degree"]
48
+ json.startDate education["startDate"]
49
+ json.endDate education["endDate"]
50
+ json.gpa education["grade"]
51
+ json.courses education["curriculum"]
52
52
  end
53
53
 
54
- json.awards @data.dig(:recognition, :history).select{|a| a[:category].downcase.include?("award") } do |award|
55
- json.title award[:title]
56
- json.date award[:startDate]
57
- json.awarder award[:from]
58
- json.summary award[:summary]
54
+ json.awards @data.dig("recognition").select{|a| a["category"].downcase.include?("award") } do |award|
55
+ json.title award["title"]
56
+ json.date award["startDate"]
57
+ json.awarder award["from"]
58
+ json.summary award["summary"]
59
59
  end
60
60
 
61
- json.publications @data.dig(:writing, :history) do |publication|
62
- json.name publication[:title]
63
- json.publisher publication[:publisher]
64
- json.releaseDate publication[:date]
65
- json.url publication[:url]
66
- json.summary publication[:summary]
61
+ json.publications @data.dig("writing") do |publication|
62
+ json.name publication["title"]
63
+ json.publisher publication["publisher"]
64
+ json.releaseDate publication["date"]
65
+ json.url publication["url"]
66
+ json.summary publication["summary"]
67
67
  end
68
68
 
69
- json.skills @data.dig(:skills, :sets) do |skill|
70
- json.name skill[:name]
71
- json.level skill[:level]
72
- json.keywords skill[:keywords]
69
+ json.skills @data.dig("skills") do |skill|
70
+ json.name skill["name"]
71
+ json.level skill["level"]
72
+ json.keywords skill["keywords"]
73
73
  end
74
74
 
75
- json.languages @data.dig(:languages, :list) do |language|
76
- json.language language[:language]
77
- json.fluency language[:level]
75
+ json.languages @data.dig("languages") do |language|
76
+ json.language language["language"]
77
+ json.fluency language["level"]
78
78
  end
79
79
 
80
- json.interests @data.dig(:interests, :list) do |interest|
81
- json.name interest[:name]
82
- json.keywords interest[:keywords]
80
+ json.interests @data.dig("interests") do |interest|
81
+ json.name interest["name"]
82
+ json.keywords interest["keywords"]
83
83
  end
84
84
 
85
- json.references @data.dig(:references, :history) do |reference|
86
- json.name reference[:name]
87
- json.reference reference[:summary]
85
+ json.references @data.dig("references") do |reference|
86
+ json.name reference["name"]
87
+ json.reference reference["summary"]
88
88
  end
89
89
 
90
- json.projects @data.dig(:projects, :history) do |project|
91
- json.name project[:title]
92
- json.description project[:description]
93
- json.highlights project[:highlights]
94
- json.keywords project[:keywords]
95
- json.startDate project[:startDate]
96
- json.endDate project[:endDate]
97
- json.url project[:url]
98
- json.roles project[:roles]
99
- json.entity project[:entity]
100
- json.type project[:category]
90
+ json.projects @data.dig("projects") do |project|
91
+ json.name project["title"]
92
+ json.description project["summary"]
93
+ json.highlights project["highlights"]
94
+ json.keywords project["keywords"]
95
+ json.startDate project["startDate"]
96
+ json.endDate project["endDate"]
97
+ json.url project["url"]
98
+ json.roles project["roles"]
99
+ json.entity project["entity"]
100
+ json.type project["category"]
101
101
  end
102
102
 
103
103
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resume_exporter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wolfram Müller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-12-06 00:00:00.000000000 Z
11
+ date: 2017-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -56,58 +56,128 @@ dependencies:
56
56
  name: ruby_dig
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 0.0.2
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 0.0.2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: tilt
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: '2.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '2.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: tilt-jbuilder
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.7'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.7'
97
+ - !ruby/object:Gem::Dependency
98
+ name: liquid
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: '0'
103
+ version: '4.0'
90
104
  type: :runtime
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - ">="
108
+ - - "~>"
95
109
  - !ruby/object:Gem::Version
96
- version: '0'
110
+ version: '4.0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: yajl-ruby
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - ">="
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.3'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.3'
125
+ - !ruby/object:Gem::Dependency
126
+ name: safe_yaml
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
102
130
  - !ruby/object:Gem::Version
103
- version: '0'
131
+ version: '1.0'
104
132
  type: :runtime
105
133
  prerelease: false
106
134
  version_requirements: !ruby/object:Gem::Requirement
107
135
  requirements:
108
- - - ">="
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: wkhtmltopdf-binary
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.12'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.12'
153
+ - !ruby/object:Gem::Dependency
154
+ name: pdfkit
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.8'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.8'
167
+ - !ruby/object:Gem::Dependency
168
+ name: caracal
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '1.0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
109
179
  - !ruby/object:Gem::Version
110
- version: '0'
180
+ version: '1.0'
111
181
  - !ruby/object:Gem::Dependency
112
182
  name: rspec
113
183
  requirement: !ruby/object:Gem::Requirement
@@ -151,7 +221,7 @@ dependencies:
151
221
  - !ruby/object:Gem::Version
152
222
  version: '9.0'
153
223
  description: It extracts résumé data from public profile html files and exports to
154
- json, xml
224
+ json, xml, yml, md, txt, html, pdf
155
225
  email: hi@wnm.io
156
226
  executables:
157
227
  - resume_exporter
@@ -159,8 +229,10 @@ extensions: []
159
229
  extra_rdoc_files: []
160
230
  files:
161
231
  - bin/resume_exporter
232
+ - lib/exporters/html.rb
162
233
  - lib/exporters/json.rb
163
234
  - lib/exporters/md.rb
235
+ - lib/exporters/pdf.rb
164
236
  - lib/exporters/txt.rb
165
237
  - lib/exporters/xml.rb
166
238
  - lib/exporters/yaml.rb
@@ -180,8 +252,35 @@ files:
180
252
  - lib/templates/default.txt.erb
181
253
  - lib/templates/default.xml.builder
182
254
  - lib/templates/fresh.json.jbuilder
255
+ - lib/templates/html/_affiliation.liquid
256
+ - lib/templates/html/_basics.liquid
257
+ - lib/templates/html/_contact.liquid
258
+ - lib/templates/html/_css.liquid
259
+ - lib/templates/html/_disposition.liquid
260
+ - lib/templates/html/_education.liquid
261
+ - lib/templates/html/_employment.liquid
262
+ - lib/templates/html/_extracurricular.liquid
263
+ - lib/templates/html/_footer.liquid
264
+ - lib/templates/html/_governance.liquid
265
+ - lib/templates/html/_image.liquid
266
+ - lib/templates/html/_interests.liquid
267
+ - lib/templates/html/_languages.liquid
268
+ - lib/templates/html/_open_source.liquid
269
+ - lib/templates/html/_patents.liquid
270
+ - lib/templates/html/_projects.liquid
271
+ - lib/templates/html/_qualifications.liquid
272
+ - lib/templates/html/_reading.liquid
273
+ - lib/templates/html/_recognition.liquid
274
+ - lib/templates/html/_references.liquid
275
+ - lib/templates/html/_resume.liquid
276
+ - lib/templates/html/_service.liquid
277
+ - lib/templates/html/_skills.liquid
278
+ - lib/templates/html/_social.liquid
279
+ - lib/templates/html/_speaking.liquid
280
+ - lib/templates/html/_writing.liquid
281
+ - lib/templates/html/default.liquid
183
282
  - lib/templates/json_resume.json.jbuilder
184
- homepage: http://rubygems.org/gems/resume_exporter
283
+ homepage: http://programmercv.com/resume-exporter
185
284
  licenses:
186
285
  - MIT
187
286
  metadata: {}