cvless 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +97 -0
  4. data/_config.yml +35 -0
  5. data/_includes/archive.html +12 -0
  6. data/_includes/contact.html +12 -0
  7. data/_includes/footer.html +4 -0
  8. data/_includes/head.html +24 -0
  9. data/_includes/header.html +13 -0
  10. data/_includes/iconlink.html +1 -0
  11. data/_includes/pagination.html +12 -0
  12. data/_includes/particles-404.html +7 -0
  13. data/_includes/particles-home.html +33 -0
  14. data/_includes/postlist.html +8 -0
  15. data/_includes/svg/arrow-left-circled.svg +1 -0
  16. data/_includes/svg/arrow-right-circled.svg +1 -0
  17. data/_includes/svg/clarivate-circled.svg +1 -0
  18. data/_includes/svg/cv-circled.svg +1 -0
  19. data/_includes/svg/download-circled-outline.svg +1 -0
  20. data/_includes/svg/download-square-outline.svg +1 -0
  21. data/_includes/svg/facebook.svg +1 -0
  22. data/_includes/svg/github-outline.svg +1 -0
  23. data/_includes/svg/github.svg +1 -0
  24. data/_includes/svg/google-circled.svg +1 -0
  25. data/_includes/svg/instagram.svg +1 -0
  26. data/_includes/svg/internet.svg +1 -0
  27. data/_includes/svg/key-alt-circled.svg +1 -0
  28. data/_includes/svg/lichess-circled.svg +1 -0
  29. data/_includes/svg/linkedin.svg +1 -0
  30. data/_includes/svg/mail.svg +1 -0
  31. data/_includes/svg/nav-arrow-down.svg +1 -0
  32. data/_includes/svg/nav-arrow-left.svg +1 -0
  33. data/_includes/svg/nav-arrow-right.svg +1 -0
  34. data/_includes/svg/open-in-browser.svg +1 -0
  35. data/_includes/svg/open-in-window.svg +1 -0
  36. data/_includes/svg/open-new-window.svg +1 -0
  37. data/_includes/svg/orcid.svg +1 -0
  38. data/_includes/svg/phone.svg +1 -0
  39. data/_includes/svg/pin-alt.svg +1 -0
  40. data/_includes/svg/scopus-circled.svg +1 -0
  41. data/_includes/svg/send-mail-circled.svg +1 -0
  42. data/_includes/svg/stackoverflow.svg +1 -0
  43. data/_includes/svg/twitter.svg +1 -0
  44. data/_includes/svg/user-circle-alt.svg +1 -0
  45. data/_includes/toggler.html +3 -0
  46. data/_layouts/cv.html +11 -0
  47. data/_layouts/default.html +28 -0
  48. data/_layouts/home.html +11 -0
  49. data/_layouts/page.html +11 -0
  50. data/_layouts/post.html +14 -0
  51. data/_sass/_base.scss +74 -0
  52. data/_sass/_code.scss +18 -0
  53. data/_sass/_elements.scss +102 -0
  54. data/_sass/_fonts.scss +159 -0
  55. data/_sass/_headings.scss +42 -0
  56. data/_sass/_media.scss +93 -0
  57. data/_sass/_pagination.scss +47 -0
  58. data/_sass/_particles.scss +99 -0
  59. data/_sass/_pulse.scss +22 -0
  60. data/_sass/_variables.scss +34 -0
  61. data/assets/css/bootstrap.min.css +1 -0
  62. data/assets/css/open-color.min.css +1 -0
  63. data/assets/css/styles.min.scss +15 -0
  64. data/assets/css/syntax.css +280 -0
  65. data/assets/fonts/Piazzolla-Bold.woff2 +0 -0
  66. data/assets/fonts/Piazzolla-BoldItalic.woff2 +0 -0
  67. data/assets/fonts/Piazzolla-Italic.woff2 +0 -0
  68. data/assets/fonts/Piazzolla-Light.woff2 +0 -0
  69. data/assets/fonts/Piazzolla-LightItalic.woff2 +0 -0
  70. data/assets/fonts/Piazzolla-Medium.woff2 +0 -0
  71. data/assets/fonts/Piazzolla-MediumItalic.woff2 +0 -0
  72. data/assets/fonts/Piazzolla-Regular.woff2 +0 -0
  73. data/assets/fonts/PiazzollaSC-Bold.woff2 +0 -0
  74. data/assets/fonts/PiazzollaSC-BoldItalic.woff2 +0 -0
  75. data/assets/fonts/PiazzollaSC-Italic.woff2 +0 -0
  76. data/assets/fonts/PiazzollaSC-Light.woff2 +0 -0
  77. data/assets/fonts/PiazzollaSC-LightItalic.woff2 +0 -0
  78. data/assets/fonts/PiazzollaSC-Medium.woff2 +0 -0
  79. data/assets/fonts/PiazzollaSC-MediumItalic.woff2 +0 -0
  80. data/assets/fonts/PiazzollaSC-Regular.woff2 +0 -0
  81. data/assets/fonts/hack-bold-subset.woff2 +0 -0
  82. data/assets/fonts/hack-bolditalic-subset.woff2 +0 -0
  83. data/assets/fonts/hack-italic-subset.woff2 +0 -0
  84. data/assets/fonts/hack-regular-subset.woff2 +0 -0
  85. data/assets/js/bootstrap.min.js +6 -0
  86. data/assets/js/darkmode.js +59 -0
  87. data/assets/js/main.js +9 -0
  88. data/assets/js/particles.min.js +1 -0
  89. data/assets/json/particles.json +71 -0
  90. metadata +221 -0
