simple_cv 0.1.0 → 0.2.1
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 +5 -5
- data/.rspec +1 -0
- data/Gemfile +4 -2
- data/Gemfile.lock +56 -0
- data/Rakefile +15 -3
- data/examples/example.json +42 -24
- data/examples/example.yml +33 -51
- data/lib/simple_cv/basic.rb +8 -21
- data/lib/simple_cv/layout.rb +147 -130
- data/lib/simple_cv/version.rb +1 -1
- data/lib/simple_cv.rb +7 -2
- data/simple_cv.gemspec +11 -18
- metadata +28 -52
- data/.gitignore +0 -15
- data/LICENSE.txt +0 -21
- data/README.md +0 -54
- data/SimleCV.pdf +0 -1506
- data/bin/console +0 -14
- data/bin/setup +0 -8
- data/circle.yml +0 -6
- data/lib/icons/address.svg +0 -42
- data/lib/icons/email.svg +0 -46
- data/lib/icons/phone.svg +0 -50
- data/lib/icons/website.svg +0 -96
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8617afb70ab82deafd776cb77f7d3da27a828894144ab18f97aab865343b60b6
|
4
|
+
data.tar.gz: 1422ccb0ac28d440a24aedab1d893011ef723d0f37dfc79d3a3e4b5dd89cdfb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9daef9d7d75b7ac2ac09f7ccfa8a741df423b677d53581ea1d0d6a320e3e81b2eefe4805b8ddee9d2e8ddea90936dd5a3a5d33804ce646cfca13976fb17db244
|
7
|
+
data.tar.gz: 12b2980ddfe97a60155c99940007b064b7e2a28bb9e3af6f4a2f22644f2229aa55959c6bd1730b527d13b8f27a2f5d3ee648355e110cf23fdf20dca26d4b691b
|
data/.rspec
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
simple_cv (0.1.0)
|
5
|
+
prawn
|
6
|
+
prawn-table
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
coderay (1.1.3)
|
12
|
+
diff-lcs (1.5.0)
|
13
|
+
method_source (1.0.0)
|
14
|
+
pdf-core (0.9.0)
|
15
|
+
prawn (2.4.0)
|
16
|
+
pdf-core (~> 0.9.0)
|
17
|
+
ttfunk (~> 1.7)
|
18
|
+
prawn-table (0.2.2)
|
19
|
+
prawn (>= 1.3.0, < 3.0.0)
|
20
|
+
pry (0.14.1)
|
21
|
+
coderay (~> 1.1)
|
22
|
+
method_source (~> 1.0)
|
23
|
+
pry-nav (1.0.0)
|
24
|
+
pry (>= 0.9.10, < 0.15)
|
25
|
+
rake (13.1.0)
|
26
|
+
rspec (3.11.0)
|
27
|
+
rspec-core (~> 3.11.0)
|
28
|
+
rspec-expectations (~> 3.11.0)
|
29
|
+
rspec-mocks (~> 3.11.0)
|
30
|
+
rspec-core (3.11.0)
|
31
|
+
rspec-support (~> 3.11.0)
|
32
|
+
rspec-expectations (3.11.1)
|
33
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
34
|
+
rspec-support (~> 3.11.0)
|
35
|
+
rspec-mocks (3.11.1)
|
36
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
37
|
+
rspec-support (~> 3.11.0)
|
38
|
+
rspec-support (3.11.1)
|
39
|
+
ttfunk (1.7.0)
|
40
|
+
|
41
|
+
PLATFORMS
|
42
|
+
aarch64-linux-musl
|
43
|
+
|
44
|
+
DEPENDENCIES
|
45
|
+
bundler
|
46
|
+
pry
|
47
|
+
pry-nav
|
48
|
+
rake
|
49
|
+
rspec
|
50
|
+
simple_cv!
|
51
|
+
|
52
|
+
RUBY VERSION
|
53
|
+
ruby 3.2.2p53
|
54
|
+
|
55
|
+
BUNDLED WITH
|
56
|
+
2.3.7
|
data/Rakefile
CHANGED
@@ -1,6 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require "bundler/gem_tasks"
|
2
|
-
require "
|
4
|
+
require "rake"
|
5
|
+
|
6
|
+
desc "Load environment"
|
7
|
+
task :environment do
|
8
|
+
$LOAD_PATH.unshift(".")
|
9
|
+
end
|
3
10
|
|
4
|
-
|
11
|
+
desc "Ruby console with loaded env"
|
12
|
+
task console: :environment do
|
13
|
+
require "irb"
|
14
|
+
require "lib/simple_cv.rb"
|
5
15
|
|
6
|
-
|
16
|
+
ARGV.clear
|
17
|
+
IRB.start
|
18
|
+
end
|
data/examples/example.json
CHANGED
@@ -1,49 +1,59 @@
|
|
1
1
|
{
|
2
|
-
"title": "
|
2
|
+
"title": "SimpleCV",
|
3
3
|
"author": "Suzanne Shaw",
|
4
4
|
"profile": {
|
5
|
-
"name": "Suzanne
|
6
|
-
"job": "Art Director"
|
7
|
-
|
5
|
+
"name": "Suzanne Shaw",
|
6
|
+
"job": "Art Director"
|
7
|
+
},
|
8
|
+
"contact": {
|
9
|
+
"address": "Santa Monica, USA",
|
10
|
+
"phone": "(916)-209-3856",
|
11
|
+
"email": "suzanne.showh@example.com",
|
12
|
+
"web": "https://example.com"
|
13
|
+
},
|
14
|
+
"intro": {
|
15
|
+
"text": "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.",
|
16
|
+
"receiver": {
|
17
|
+
"name": "John Doe",
|
18
|
+
"position": "Managing Director"
|
19
|
+
}
|
8
20
|
},
|
9
|
-
"contact": [
|
10
|
-
["phone", "(916)-209-3856"],
|
11
|
-
["email", "suzanne.showh@example.com"],
|
12
|
-
["website", "https://example.com"],
|
13
|
-
["address", "Santa Monica, USA"]
|
14
|
-
],
|
15
|
-
"skills": [
|
16
|
-
["English", 100],
|
17
|
-
["French", 80],
|
18
|
-
["Japanese", 40],
|
19
|
-
[],
|
20
|
-
["Adobe Photoshop", 90],
|
21
|
-
["Wordpress", 70],
|
22
|
-
["Joomla", 80],
|
23
|
-
["Word", 95],
|
24
|
-
["Excel", 95]
|
25
|
-
],
|
26
21
|
"experience": [
|
27
22
|
{
|
28
23
|
"job": "Art Director",
|
29
24
|
"company": "Creative Lab",
|
30
25
|
"location": "Santa Monica",
|
31
26
|
"date": "2016 - Present",
|
32
|
-
"
|
27
|
+
"description_list": [
|
28
|
+
"Lorem ipsum dolor sit amet, consetetur sadipscing elitr",
|
29
|
+
"Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat",
|
30
|
+
"At vero eos et accusam et justo duo dolores et ea rebum",
|
31
|
+
"Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
32
|
+
]
|
33
33
|
},
|
34
34
|
{
|
35
35
|
"job": "Senior UI & UX Designer",
|
36
36
|
"company": "Creative Media",
|
37
37
|
"location": "Santa Monica",
|
38
38
|
"date": "2015 - 2016",
|
39
|
-
"
|
39
|
+
"description_list": [
|
40
|
+
"Lorem ipsum dolor sit amet, consetetur sadipscing elitr",
|
41
|
+
"Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat",
|
42
|
+
"At vero eos et accusam et justo duo dolores et ea rebum",
|
43
|
+
"Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
44
|
+
]
|
40
45
|
},
|
41
46
|
{
|
42
47
|
"job": "Junior UI & UX Designer",
|
43
48
|
"company": "Creative Media",
|
44
49
|
"location": "Santa Monica",
|
45
50
|
"date": "2012 - 2015",
|
46
|
-
"
|
51
|
+
"description_list": [
|
52
|
+
"Lorem ipsum dolor sit amet, consetetur sadipscing elitr",
|
53
|
+
"Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat",
|
54
|
+
"At vero eos et accusam et justo duo dolores et ea rebum",
|
55
|
+
"Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
56
|
+
]
|
47
57
|
}
|
48
58
|
],
|
49
59
|
"education": [
|
@@ -57,5 +67,13 @@
|
|
57
67
|
"institution": "University of Arts",
|
58
68
|
"date": "2010 - 2013"
|
59
69
|
}
|
70
|
+
],
|
71
|
+
"certification": [
|
72
|
+
{
|
73
|
+
"subject": "AWS Certified Cloud Practitioner",
|
74
|
+
"institution": "Amazon Web Services (AWS)",
|
75
|
+
"date": "Jan 2020",
|
76
|
+
"expiration": "Jan 2020 - Jan 2023"
|
77
|
+
}
|
60
78
|
]
|
61
79
|
}
|
data/examples/example.yml
CHANGED
@@ -1,73 +1,49 @@
|
|
1
|
-
title:
|
1
|
+
title: SimpleCV
|
2
2
|
author: Suzanne Shaw
|
3
3
|
profile:
|
4
|
-
name: "Suzanne
|
4
|
+
name: "Suzanne Shaw"
|
5
5
|
job: Art Director
|
6
|
-
description: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
7
6
|
contact:
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
-
|
18
|
-
- address
|
19
|
-
- Santa Monica, USA
|
20
|
-
|
21
|
-
skills:
|
22
|
-
-
|
23
|
-
- English
|
24
|
-
- 100
|
25
|
-
-
|
26
|
-
- French
|
27
|
-
- 80
|
28
|
-
-
|
29
|
-
- Japanese
|
30
|
-
- 40
|
31
|
-
-
|
32
|
-
-
|
33
|
-
-
|
34
|
-
-
|
35
|
-
- Adobe Photoshop
|
36
|
-
- 90
|
37
|
-
-
|
38
|
-
- Wordpress
|
39
|
-
- 70
|
40
|
-
-
|
41
|
-
- Joomla
|
42
|
-
- 80
|
43
|
-
-
|
44
|
-
- Word
|
45
|
-
- 95
|
46
|
-
-
|
47
|
-
- Excel
|
48
|
-
- 95
|
49
|
-
|
7
|
+
address: Santa Monica, USA
|
8
|
+
phone: (916)-209-3856
|
9
|
+
email: suzanne.showh@example.com
|
10
|
+
web: https://example.com
|
11
|
+
intro:
|
12
|
+
text: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
13
|
+
receiver:
|
14
|
+
name": John Doe
|
15
|
+
position": Managing Director
|
50
16
|
experience:
|
51
17
|
-
|
52
18
|
job: Art Director
|
53
19
|
company: Creative Lab
|
54
20
|
location: Santa Monica
|
55
21
|
date: 2016 - Present
|
56
|
-
|
22
|
+
description_list:
|
23
|
+
- Lorem ipsum dolor sit amet, consetetur sadipscing elitr
|
24
|
+
- Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat
|
25
|
+
- At vero eos et accusam et justo duo dolores et ea rebum
|
26
|
+
- Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
57
27
|
-
|
58
28
|
job: Senior UI & UX Designer
|
59
29
|
company: Creative Media
|
60
30
|
location: Santa Monica
|
61
31
|
date: 2015 - 2016
|
62
|
-
|
63
|
-
|
32
|
+
description_list:
|
33
|
+
- Lorem ipsum dolor sit amet, consetetur sadipscing elitr
|
34
|
+
- Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat
|
35
|
+
- At vero eos et accusam et justo duo dolores et ea rebum
|
36
|
+
- Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
64
37
|
-
|
65
38
|
job: Junior UI & UX Designer
|
66
39
|
company: Creative Media
|
67
40
|
location: Santa Monica
|
68
41
|
date: 2012 - 2015
|
69
|
-
|
70
|
-
|
42
|
+
description_list:
|
43
|
+
- Lorem ipsum dolor sit amet, consetetur sadipscing elitr
|
44
|
+
- Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat
|
45
|
+
- At vero eos et accusam et justo duo dolores et ea rebum
|
46
|
+
- Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
71
47
|
education:
|
72
48
|
-
|
73
49
|
subject: Master in Media
|
@@ -75,5 +51,11 @@ education:
|
|
75
51
|
date: 2013 - 2015
|
76
52
|
-
|
77
53
|
subject: Bachelor of Fine Arts
|
78
|
-
institution
|
54
|
+
institution: University of Arts
|
79
55
|
date: 2010 - 2013
|
56
|
+
certification:
|
57
|
+
-
|
58
|
+
subject: AWS Certified Cloud Practitioner
|
59
|
+
institution: Amazon Web Services (AWS)
|
60
|
+
date: Jan 2020
|
61
|
+
expiration: Jan 2020 - Jan 2023
|
data/lib/simple_cv/basic.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "lib/simple_cv/layout"
|
3
4
|
require "json"
|
4
5
|
require "yaml"
|
5
6
|
|
@@ -7,8 +8,8 @@ module SimpleCV
|
|
7
8
|
class Basic
|
8
9
|
attr_reader :config
|
9
10
|
|
10
|
-
def initialize
|
11
|
-
@config =
|
11
|
+
def initialize(config_path)
|
12
|
+
@config = parse_config_file(config_path)
|
12
13
|
end
|
13
14
|
|
14
15
|
# Render file
|
@@ -17,19 +18,15 @@ module SimpleCV
|
|
17
18
|
# location. If no arguments are given, filename will be set to
|
18
19
|
# SimpleCV.pdf and pdf will be rendered to current working dir.
|
19
20
|
|
20
|
-
def render_file
|
21
|
+
def render_file(filename: "SimpleCV", path: nil)
|
21
22
|
output_path = File.join(path || Dir.pwd, "#{filename.chomp('.pdf')}.pdf")
|
22
|
-
Layout.new(config
|
23
|
+
Layout.new(config).render_file(output_path)
|
23
24
|
output_path
|
24
25
|
end
|
25
26
|
|
26
27
|
private
|
27
28
|
|
28
|
-
|
29
|
-
#
|
30
|
-
# Currently yml and json files are supported. Will parse file content to hash.
|
31
|
-
|
32
|
-
def parse_config_file config_path
|
29
|
+
def parse_config_file(config_path)
|
33
30
|
File.open(config_path, "r") do |file|
|
34
31
|
case File.extname(file).delete(".")
|
35
32
|
when "json" then JSON.parse(file.read)
|
@@ -40,15 +37,5 @@ module SimpleCV
|
|
40
37
|
end
|
41
38
|
end
|
42
39
|
end
|
43
|
-
|
44
|
-
# Struct tree
|
45
|
-
#
|
46
|
-
# Since i prefere to use dot notation to navigate through medium size hashes,
|
47
|
-
# parse hash into open structs
|
48
|
-
|
49
|
-
def build_struct_tree data
|
50
|
-
data.to_hashugar
|
51
|
-
end
|
52
|
-
|
53
40
|
end
|
54
41
|
end
|