jekyllcv 0.0.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 +7 -0
- data/LICENSE +21 -0
- data/README.md +42 -0
- data/_includes/cv-profile.html +144 -0
- data/_includes/cv-sections.html +79 -0
- data/_includes/head.html +40 -0
- data/_layouts/cv.html +56 -0
- data/_layouts/default.html +13 -0
- data/_layouts/page.html +17 -0
- data/_sass/jekyllcv.scss +3 -0
- data/_sass/jekyllcv/_layout.scss +285 -0
- data/_sass/jekyllcv/skins/default.scss +26 -0
- data/assets/css/style.scss +7 -0
- data/assets/img/jekyllcv/favicon.ico +0 -0
- data/assets/img/jekyllcv/html.png +0 -0
- data/assets/img/jekyllcv/yaml.png +0 -0
- data/assets/img/user/afonso.jpg +0 -0
- data/assets/img/user/egas.png +0 -0
- data/assets/img/user/leon.png +0 -0
- data/assets/img/user/portugal1143.png +0 -0
- metadata +98 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: b2b2c52ad658d0d265f26adad0828e3d1dc98eaf9611c068f2cc816587cdfbf1
|
4
|
+
data.tar.gz: 575707e9a423dc17f5ae1f507d70b99bc8bee4e64169adcb7968075717f5279a
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f779a262698e42e307c93d9ae786c56b9b4af3f540e16642d28a3108eeb4ff8b349d7f55061da2c7e76e212b15fabe7e6506f5336b4343384d5fa710ea188ee8
|
7
|
+
data.tar.gz: e7450d0c3f017d0ed2112fe8ffa1c674c0c9edd16ea633a9ae4c73f3c267cd4cc7602215ed46ae51efa465fef96f04d64dab27770530bfadf23de350370846d2
|
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2020 Marcelo Félix
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
# jekyllcv
|
2
|
+
|
3
|
+
CV based on YAML, using [jekyll](https://github.com/jekyll/jekyll).
|
4
|
+
* [Github Repository: marcelofpfelix/jekyllcv](https:///github.com/marcelofpfelix/jekyllcv)
|
5
|
+
* [webpage: marcelofpfelix.github.io/jekyllcv](https://marcelofpfelix.github.io/jekyllcv)
|
6
|
+
|
7
|
+
Converts this [yaml file](https://github.com/marcelofpfelix/jekyllcv/blob/master/_data/users.yml) in the printing html page seen bellow.
|
8
|
+
|
9
|
+
```yaml
|
10
|
+
user:
|
11
|
+
name: "Henriques D. Afonso"
|
12
|
+
avatar: assets/img/afonso.jpg
|
13
|
+
bio: CEO @portugal
|
14
|
+
url: bandonga.com/cv/user
|
15
|
+
email_user : afonso
|
16
|
+
email_domain : portugal.pt
|
17
|
+
links:
|
18
|
+
- linkedin
|
19
|
+
- github
|
20
|
+
```
|
21
|
+
|
22
|
+
[](user)
|
23
|
+
|
24
|
+
### Example
|
25
|
+
|
26
|
+
To see an example, please check the **[demo](https://marcelofpfelix.github.io/jekyllcv/user)** CV , using this [yaml file](https://github.com/marcelofpfelix/jekyllcv/blob/master/_data/users.yml).
|
27
|
+
* You can also check *Marcelo Félix* real CV, available at **[bandonga.com/cv/marcelo](https://bandonga.com/cv/marcelo)**, using this [yaml file](https://github.com/bandonga/cv/blob/master/_data/users.yml).
|
28
|
+
|
29
|
+
### Using:
|
30
|
+
* **[jekyll/jekyll](https://github.com/jekyll/jekyll):** static site generator
|
31
|
+
* **[FortAwesome/Font-Awesome](https://github.com/FortAwesome/Font-Awesome):** icon toolkit
|
32
|
+
* **[cognitom/paper-css](https://github.com/cognitom/paper-css):** front-end printing solution
|
33
|
+
* **[necolas/normalize.css](https://github.com/necolas/normalize.css):** CSS resets
|
34
|
+
* **[google/fonts](https://github.com/google/fonts):** catalog with fonts
|
35
|
+
* **[lipis/flag-icon-css](https://github.com/lipis/flag-icon-css):** collection with country flags in CSS
|
36
|
+
* **[jquery/jquery](https://github.com/jquery/jquery):** lib to simplify HTML DOM selection
|
37
|
+
* **[moment/moment](https://github.com/moment/moment):** lib to calculate dates
|
38
|
+
* **[davatron5000/FitText.js](https://github.com/davatron5000/FitText.js):** font resizing
|
39
|
+
|
40
|
+
### Inspired by:
|
41
|
+
* **[AnotherKamila/yamlCV](https://github.com/AnotherKamila/yamlCV)**
|
42
|
+
* **[mmistakes/minimal-mistakes](https://github.com/mmistakes/minimal-mistakes)**
|
@@ -0,0 +1,144 @@
|
|
1
|
+
{% assign user = page.user | default: page.users[0] | default: site.user %}
|
2
|
+
{% assign cv = site.data.users[user] | default: user %}
|
3
|
+
|
4
|
+
|
5
|
+
<div id="cv_avatar">
|
6
|
+
|
7
|
+
<!-- Profile -->
|
8
|
+
{% if cv.avatar %}
|
9
|
+
<div id="avatar">
|
10
|
+
<img src="{{ cv.avatar }}" alt="{{ cv.name }}"">
|
11
|
+
</div>
|
12
|
+
{% endif %}
|
13
|
+
<div id="cv_name" >{{ cv.name }}</div>
|
14
|
+
<script>
|
15
|
+
jQuery("#cv_name").fitText();
|
16
|
+
</script>
|
17
|
+
<p id="cv_bio">{{ cv.bio }}</p>
|
18
|
+
</div>
|
19
|
+
|
20
|
+
|
21
|
+
<div id="cv_profile">
|
22
|
+
<div id="cv_contact">
|
23
|
+
|
24
|
+
<div class="cv_profile_h">Contact</div>
|
25
|
+
|
26
|
+
<!-- Contacts -->
|
27
|
+
{% if cv.email_user %}
|
28
|
+
<div class="cv_profile_detail">
|
29
|
+
<div class="cv_icon">
|
30
|
+
<i class="fas fa-envelope-square"></i>
|
31
|
+
</div>
|
32
|
+
<div class="cv_profile_name">
|
33
|
+
{{ cv.email_user }} <i class="fas fa-at" aria-hidden="true"></i> {{ cv.email_domain }}
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
{% endif %}
|
37
|
+
|
38
|
+
<!-- social media -->
|
39
|
+
{% for sec_id in cv.links %}
|
40
|
+
{% assign account = cv[sec_id] %}
|
41
|
+
<div class="cv_profile_detail">
|
42
|
+
<a href="{{account.url}}{{account.name}}">
|
43
|
+
<div class="cv_icon">
|
44
|
+
<i class="fab fa-{{account.icon}}"></i>
|
45
|
+
</div>
|
46
|
+
<div class="cv_profile_name">
|
47
|
+
{{account.name}}
|
48
|
+
</div>
|
49
|
+
</a>
|
50
|
+
</div>
|
51
|
+
{% endfor %}
|
52
|
+
|
53
|
+
{% if cv.link %}
|
54
|
+
<div class="cv_profile_detail">
|
55
|
+
<a href="https://{{ cv.link }}">
|
56
|
+
<div class="cv_icon">
|
57
|
+
<i class="fas fa-link"></i>
|
58
|
+
</div>
|
59
|
+
<div class="cv_profile_name">
|
60
|
+
{{ cv.link }}
|
61
|
+
</div>
|
62
|
+
</a>
|
63
|
+
</div>
|
64
|
+
{% endif %}
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
<!-- Additional Info -->
|
70
|
+
|
71
|
+
</div>
|
72
|
+
<div id="cv_info">
|
73
|
+
<div class="cv_profile_h">Info</div>
|
74
|
+
|
75
|
+
{% if cv.location %}
|
76
|
+
<div class="cv_profile_detail">
|
77
|
+
<div class="cv_icon">
|
78
|
+
<i class="fas fa-map-marker-alt"></i>
|
79
|
+
</div>
|
80
|
+
<div class="cv_profile_name">
|
81
|
+
{{ cv.location }}
|
82
|
+
</div>
|
83
|
+
</div>
|
84
|
+
{% endif %}
|
85
|
+
|
86
|
+
{% if cv.born %}
|
87
|
+
<div class="cv_profile_detail">
|
88
|
+
<div class="cv_icon">
|
89
|
+
<i class="fas fa-birthday-cake"></i>
|
90
|
+
</div>
|
91
|
+
<div class="cv_profile_name">
|
92
|
+
<div id="age"></div>
|
93
|
+
</div>
|
94
|
+
</div>
|
95
|
+
{% endif %}
|
96
|
+
<!-- Script to get the Age using moment.js -->
|
97
|
+
<script>
|
98
|
+
$("#age").replaceWith(moment().diff(moment('{{cv.born}}', 'YYYY-MM-DD'), 'years')+ " Years");
|
99
|
+
</script>
|
100
|
+
|
101
|
+
{% if cv.nationality %}
|
102
|
+
{% for sec_id in cv.nationality %}
|
103
|
+
{% assign nat = cv[sec_id] %}
|
104
|
+
<div class="cv_profile_detail">
|
105
|
+
<div class="cv_icon">
|
106
|
+
<i class="fas fa-flag"></i>
|
107
|
+
</div>
|
108
|
+
<div class="cv_profile_name">
|
109
|
+
{{nat.name}} <span class="flag-icon flag-icon-{{nat.flag}}"></span>
|
110
|
+
</div>
|
111
|
+
</div>
|
112
|
+
{% endfor %}
|
113
|
+
{% endif %}
|
114
|
+
|
115
|
+
{% if cv.languages %}
|
116
|
+
{% for sec_id in cv.languages %}
|
117
|
+
{% assign lan = cv[sec_id] %}
|
118
|
+
<div class="cv_profile_detail">
|
119
|
+
<div class="cv_icon">
|
120
|
+
<i class="fas fa-language"></i>
|
121
|
+
</div>
|
122
|
+
<div class="cv_profile_name">
|
123
|
+
{{lan.name}} <span class="flag-icon flag-icon-{{lan.flag}}"></span>
|
124
|
+
</div>
|
125
|
+
</div>
|
126
|
+
{% endfor %}
|
127
|
+
{% endif %}
|
128
|
+
|
129
|
+
{% if cv.roles %}
|
130
|
+
{% for rol in cv.roles %}
|
131
|
+
<div class="cv_profile_detail">
|
132
|
+
<div class="cv_icon">
|
133
|
+
<i class="fas fa-tags"></i>
|
134
|
+
</div>
|
135
|
+
<div class="cv_profile_name">
|
136
|
+
{{rol}}
|
137
|
+
</div>
|
138
|
+
</div>
|
139
|
+
{% endfor %}
|
140
|
+
{% endif %}
|
141
|
+
|
142
|
+
|
143
|
+
</div>
|
144
|
+
</div>
|
@@ -0,0 +1,79 @@
|
|
1
|
+
{% assign section = include.section %}
|
2
|
+
|
3
|
+
<!-- Sectio title -->
|
4
|
+
<h3 class="cv_section">
|
5
|
+
<div id="textbox">
|
6
|
+
<i class="fas fa-{{section.icon}}"></i>
|
7
|
+
|
8
|
+
{{section.title}}
|
9
|
+
{% if section.range %}
|
10
|
+
<div class="alignright">
|
11
|
+
<i class="fas fa-calendar"></i>
|
12
|
+
<div id="exp"></div>
|
13
|
+
</div>
|
14
|
+
{% endif %}
|
15
|
+
</div>
|
16
|
+
</h3>
|
17
|
+
<div style="clear: both;"></div>
|
18
|
+
|
19
|
+
<!-- script to get the range in years -->
|
20
|
+
<script>
|
21
|
+
if (moment('{{section.range.b}}').isValid()) {
|
22
|
+
b = moment('{{section.range.b}}', 'YYYY-MM-DD');
|
23
|
+
} else {
|
24
|
+
b = moment();
|
25
|
+
}
|
26
|
+
$("#exp").replaceWith(" " + Math.round(b.diff(moment('{{section.range.a}}', 'YYYY-MM-DD'), 'years', true) * 10) / 10 + " y");
|
27
|
+
</script>
|
28
|
+
|
29
|
+
<!-- group logo and title -->
|
30
|
+
{% for group_id in section.groups %}
|
31
|
+
{% assign group = section.[group_id] %}
|
32
|
+
<a href="{{ group.url }}">
|
33
|
+
<img src="{{ group.logo }}" alt="{{ group.ententy }}">
|
34
|
+
<h4 class="cv_ententy">{{group.ententy}}</h4>
|
35
|
+
</a>
|
36
|
+
|
37
|
+
<!-- item position -->
|
38
|
+
{% assign after_logo = false %}
|
39
|
+
{% for item_id in group.items %}
|
40
|
+
{% assign item = group.[item_id] %}
|
41
|
+
|
42
|
+
<div id="textbox">
|
43
|
+
<div class="cv_item">
|
44
|
+
<!-- for >1 positions -->
|
45
|
+
{% if after_logo %}
|
46
|
+
<i class="far fa-circle"></i>
|
47
|
+
{% endif %}
|
48
|
+
{% assign after_logo = true %}
|
49
|
+
{{item.title | escape }}
|
50
|
+
|
51
|
+
<!-- item location and flag -->
|
52
|
+
<div class="alignright">
|
53
|
+
{% if {{item.flag}} %}
|
54
|
+
<span class="flag-icon flag-icon-{{item.flag}}"></span>
|
55
|
+
{% endif %}
|
56
|
+
{{item.location}}
|
57
|
+
<!-- item dates -->
|
58
|
+
{% if item.dates %}
|
59
|
+
, {{item.dates}}
|
60
|
+
{% endif %}
|
61
|
+
{% if item.range %}
|
62
|
+
<i class="fas fa-calendar"></i>
|
63
|
+
<div id="{{group_id}}{{item_id}}"></div>
|
64
|
+
{% endif %}
|
65
|
+
</div>
|
66
|
+
</div>
|
67
|
+
<script>
|
68
|
+
if (moment('{{item.range.b}}').isValid()) {
|
69
|
+
b = moment('{{item.range.b}}', 'YYYY-MM-DD');
|
70
|
+
} else {
|
71
|
+
b = moment();
|
72
|
+
}
|
73
|
+
$("#{{group_id}}{{item_id}}").replaceWith(" " + Math.round(b.diff(moment('{{item.range.a}}', 'YYYY-MM-DD'), 'years', true) * 10) / 10 + " y");
|
74
|
+
</script>
|
75
|
+
</div>
|
76
|
+
|
77
|
+
{{item.description | markdownify}}
|
78
|
+
{% endfor %}
|
79
|
+
{% endfor %}
|
data/_includes/head.html
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
{% assign user = page.user | default: site.user %}
|
2
|
+
{% assign cv = site.data.users[user] | default: user %}
|
3
|
+
|
4
|
+
{% if cv.name %}
|
5
|
+
{% assign title = cv.name %}
|
6
|
+
{% else %}
|
7
|
+
{% assign title = page.title | default: site.title %}
|
8
|
+
{% endif %}
|
9
|
+
|
10
|
+
{% if cv.favicon %}
|
11
|
+
{% assign favicon = cv.favicon %}
|
12
|
+
{% else %}
|
13
|
+
{% assign favicon = "assets/img/jekyllcv/favicon.ico" %}
|
14
|
+
{% endif %}
|
15
|
+
|
16
|
+
|
17
|
+
<head>
|
18
|
+
<!-- meta tags -->
|
19
|
+
<meta charset="utf-8">
|
20
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
21
|
+
|
22
|
+
<title>{{title}}</title>
|
23
|
+
|
24
|
+
<!--css -->
|
25
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css">
|
26
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/paper-css/0.4.1/paper.min.css">
|
27
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans&display=swap">
|
28
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/flag-icon-css/3.5.0/css/flag-icon.min.css">
|
29
|
+
<link rel="stylesheet" type="text/css" href="{{ "/assets/css/style.css" | relative_url }}">
|
30
|
+
|
31
|
+
<!--favicon -->
|
32
|
+
<link rel="shortcut icon" href="/favicon.ico">
|
33
|
+
<link rel="icon" sizes="16x16 32x32 64x64" href="{{favicon}}">
|
34
|
+
|
35
|
+
<!--scripts-->
|
36
|
+
<script src="https://kit.fontawesome.com/a3e38ae6a5.js" crossorigin="anonymous"></script>
|
37
|
+
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha256-4+XzXVhsDmqanXGHaHvgh1gMQKX40OUvDEBTu8JcmNs=" crossorigin="anonymous"></script>
|
38
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js" crossorigin="anonymous"></script>
|
39
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/FitText.js/1.2.0/jquery.fittext.min.js" crossorigin="anonymous"></script>
|
40
|
+
</head>
|
data/_layouts/cv.html
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
{% assign user = page.user | default: site.user %}
|
6
|
+
{% assign cv = site.data.users[user] | default: user %}
|
7
|
+
|
8
|
+
<!-- download message -->
|
9
|
+
<div class="no-print">
|
10
|
+
<div id="cv_download">
|
11
|
+
You can also
|
12
|
+
<a href="javascript:window.print()">
|
13
|
+
<i class="fas fa-print"></i> Print or <i class="fas fa-save"></i> Save it as PDF
|
14
|
+
</a>.
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
{% for i in (1..cv.pages) %}
|
19
|
+
<section class="sheet padding-10mm">
|
20
|
+
<article class="cv">
|
21
|
+
<!-- in the first page-->
|
22
|
+
{% if forloop.first == true %}
|
23
|
+
<!-- profile row and info message -->
|
24
|
+
{% include cv-profile.html %}
|
25
|
+
{% if cv.url %}
|
26
|
+
<div id="cv_info_message">
|
27
|
+
|
28
|
+
<i class="fas fa-info-circle brand-color"></i>
|
29
|
+
|
30
|
+
You can find this CV always updated at
|
31
|
+
<a href="https://{{cv.url}}">
|
32
|
+
{{cv.url}}
|
33
|
+
</a>.
|
34
|
+
</div>
|
35
|
+
{% endif %}
|
36
|
+
{% endif %}
|
37
|
+
|
38
|
+
<!-- write sections -->
|
39
|
+
{% assign page_id = forloop.index %}
|
40
|
+
{% for sec_id in cv.sections %}
|
41
|
+
{% if cv.data[sec_id].page == page_id %}
|
42
|
+
{% assign section = cv.data[sec_id] %}
|
43
|
+
{% include cv-sections.html section = section %}
|
44
|
+
{% endif %}
|
45
|
+
{% endfor %}
|
46
|
+
|
47
|
+
<!-- made by footer -->
|
48
|
+
<div id="cv_foot">
|
49
|
+
<div id="cv_madeby">
|
50
|
+
<i class="fab fa-osi"></i> made with <a href="https:///github.com/marcelofpfelix/jekyllcv">marcelofpfelix/jekyllcv</a>.
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
</article>
|
55
|
+
</section>
|
56
|
+
{% endfor %}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="{{ page.lang | default: site.lang | default: "en" }}">
|
3
|
+
|
4
|
+
{%- include head.html -%}
|
5
|
+
|
6
|
+
<!-- Set "A5", "A4" or "A3" for class name -->
|
7
|
+
<!-- Set also "landscape" if you need -->
|
8
|
+
<body class="A4">
|
9
|
+
<!-- Write HTML just like a web page -->
|
10
|
+
{{ content }}
|
11
|
+
</body>
|
12
|
+
|
13
|
+
</html>
|
data/_layouts/page.html
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<section class="sheet padding-10mm">
|
6
|
+
<article>
|
7
|
+
<div class="page">
|
8
|
+
{{ content }}
|
9
|
+
</div>
|
10
|
+
<!-- made by footer -->
|
11
|
+
<div id="cv_foot">
|
12
|
+
<div id="cv_madeby">
|
13
|
+
<i class="fab fa-osi"></i> made with <a href="https:///github.com/marcelofpfelix/jekyllcv">marcelofpfelix/jekyllcv</a>.
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
</article>
|
17
|
+
</section>
|
data/_sass/jekyllcv.scss
ADDED
@@ -0,0 +1,285 @@
|
|
1
|
+
@charset "utf-8";
|
2
|
+
|
3
|
+
/*
|
4
|
+
* Set page size here: A5, A4 or A3
|
5
|
+
* Set also "landscape" if you need
|
6
|
+
*/
|
7
|
+
@page {
|
8
|
+
size: A4
|
9
|
+
}
|
10
|
+
|
11
|
+
html {
|
12
|
+
font-size: $base-font-size;
|
13
|
+
text-align: justify;
|
14
|
+
}
|
15
|
+
|
16
|
+
/**
|
17
|
+
* Basic styling
|
18
|
+
*/
|
19
|
+
body {
|
20
|
+
font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;
|
21
|
+
color: $text-color;
|
22
|
+
font-kerning: normal;
|
23
|
+
}
|
24
|
+
|
25
|
+
body, h1, h2, h3, h4, h5, h6,
|
26
|
+
p, blockquote, pre, hr,
|
27
|
+
dl, dd, ol, ul, figure {
|
28
|
+
margin: 0;
|
29
|
+
padding: 0;
|
30
|
+
|
31
|
+
}
|
32
|
+
|
33
|
+
a {
|
34
|
+
color: $link-base-color;
|
35
|
+
text-decoration: none;
|
36
|
+
|
37
|
+
&:visited {
|
38
|
+
color: $link-visited-color;
|
39
|
+
}
|
40
|
+
|
41
|
+
&:hover {
|
42
|
+
color: $link-hover-color;
|
43
|
+
text-decoration: underline;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
|
48
|
+
.cv_section {
|
49
|
+
color: $brand-color;
|
50
|
+
font-size: $base-font-size * 1.5;
|
51
|
+
font-weight: normal;
|
52
|
+
padding-top: 8px;
|
53
|
+
padding-bottom: 2px;
|
54
|
+
}
|
55
|
+
|
56
|
+
.cv_ententy {
|
57
|
+
font-size: $base-font-size * 1.2;
|
58
|
+
font-weight: 900;
|
59
|
+
padding-bottom: 5px;
|
60
|
+
float:none;
|
61
|
+
}
|
62
|
+
|
63
|
+
.cv_item {
|
64
|
+
color: $text-color-light;
|
65
|
+
}
|
66
|
+
|
67
|
+
.fa-circle {
|
68
|
+
margin-left: 15px;
|
69
|
+
margin-right: 15px;
|
70
|
+
}
|
71
|
+
|
72
|
+
.cv_years {
|
73
|
+
color: $brand-color;
|
74
|
+
font-size: $base-font-size * 1.5;
|
75
|
+
font-weight: normal;
|
76
|
+
float:none;
|
77
|
+
text-align: right;
|
78
|
+
}
|
79
|
+
|
80
|
+
.cv_profile_detail {
|
81
|
+
font-size: $base-font-size * 0.9;
|
82
|
+
}
|
83
|
+
|
84
|
+
.cv_icon {
|
85
|
+
color: $brand-color;
|
86
|
+
margin-left: 10px;
|
87
|
+
margin-right: 10px;
|
88
|
+
float: left;
|
89
|
+
}
|
90
|
+
|
91
|
+
.cv_profile_name {
|
92
|
+
float: none;
|
93
|
+
}
|
94
|
+
|
95
|
+
|
96
|
+
.cv_profile_h {
|
97
|
+
color: $brand-color;
|
98
|
+
font-size: $base-font-size * 1.2;
|
99
|
+
font-weight: 900;
|
100
|
+
margin-top: 10px;
|
101
|
+
margin-left: 10px;
|
102
|
+
margin-bottom: 8px;
|
103
|
+
}
|
104
|
+
|
105
|
+
.alignleft {
|
106
|
+
float: left;
|
107
|
+
}
|
108
|
+
.alignright {
|
109
|
+
float: right;
|
110
|
+
}
|
111
|
+
|
112
|
+
|
113
|
+
.brand-color {
|
114
|
+
color: $brand-color;
|
115
|
+
}
|
116
|
+
|
117
|
+
.cv {
|
118
|
+
img {
|
119
|
+
border-radius: 5px;
|
120
|
+
margin-right: 5px;
|
121
|
+
width: 40px;
|
122
|
+
float:left;
|
123
|
+
}
|
124
|
+
|
125
|
+
img:hover {
|
126
|
+
box-shadow: 0 0 2px 1px $brand-color-light;
|
127
|
+
}
|
128
|
+
}
|
129
|
+
|
130
|
+
|
131
|
+
/**
|
132
|
+
* Code formatting
|
133
|
+
*/
|
134
|
+
pre,
|
135
|
+
code {
|
136
|
+
font-size: 0.9375em;
|
137
|
+
border: 1px solid $text-color-light;
|
138
|
+
border-radius: 3px;
|
139
|
+
background-color: $text-color-light1;
|
140
|
+
}
|
141
|
+
|
142
|
+
code {
|
143
|
+
padding: 1px 5px;
|
144
|
+
}
|
145
|
+
|
146
|
+
pre {
|
147
|
+
padding: 8px 12px;
|
148
|
+
overflow-x: auto;
|
149
|
+
|
150
|
+
> code {
|
151
|
+
border: 0;
|
152
|
+
padding-right: 0;
|
153
|
+
padding-left: 0;
|
154
|
+
}
|
155
|
+
}
|
156
|
+
|
157
|
+
.page {
|
158
|
+
body, h1, h2, h3, h4, h5, h6,
|
159
|
+
p, blockquote, pre, hr,
|
160
|
+
dl, dd, ol, ul, figure {
|
161
|
+
margin-bottom: 15px;
|
162
|
+
}
|
163
|
+
img {
|
164
|
+
border-radius: 5px;
|
165
|
+
margin: 0 auto;
|
166
|
+
height: 200px;
|
167
|
+
display: block;
|
168
|
+
}
|
169
|
+
}
|
170
|
+
|
171
|
+
.page {
|
172
|
+
|
173
|
+
}
|
174
|
+
|
175
|
+
#avatar {
|
176
|
+
img {
|
177
|
+
border-radius: 50%;
|
178
|
+
margin-left: 45px;
|
179
|
+
margin-right: 45px;
|
180
|
+
margin-top: 18px;
|
181
|
+
width: 90px;
|
182
|
+
height: 90px;
|
183
|
+
object-fit: cover;
|
184
|
+
border: 2px solid $text-color-light;
|
185
|
+
float:left;
|
186
|
+
|
187
|
+
img:hover {
|
188
|
+
box-shadow: 0 0 2px 1px $text-color-light1;
|
189
|
+
}
|
190
|
+
}
|
191
|
+
}
|
192
|
+
|
193
|
+
#cv_avatar {
|
194
|
+
background: $text-color-light3;
|
195
|
+
width: 180px;
|
196
|
+
height: 180px;
|
197
|
+
text-align: center;
|
198
|
+
float:left;
|
199
|
+
margin-bottom: 10px;
|
200
|
+
}
|
201
|
+
|
202
|
+
#cv_profile {
|
203
|
+
background: $text-color-light1;
|
204
|
+
height: 180px;
|
205
|
+
margin-bottom: 10px;
|
206
|
+
}
|
207
|
+
|
208
|
+
#cv_contact {
|
209
|
+
width: 269.062px;
|
210
|
+
float: left;
|
211
|
+
}
|
212
|
+
|
213
|
+
#cv_info {
|
214
|
+
width: 269.063px;
|
215
|
+
float:right;
|
216
|
+
}
|
217
|
+
|
218
|
+
#cv_name {
|
219
|
+
color: $brand-color;
|
220
|
+
font-weight: 900;
|
221
|
+
padding-top: 8px;
|
222
|
+
padding-bottom: 2px;
|
223
|
+
}
|
224
|
+
|
225
|
+
#cv_bio {
|
226
|
+
font-size: $base-font-size * 0.9;
|
227
|
+
}
|
228
|
+
|
229
|
+
|
230
|
+
#cv_info_message {
|
231
|
+
background: $brand-color-light1;
|
232
|
+
border-radius: 5px;
|
233
|
+
padding: 4px;
|
234
|
+
padding-left: 10px;
|
235
|
+
padding-right: 10px;
|
236
|
+
font-size: $base-font-size * 0.8;
|
237
|
+
width: 680px;
|
238
|
+
margin: 0 auto;
|
239
|
+
}
|
240
|
+
|
241
|
+
|
242
|
+
#cv_download {
|
243
|
+
background: $download-color;
|
244
|
+
border-radius: 5px;
|
245
|
+
padding: 4px;
|
246
|
+
padding-left: 10px;
|
247
|
+
padding-right: 10px;
|
248
|
+
width: 680px;
|
249
|
+
margin: 0 auto;
|
250
|
+
a:hover {
|
251
|
+
color: $download-color-light;
|
252
|
+
text-decoration: underline;
|
253
|
+
}
|
254
|
+
}
|
255
|
+
|
256
|
+
#cv_madeby {
|
257
|
+
|
258
|
+
position: relative;
|
259
|
+
|
260
|
+
|
261
|
+
}
|
262
|
+
|
263
|
+
#cv_madeby {
|
264
|
+
font-size: $base-font-size * 0.8;
|
265
|
+
text-align: center;
|
266
|
+
position: absolute;
|
267
|
+
width: 718.125px;
|
268
|
+
bottom: 30px;
|
269
|
+
color: $text-color-light5;
|
270
|
+
a {
|
271
|
+
color: $text-color-light5;
|
272
|
+
}
|
273
|
+
a:hover {
|
274
|
+
color: $brand-color-light;
|
275
|
+
}
|
276
|
+
}
|
277
|
+
|
278
|
+
/**
|
279
|
+
* to not print the download message
|
280
|
+
*/
|
281
|
+
@media print {
|
282
|
+
.no-print {
|
283
|
+
display: none;
|
284
|
+
}
|
285
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
$brand-color: #21618C !default;
|
2
|
+
$brand-color-light: lighten($brand-color, 20%) !default;
|
3
|
+
$brand-color-light1: lighten($brand-color, 60%) !default;
|
4
|
+
$brand-color-dark: darken($brand-color, 20%) !default;
|
5
|
+
|
6
|
+
$download-color: #58D68D !default;
|
7
|
+
$download-color-light: lighten($download-color, 40%) !default;
|
8
|
+
|
9
|
+
$text-color: #111111 !default;
|
10
|
+
$text-color-light: lighten($text-color, 30%) !default;
|
11
|
+
|
12
|
+
$text-color-light1: lighten($text-color, 90%) !default;
|
13
|
+
$text-color-light3: lighten($text-color, 70%) !default;
|
14
|
+
$text-color-light5: lighten($text-color, 50%) !default;
|
15
|
+
|
16
|
+
|
17
|
+
$link-base-color: $text-color !default;
|
18
|
+
$link-visited-color: $text-color !default;
|
19
|
+
$link-hover-color: $brand-color-light !default;
|
20
|
+
|
21
|
+
$base-font-family: 'Open Sans', sans-serif !default;
|
22
|
+
$base-font-size: 12px !default;
|
23
|
+
$base-font-weight: 400 !default;
|
24
|
+
$small-font-size: $base-font-size * 0.875 !default;
|
25
|
+
$base-line-height: 1.5 !default;
|
26
|
+
$spacing-unit: 30px !default;
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
ADDED
@@ -0,0 +1,98 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: jekyllcv
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Marcelo Felix
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-07-20 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: jekyll
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '4.0'
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '5.0'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '4.0'
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '5.0'
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: bundler
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
type: :development
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
description:
|
48
|
+
email:
|
49
|
+
- marcelofpfelix@github.com
|
50
|
+
executables: []
|
51
|
+
extensions: []
|
52
|
+
extra_rdoc_files: []
|
53
|
+
files:
|
54
|
+
- LICENSE
|
55
|
+
- README.md
|
56
|
+
- _includes/cv-profile.html
|
57
|
+
- _includes/cv-sections.html
|
58
|
+
- _includes/head.html
|
59
|
+
- _layouts/cv.html
|
60
|
+
- _layouts/default.html
|
61
|
+
- _layouts/page.html
|
62
|
+
- _sass/jekyllcv.scss
|
63
|
+
- _sass/jekyllcv/_layout.scss
|
64
|
+
- _sass/jekyllcv/skins/default.scss
|
65
|
+
- assets/css/style.scss
|
66
|
+
- assets/img/jekyllcv/favicon.ico
|
67
|
+
- assets/img/jekyllcv/html.png
|
68
|
+
- assets/img/jekyllcv/yaml.png
|
69
|
+
- assets/img/user/afonso.jpg
|
70
|
+
- assets/img/user/egas.png
|
71
|
+
- assets/img/user/leon.png
|
72
|
+
- assets/img/user/portugal1143.png
|
73
|
+
homepage: https://github.com/marcelofpfelix/jekyllcv
|
74
|
+
licenses:
|
75
|
+
- MIT
|
76
|
+
metadata:
|
77
|
+
plugin_type: theme
|
78
|
+
post_install_message:
|
79
|
+
rdoc_options: []
|
80
|
+
require_paths:
|
81
|
+
- lib
|
82
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '0'
|
87
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
requirements: []
|
93
|
+
rubyforge_project:
|
94
|
+
rubygems_version: 2.7.6
|
95
|
+
signing_key:
|
96
|
+
specification_version: 4
|
97
|
+
summary: yaml CV for Jekyll.
|
98
|
+
test_files: []
|