@@ -0,0 +1,102 @@
1
+ a.site-title {
2
+ font-weight: 500;
3
+ color: var(--color-heading);
4
+
5
+ &:focus,
6
+ &:hover {
7
+ border-color: inherit;
8
+ color: inherit;
9
+ }
10
+ }
11
+
12
+ .toggle-bar {
13
+ display: flex;
14
+ justify-content: end;
15
+ padding-top: 1.5em;
16
+ }
17
+
18
+ .toggle-icon {
19
+ color: var(--color-heading);
20
+
21
+ &:focus,
22
+ &:hover {
23
+ cursor: pointer;
24
+ border: none;
25
+
26
+ svg circle,
27
+ svg path {
28
+ stroke-width: 0.1em;
29
+ }
30
+ }
31
+ }
32
+
33
+ .message {
34
+ padding: 0.25em 1em;
35
+ border-radius: 0.25em;
36
+ background-color: var(--color-mark);
37
+ color: var(--color-text);
38
+ }
39
+
40
+ dd {
41
+ padding-left: 0.5em;
42
+ }
43
+
44
+ .archive ul,
45
+ .contact ul {
46
+ list-style-type: none;
47
+ padding: 0;
48
+ }
49
+
50
+ .li-icon {
51
+ margin-right: 0.25em;
52
+ }
53
+
54
+ a.iconlink {
55
+ svg circle,
56
+ svg path {
57
+ stroke: var(--color-link);
58
+ }
59
+
60
+ &:focus,
61
+ &:hover {
62
+ border: none;
63
+
64
+ svg circle,
65
+ svg path {
66
+ stroke-width: 0.1em;
67
+ }
68
+ }
69
+ }
70
+
71
+ .footnotes {
72
+ margin-top: 2em;
73
+
74
+ p {
75
+ margin: 0;
76
+ }
77
+
78
+ &::before {
79
+ content: "Notes";
80
+ }
81
+ }
82
+
83
+ a[href^="#fn:"] {
84
+ margin-left: 0.1em;
85
+ font-weight: 500;
86
+
87
+ &:focus,
88
+ &:hover {
89
+ font-weight: 700;
90
+ border: none;
91
+ }
92
+ }
93
+
94
+ a.reversefootnote {
95
+ font-weight: 500;
96
+
97
+ &:focus,
98
+ &:hover {
99
+ font-weight: 700;
100
+ border: none;
101
+ }
102
+ }
data/_sass/_fonts.scss ADDED
@@ -0,0 +1,159 @@
1
+ @font-face {
2
+ font-family: 'Piazzolla';
3
+ src: url('../fonts/Piazzolla-Light.woff2') format('woff2');
4
+ font-style: normal;
5
+ font-weight: 300;
6
+ text-rendering: optimizeLegibility;
7
+ }
8
+
9
+ @font-face {
10
+ font-family: 'Piazzolla';
11
+ src: url('../fonts/Piazzolla-LightItalic.woff2') format('woff2');
12
+ font-style: italic;
13
+ font-weight: 300;
14
+ text-rendering: optimizeLegibility;
15
+ }
16
+
17
+ @font-face {
18
+ font-family: 'Piazzolla';
19
+ src: url('../fonts/Piazzolla-Regular.woff2') format('woff2');
20
+ font-style: normal;
21
+ font-weight: 400;
22
+ text-rendering: optimizeLegibility;
23
+ }
24
+
25
+ @font-face {
26
+ font-family: 'Piazzolla';
27
+ src: url('../fonts/Piazzolla-Italic.woff2') format('woff2');
28
+ font-style: italic;
29
+ font-weight: 400;
30
+ text-rendering: optimizeLegibility;
31
+ }
32
+
33
+ @font-face {
34
+ font-family: 'Piazzolla';
35
+ src: url('../fonts/Piazzolla-Medium.woff2') format('woff2');
36
+ font-style: normal;
37
+ font-weight: 500;
38
+ text-rendering: optimizeLegibility;
39
+ }
40
+
41
+ @font-face {
42
+ font-family: 'Piazzolla';
43
+ src: url('../fonts/Piazzolla-MediumItalic.woff2') format('woff2');
44
+ font-style: italic;
45
+ font-weight: 500;
46
+ text-rendering: optimizeLegibility;
47
+ }
48
+
49
+ @font-face {
50
+ font-family: 'Piazzolla';
51
+ src: url('../fonts/Piazzolla-Bold.woff2') format('woff2');
52
+ font-style: normal;
53
+ font-weight: 700;
54
+ text-rendering: optimizeLegibility;
55
+ }
56
+
57
+ @font-face {
58
+ font-family: 'Piazzolla';
59
+ src: url('../fonts/Piazzolla-BoldItalic.woff2') format('woff2');
60
+ font-style: italic;
61
+ font-weight: 700;
62
+ text-rendering: optimizeLegibility;
63
+ }
64
+
65
+ @font-face {
66
+ font-family: 'Piazzolla SC';
67
+ src: url('../fonts/PiazzollaSC-Light.woff2') format('woff2');
68
+ font-style: normal;
69
+ font-weight: 300;
70
+ text-rendering: optimizeLegibility;
71
+ }
72
+
73
+ @font-face {
74
+ font-family: 'Piazzolla SC';
75
+ src: url('../fonts/PiazzollaSC-LightItalic.woff2') format('woff2');
76
+ font-style: italic;
77
+ font-weight: 300;
78
+ text-rendering: optimizeLegibility;
79
+ }
80
+
81
+ @font-face {
82
+ font-family: 'Piazzolla SC';
83
+ src: url('../fonts/PiazzollaSC-Regular.woff2') format('woff2');
84
+ font-style: normal;
85
+ font-weight: 400;
86
+ text-rendering: optimizeLegibility;
87
+ }
88
+
89
+ @font-face {
90
+ font-family: 'Piazzolla SC';
91
+ src: url('../fonts/PiazzollaSC-Italic.woff2') format('woff2');
92
+ font-style: italic;
93
+ font-weight: 400;
94
+ text-rendering: optimizeLegibility;
95
+ }
96
+
97
+ @font-face {
98
+ font-family: 'Piazzolla SC';
99
+ src: url('../fonts/PiazzollaSC-Medium.woff2') format('woff2');
100
+ font-style: normal;
101
+ font-weight: 500;
102
+ text-rendering: optimizeLegibility;
103
+ }
104
+
105
+ @font-face {
106
+ font-family: 'Piazzolla SC';
107
+ src: url('../fonts/PiazzollaSC-MediumItalic.woff2') format('woff2');
108
+ font-style: italic;
109
+ font-weight: 500;
110
+ text-rendering: optimizeLegibility;
111
+ }
112
+
113
+ @font-face {
114
+ font-family: 'Piazzolla SC';
115
+ src: url('../fonts/PiazzollaSC-Bold.woff2') format('woff2');
116
+ font-style: normal;
117
+ font-weight: 700;
118
+ text-rendering: optimizeLegibility;
119
+ }
120
+
121
+ @font-face {
122
+ font-family: 'Piazzolla SC';
123
+ src: url('../fonts/PiazzollaSC-BoldItalic.woff2') format('woff2');
124
+ font-style: italic;
125
+ font-weight: 700;
126
+ text-rendering: optimizeLegibility;
127
+ }
128
+
129
+ @font-face {
130
+ font-family: 'Hack';
131
+ src: url('../fonts/hack-regular-subset.woff2') format('woff2');
132
+ font-style: normal;
133
+ font-weight: 400;
134
+ text-rendering: optimizeLegibility;
135
+ }
136
+
137
+ @font-face {
138
+ font-family: 'Hack';
139
+ src: url('../fonts/hack-italic-subset.woff2') format('woff2');
140
+ font-style: italic;
141
+ font-weight: 400;
142
+ text-rendering: optimizeLegibility;
143
+ }
144
+
145
+ @font-face {
146
+ font-family: 'Hack';
147
+ src: url('../fonts/hack-bold-subset.woff2') format('woff2');
148
+ font-style: normal;
149
+ font-weight: 700;
150
+ text-rendering: optimizeLegibility;
151
+ }
152
+
153
+ @font-face {
154
+ font-family: 'Hack';
155
+ src: url('../fonts/hack-bolditalic-subset.woff2') format('woff2');
156
+ font-style: italic;
157
+ font-weight: 700;
158
+ text-rendering: optimizeLegibility;
159
+ }
@@ -0,0 +1,42 @@
1
+ h1,h2,h3 {
2
+ color: var(--color-heading);
3
+
4
+ a {
5
+ color: inherit;
6
+
7
+ &:focus,
8
+ &:hover {
9
+ border-color: inherit;
10
+ color: inherit;
11
+ }
12
+ }
13
+ }
14
+
15
+ h1 {
16
+ font-size: 1.5em;
17
+
18
+ &.page-title {
19
+ margin: 0;
20
+ }
21
+ }
22
+
23
+ #home h1 {
24
+ margin-top: 1.5em;
25
+ }
26
+
27
+ h2 {
28
+ margin-top: 1.25em;
29
+ font-size: 1.25em;
30
+ }
31
+
32
+ h3 {
33
+ margin-top: 1em;
34
+ font-size: 1em;
35
+ text-transform: lowercase;
36
+ font-family: var(--type-caps);
37
+ font-weight: 500;
38
+ }
39
+
40
+ h2 + h3 {
41
+ margin-top: 0;
42
+ }
data/_sass/_media.scss ADDED
@@ -0,0 +1,93 @@
1
+ @media (prefers-color-scheme: dark) {
2
+ html,
3
+ html[data-theme="dark"] {
4
+ --color-background: var(--oc-gray-9);
5
+ --color-text: var(--oc-gray-3);
6
+ --color-heading: var(--oc-gray-3);
7
+ --color-code: var(--oc-gray-3);
8
+ --color-link: var(--oc-blue-3);
9
+ --color-mark: var(--oc-gray-8);
10
+ --color-border: var(--oc-gray-7);
11
+ --color-button: var(--oc-gray-7);
12
+ }
13
+
14
+ html[data-theme="light"] {
15
+ --color-background: var(--oc-gray-1);
16
+ --color-text: var(--oc-gray-8);
17
+ --color-heading: var(--oc-gray-8);
18
+ --color-code: var(--oc-gray-8);
19
+ --color-link: var(--oc-blue-8);
20
+ --color-mark: var(--oc-yellow-3);
21
+ --color-border: var(--oc-gray-4);
22
+ --color-button: var(--oc-gray-6);
23
+ }
24
+ }
25
+
26
+ @media screen and (min-width: 768px) {
27
+ body {
28
+ font-size: 1.25em;
29
+ }
30
+
31
+ .particles-title {
32
+ font-size: 3.5em;
33
+ }
34
+
35
+ .particles-subtitle {
36
+ font-size: 1.75em;
37
+ }
38
+
39
+ .particles-icon {
40
+ margin: 0 1em;
41
+
42
+ svg {
43
+ -webkit-transform: scale(2.4);
44
+ transform: scale(2.4);
45
+ }
46
+ }
47
+
48
+ .particles-scroll svg {
49
+ -webkit-transform: scale(3.6);
50
+ transform: scale(3.6);
51
+ }
52
+ }
53
+
54
+ @media only print {
55
+ body {
56
+ font-size: 10pt;
57
+ background-color: white;
58
+ color: black;
59
+ }
60
+
61
+ a {
62
+ color: black;
63
+ }
64
+
65
+ dd {
66
+ padding-left: 1.5em;
67
+ }
68
+
69
+ .pagination {
70
+ display: none;
71
+ }
72
+
73
+ #cv {
74
+ header {
75
+ margin: 0;
76
+ }
77
+
78
+ .site-title {
79
+ font-size: 1.5em;
80
+ }
81
+
82
+ small {
83
+ display: none;
84
+ }
85
+
86
+ .toggle-icon,
87
+ .li-icon,
88
+ .reversefootnote,
89
+ a.iconlink {
90
+ display: none;
91
+ }
92
+ }
93
+ }
@@ -0,0 +1,47 @@
1
+ .pagination {
2
+ display: flex;
3
+ margin-top: 2em;
4
+ text-align: center;
5
+ }
6
+
7
+ .pagination-item {
8
+ float: left;
9
+ width: 50%;
10
+ padding: 1em 2em;
11
+ border: 0.075em solid var(--color-border);
12
+ color: var(--color-button);
13
+ -webkit-transition: all 0.1s ease-in-out;
14
+ transition: all 0.1s ease-in-out;
15
+
16
+ svg circle,
17
+ svg path {
18
+ stroke: var(--color-button);
19
+ }
20
+
21
+ &:first-child {
22
+ margin-bottom: 0;
23
+ border-top-left-radius: var(--border-radius);
24
+ border-bottom-left-radius: var(--border-radius);
25
+ }
26
+
27
+ &:last-child {
28
+ margin-left: -1px;
29
+ border-top-right-radius: var(--border-radius);
30
+ border-bottom-right-radius: var(--border-radius);
31
+ }
32
+ }
33
+
34
+ a.pagination-item {
35
+ color: var(--color-text);
36
+
37
+ svg circle,
38
+ svg path {
39
+ stroke: var(--color-text);
40
+ }
41
+
42
+ &:focus,
43
+ &:hover {
44
+ background-color: var(--color-border);
45
+ border: 0.075em solid var(--color-border);
46
+ }
47
+ }
@@ -0,0 +1,99 @@
1
+ #particles-js {
2
+ width: 100%;
3
+ background-repeat: no-repeat;
4
+ background-size: cover;
5
+ background-attachment: fixed;
6
+ background-color: var(--color-particles-background);
7
+
8
+ .particles-js-canvas-el {
9
+ width: 100%;
10
+ height: 99.5vh !important;
11
+ }
12
+
13
+ .jumbotron {
14
+ position: absolute;
15
+ top: 44%;
16
+ left: 50%;
17
+ -webkit-transform: translate(-50%, -50%);
18
+ transform: translate(-50%, -50%);
19
+ pointer-events: none;
20
+ }
21
+ }
22
+
23
+ .fullscreen {
24
+ min-height: 100vh;
25
+
26
+ h1,
27
+ h2 {
28
+ color: var(--color-particles-text);
29
+ }
30
+ }
31
+
32
+ .particles-photo {
33
+ width: 50%;
34
+ border-radius: 50%;
35
+ margin: auto;
36
+ margin-bottom: 0.5em;
37
+ }
38
+
39
+ .particles-title {
40
+ margin: 0;
41
+ font-size: 2.5em;
42
+ font-weight: 500;
43
+ white-space: nowrap;
44
+ }
45
+
46
+ .particles-subtitle {
47
+ margin: 0 0 1em 0;
48
+ font-size: 1.25em;
49
+ font-weight: 400;
50
+ }
51
+
52
+ .nowrap {
53
+ white-space: nowrap;
54
+ }
55
+
56
+ .particles-icon {
57
+ margin: 0 0.5em;
58
+ pointer-events: all;
59
+
60
+ svg {
61
+ -webkit-transform: scale(1.8);
62
+ transform: scale(1.8);
63
+ }
64
+
65
+ svg circle,
66
+ svg path {
67
+ stroke: var(--color-particles-text) !important;
68
+ stroke-width: 0.05em;
69
+ }
70
+
71
+ &:focus,
72
+ &:hover {
73
+ border: none;
74
+
75
+ svg circle,
76
+ svg path {
77
+ stroke-width: 0.075em;
78
+ }
79
+ }
80
+ }
81
+
82
+ .particles-scroll {
83
+ position: absolute;
84
+ bottom: 5%;
85
+ left: 50%;
86
+ -webkit-transform: translate(-50%, -50%);
87
+ transform: translate(-50%, -50%);
88
+
89
+ .particles-icon {
90
+ position: relative;
91
+ -webkit-animation: pulse 1s infinite;
92
+ animation: pulse 1s infinite;
93
+ }
94
+
95
+ svg {
96
+ -webkit-transform: scale(2.7);
97
+ transform: scale(2.7);
98
+ }
99
+ }
data/_sass/_pulse.scss ADDED
@@ -0,0 +1,22 @@
1
+ @keyframes pulse {
2
+ from {
3
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
4
+ filter: alpha(opacity=40);
5
+ opacity: .4;
6
+ top: 0;
7
+ }
8
+
9
+ 50% {
10
+ -ms-filter: none;
11
+ filter: none;
12
+ opacity: 1;
13
+ top: -1rem;
14
+ }
15
+
16
+ to {
17
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
18
+ filter: alpha(opacity=40);
19
+ opacity: .4;
20
+ top: 0
21
+ }
22
+ }
@@ -0,0 +1,34 @@
1
+ :root {
2
+ --type-serif: "Piazzolla", serif;
3
+ --type-caps: "Piazzolla SC", serif;
4
+ --type-mono: "Hack", monospace;
5
+ --type-size: 18px;
6
+ --type-weight: 400;
7
+ --type-height: 1.4;
8
+ --type-numeric: oldstyle-nums proportional-nums;
9
+ --color-particles-text: var(--oc-gray-1);
10
+ --color-particles-background: var(--oc-gray-9);
11
+ }
12
+
13
+ html,
14
+ html[data-theme="light"] {
15
+ --color-background: var(--oc-gray-1);
16
+ --color-text: var(--oc-gray-8);
17
+ --color-heading: var(--oc-gray-8);
18
+ --color-link: var(--oc-blue-8);
19
+ --color-chunk: var(--oc-gray-8);
20
+ --color-mark: var(--oc-yellow-3);
21
+ --color-border: var(--oc-gray-4);
22
+ --color-button: var(--oc-gray-6);
23
+ }
24
+
25
+ html[data-theme="dark"] {
26
+ --color-background: var(--oc-gray-9);
27
+ --color-text: var(--oc-gray-3);
28
+ --color-heading: var(--oc-gray-3);
29
+ --color-link: var(--oc-blue-3);
30
+ --color-chunk: var(--oc-gray-8);
31
+ --color-mark: var(--oc-gray-8);
32
+ --color-border: var(--oc-gray-7);
33
+ --color-button: var(--oc-gray-7);
34
+ }