aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--content/cv.md30
-rw-r--r--package.json6
-rw-r--r--source/assets/default.css26
-rw-r--r--source/layouts/comments.njk2
-rw-r--r--source/layouts/draft.njk77
-rw-r--r--source/layouts/footer.njk42
-rw-r--r--source/layouts/index.njk114
-rw-r--r--source/layouts/navigation.njk24
-rw-r--r--source/layouts/page.njk72
-rw-r--r--source/layouts/post.njk81
10 files changed, 264 insertions, 210 deletions
diff --git a/content/cv.md b/content/cv.md
index 0d4aeb4..ca02245 100644
--- a/content/cv.md
+++ b/content/cv.md
@@ -6,14 +6,13 @@ slug: curriculum-vitae
6--- 6---
7 7
8**Mitja Felicijan** 8**Mitja Felicijan**
9*Embedded systems developer*
10*[mitja.felicijan@gmail.com](mailto:mitja.felicijan@gmail.com?subject=Website+CV+Contact)* 9*[mitja.felicijan@gmail.com](mailto:mitja.felicijan@gmail.com?subject=Website+CV+Contact)*
11*Slovenia, EU* 10*Slovenia, EU*
12 11
13## Technical experience 12## Technical experience
14 13
15- **Key languages:** Golang, Python, C/C++, Bash, C#, Java, Perl. 14- **Key languages:** Golang, Python, C, Bash.
16- **Platforms:** GNU/Linux, Arch, Debian, Gentoo, Red Hat, Custom distros. 15- **Platforms:** GNU/Linux, macOS.
17- **Fields of study:** Zigbee, KNX, Modbus, Machine to Machine, Embedded systems, Operating systems, Distributed systems, IOT, RDBMS, Algorithms, Database engine design, SQL, NoSQL, NewSQL, Big data analytics, Machine learning, Prediction algorithms, Realtime analytics, Systems automation, Natural language processing, Bioinformatics. 16- **Fields of study:** Zigbee, KNX, Modbus, Machine to Machine, Embedded systems, Operating systems, Distributed systems, IOT, RDBMS, Algorithms, Database engine design, SQL, NoSQL, NewSQL, Big data analytics, Machine learning, Prediction algorithms, Realtime analytics, Systems automation, Natural language processing, Bioinformatics.
18 17
19## Major projects 18## Major projects
@@ -37,15 +36,20 @@ slug: curriculum-vitae
37- Wireless industrial lighting management system - hardware and software (2016) 36- Wireless industrial lighting management system - hardware and software (2016)
38- Minimal configuration reverse proxy (2017) 37- Minimal configuration reverse proxy (2017)
39- Industrial IOT platform for deployment on on-premise (2018) 38- Industrial IOT platform for deployment on on-premise (2018)
39- Custom Platform as a service based on Docker Swarm (2018)
40- Toolkit for encoding binary data into DNA sequence (2019)
41- Minimal configuration reverse proxy with load balancing and rate limiting (2019)
42- E-ink conference room occupancy display, hadrware and software solution (2019)
40 43
41## Employment history 44## Employment history
42 45
43- Freelancer (2001 – Present) 46- Freelancer (2001 – Present)
44- Software developer at Mobinia (2005 – 2007) 47- Software developer at Mobinia (2005 – 2007)
45- CTO at Milk (2007 – 2009) 48- CTO at Milk (2007 – 2009)
46- Founder and CTO of UTS (2009 – 2014) 49- Co-Founder of UTS (2009 – 2014)
47- Founding member of Origami Group (2014 – 2017)
48- Senior Software Engineer at TSmedia (2015 - 2017) 50- Senior Software Engineer at TSmedia (2015 - 2017)
51- Senior Software Engineer at Renderspace (2017 - 2019)
52- IT Consultant (2017 – Present)
49 53
50## Awards 54## Awards
51 55
@@ -54,11 +58,11 @@ slug: curriculum-vitae
54 58
55## Key responsibilities 59## Key responsibilities
56 60
57- Responsible for embedded platforms development. 61- Embedded platform development.
58- Responsible for hardware design and driver development. 62- Hardware design and driver development.
59- Responsible for the designing, develop and test the systems. 63- Designing, developing and testing systems.
60- Responsible for implementation of the systems. 64- Implementation of the systems.
61- Responsible for writing and maintaining user and technical documents. 65- Writing and maintaining user and technical documents.
62- Responsible for development and maintenance of the project. 66- Development and maintenance of the project.
63- Responsible for code revision, testing and output. 67- Code revision, testing and output.
64- Work on the enhancement suggested by the customers and fixes the bugs reported.) 68- Work on the enhancement suggested by the customers and fixes the bugs reported.
diff --git a/package.json b/package.json
index ab61dc9..0cae7e9 100644
--- a/package.json
+++ b/package.json
@@ -20,13 +20,13 @@
20 "gulp-terser": "^1.2.0", 20 "gulp-terser": "^1.2.0",
21 "html-minifier": "^4.0.0", 21 "html-minifier": "^4.0.0",
22 "http-server": "^0.11.1", 22 "http-server": "^0.11.1",
23 "markdown-it": "^9.1.0", 23 "markdown-it": "^10.0.0",
24 "markdown-it-anchor": "^5.2.4", 24 "markdown-it-anchor": "^5.2.5",
25 "markdown-it-checkbox": "^1.1.0", 25 "markdown-it-checkbox": "^1.1.0",
26 "markdown-it-deflist": "^2.0.3", 26 "markdown-it-deflist": "^2.0.3",
27 "markdown-it-footnote": "^3.0.2", 27 "markdown-it-footnote": "^3.0.2",
28 "markdown-it-prism": "^2.0.3", 28 "markdown-it-prism": "^2.0.3",
29 "nunjucks": "^3.2.0", 29 "nunjucks": "^3.2.0",
30 "yaml": "^1.6.0" 30 "yaml": "^1.7.2"
31 } 31 }
32} 32}
diff --git a/source/assets/default.css b/source/assets/default.css
index 0d1b09e..ee88a25 100644
--- a/source/assets/default.css
+++ b/source/assets/default.css
@@ -5,8 +5,8 @@
5* { 5* {
6 box-sizing: border-box; 6 box-sizing: border-box;
7 -moz-osx-font-smoothing: grayscale !important; 7 -moz-osx-font-smoothing: grayscale !important;
8 text-rendering: optimizeLegibility !important; 8 text-rendering: optimizeLegibility !important;
9 -webkit-font-smoothing: antialiased !important; 9 -webkit-font-smoothing: antialiased !important;
10} 10}
11 11
12body { 12body {
@@ -55,7 +55,7 @@ img {
55} 55}
56 56
57.wrapper { 57.wrapper {
58 max-width: 800px; 58 max-width: 720px;
59 margin: 0 auto; 59 margin: 0 auto;
60} 60}
61 61
@@ -301,6 +301,26 @@ article img.large {
301 } 301 }
302} 302}
303 303
304/******************************************************************* COMMENTS */
305
306#commento {
307 margin-top: 75px;
308}
309
310#commento-footer {
311 display: none !important;
312}
313
314#commento-submit-button-root {
315 background: #fff !important;
316 color: #495057 !important;
317 box-shadow: none !important;
318}
319
320.commento-avatar-img {
321 margin-top: 0 !important;
322}
323
304/********************************************************************** PRINT */ 324/********************************************************************** PRINT */
305 325
306@media print { 326@media print {
diff --git a/source/layouts/comments.njk b/source/layouts/comments.njk
new file mode 100644
index 0000000..7ee4af8
--- /dev/null
+++ b/source/layouts/comments.njk
@@ -0,0 +1,2 @@
1<div id="commento"></div>
2<script src="https://cdn.commento.io/js/commento.js"></script>
diff --git a/source/layouts/draft.njk b/source/layouts/draft.njk
index 72923c9..0f2091c 100644
--- a/source/layouts/draft.njk
+++ b/source/layouts/draft.njk
@@ -1,61 +1,62 @@
1<!DOCTYPE html> 1<!DOCTYPE html>
2<html lang="en"> 2<html lang="en">
3 3
4<head> 4 <head>
5 <meta charset="utf-8"> 5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <meta http-equiv="X-UA-Compatible" content="ie=edge">
8 <meta name="theme-color" content="#ffffff"> 8 <meta name="theme-color" content="#ffffff">
9 9
10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA"> 10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA">
11 11
12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}"> 12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}">
13 13
14 <title>{{ title }}</title> 14 <title>{{ title }}</title>
15 <meta name="author" content="{{ vars.author }}"> 15 <meta name="author" content="{{ vars.author }}">
16 <meta name="description" content="{{ description }}"> 16 <meta name="description" content="{{ description }}">
17 17
18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}"> 18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}">
19 <meta name="og:type" content="website"> 19 <meta name="og:type" content="website">
20 <meta name="og:title" content="{{ title }}"> 20 <meta name="og:title" content="{{ title }}">
21 <meta name="og:description" content="{{ description }}"> 21 <meta name="og:description" content="{{ description }}">
22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
23 23
24 <meta name="twitter:card" content="summary"> 24 <meta name="twitter:card" content="summary">
25 <meta name="twitter:site" content="@mitjafelicijan"> 25 <meta name="twitter:site" content="@mitjafelicijan">
26 <meta name="twitter:title" content="{{ title }}"> 26 <meta name="twitter:title" content="{{ title }}">
27 <meta name="twitter:description" content="{{ description }}"> 27 <meta name="twitter:description" content="{{ description }}">
28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
29 29
30 {{ css }} 30 {{ css }}
31 31
32</head> 32 </head>
33 33
34<body> 34 <body>
35 35
36 <main class="wrapper"> 36 <main class="wrapper">
37 37
38 {% include "navigation.njk" %} 38 {% include "navigation.njk" %}
39 39
40 <article> 40 <article>
41 41
42 <header> 42 <header>
43 <h1>{{ title }}</h1> 43 <h1>{{ title }}</h1>
44 <p class="pubdate">Published on 44 <p class="pubdate">Published on
45 <time pubdate="{{ writtenDate.original }}">{{ writtenDate.formatted }}</time> 45 <time pubdate="{{ writtenDate.original }}">{{ writtenDate.formatted }}</time>
46 by {{ vars.author }}</p> 46 by
47 </header> 47 {{ vars.author }}</p>
48 </header>
48 49
49 {{ content|safe }} 50 {{ content|safe }}
50 51
51 </article> 52 </article>
52 53
53 {{ javascript }} 54 {{ javascript }}
54 55
55 {% include "footer.njk" %} 56 {% include "footer.njk" %}
56 57
57 </main> 58 </main>
58 59
59</body> 60 </body>
60 61
61</html> 62</html>
diff --git a/source/layouts/footer.njk b/source/layouts/footer.njk
index 6fbb1b8..c4cf79e 100644
--- a/source/layouts/footer.njk
+++ b/source/layouts/footer.njk
@@ -7,29 +7,41 @@
7 7
8<!-- MathJax --> 8<!-- MathJax -->
9<script type="text/x-mathjax-config"> 9<script type="text/x-mathjax-config">
10 MathJax.Hub.Config({ 10 MathJax
11 TeX: { 11 .Hub
12 equationNumbers: { 12 .Config({
13 autoNumber: "AMS" 13 TeX: {
14 equationNumbers: {
15 autoNumber: "AMS"
16 }
17 },
18 tex2jax: {
19 inlineMath: [
20 [
21 '$', '$'
22 ],
23 [
24 '\\(', '\\)'
25 ]
26 ],
27 displayMath: [
28 ['$$', '$$']
29 ],
30 processEscapes: true
14 } 31 }
15 }, 32 });
16 tex2jax: {
17 inlineMath: [ ['$','$'], ['\\(', '\\)'] ],
18 displayMath: [ ['$$','$$'] ],
19 processEscapes: true,
20 }
21 });
22</script> 33</script>
23 34
24<!-- Global site tag (gtag.js) - Google Analytics --> 35<!-- Global site tag (gtag.js) - Google Analytics -->
25<script async src="https://www.googletagmanager.com/gtag/js?id=UA-12769079-10"></script> 36<script async="async" src="https://www.googletagmanager.com/gtag/js?id=UA-12769079-10"></script>
26<script> 37<script>
27 window.dataLayer = window.dataLayer || []; 38 window.dataLayer = window.dataLayer || [];
28 function gtag() { dataLayer.push(arguments); } 39 function gtag() {
40 dataLayer.push(arguments);
41 }
29 gtag('js', new Date()); 42 gtag('js', new Date());
30 43
31 gtag('config', 'UA-12769079-10'); 44 gtag('config', 'UA-12769079-10');
32</script> 45</script>
33 46
34 47<script src="//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML" async="async"></script>
35<script src="//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML" async></script>
diff --git a/source/layouts/index.njk b/source/layouts/index.njk
index c4912a7..9e2fde8 100644
--- a/source/layouts/index.njk
+++ b/source/layouts/index.njk
@@ -1,80 +1,80 @@
1<!DOCTYPE html> 1<!DOCTYPE html>
2<html lang="en"> 2<html lang="en">
3 3
4<head> 4 <head>
5 <meta charset="utf-8"> 5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <meta http-equiv="X-UA-Compatible" content="ie=edge">
8 <meta name="theme-color" content="#ffffff"> 8 <meta name="theme-color" content="#ffffff">
9 9
10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA"> 10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA">
11 11
12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}"> 12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}">
13 13
14 <title>{{ vars.title }}</title> 14 <title>{{ vars.title }}</title>
15 <meta name="author" content="{{ vars.author }}"> 15 <meta name="author" content="{{ vars.author }}">
16 <meta name="description" content="{{ vars.description }}"> 16 <meta name="description" content="{{ vars.description }}">
17 17
18 <meta name="og:url" content="{{ vars.domain }}"> 18 <meta name="og:url" content="{{ vars.domain }}">
19 <meta name="og:type" content="website"> 19 <meta name="og:type" content="website">
20 <meta name="og:title" content="{{ vars.title }}"> 20 <meta name="og:title" content="{{ vars.title }}">
21 <meta name="og:description" content="{{ vars.description }}"> 21 <meta name="og:description" content="{{ vars.description }}">
22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
23 23
24 <meta name="twitter:card" content="summary"> 24 <meta name="twitter:card" content="summary">
25 <meta name="twitter:site" content="@mitjafelicijan"> 25 <meta name="twitter:site" content="@mitjafelicijan">
26 <meta name="twitter:title" content="{{ vars.title }}"> 26 <meta name="twitter:title" content="{{ vars.title }}">
27 <meta name="twitter:description" content="{{ vars.description }}"> 27 <meta name="twitter:description" content="{{ vars.description }}">
28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
29 29
30 {{ css }} 30 {{ css }}
31 31
32</head> 32 </head>
33 33
34<body> 34 <body>
35 35
36 <main class="wrapper"> 36 <main class="wrapper">
37 37
38 {% include "navigation.njk" %} 38 {% include "navigation.njk" %}
39 39
40 <div class="list"> 40 <div class="list">
41 41
42 <h3>Research</h3> 42 <h3>Research</h3>
43 <nav class="article-list"> 43 <nav class="article-list">
44 {% for post in posts %} 44 {% for post in posts %}
45 {% if post.type == "research" %} 45 {% if post.type == "research" %}
46 <article> 46 <article>
47 <a href="/{{ post.slug }}" aria-label="Read more about {{ post.title }}"> 47 <a href="/{{ post.slug }}" aria-label="Read more about {{ post.title }}">
48 <time pubdate="{{ post.dateOriginal }}" class="pubdate">{{ post.dateFormatted }}</time> 48 <time pubdate="{{ post.dateOriginal }}" class="pubdate">{{ post.dateFormatted }}</time>
49 <h2>{{ post.title }}</h2> 49 <h2>{{ post.title }}</h2>
50 </a> 50 </a>
51 </article> 51 </article>
52 {% endif %} 52 {% endif %}
53 {% endfor %} 53 {% endfor %}
54 </nav> 54 </nav>
55 55
56 <h3>General</h3> 56 <h3>General</h3>
57 <nav class="article-list"> 57 <nav class="article-list">
58 {% for post in posts %} 58 {% for post in posts %}
59 {% if post.type != "research" %} 59 {% if post.type != "research" %}
60 <article> 60 <article itemtype="http://schema.org/Article">
61 <a href="/{{ post.slug }}" aria-label="Read more about {{ post.title }}"> 61 <a href="/{{ post.slug }}" aria-label="Read more about {{ post.title }}" itemprop="url" rel="bookmark">
62 <time pubdate="{{ post.dateOriginal }}" class="pubdate">{{ post.dateFormatted }}</time> 62 <time pubdate="{{ post.dateOriginal }}" class="pubdate">{{ post.dateFormatted }}</time>
63 <h2>{{ post.title }}</h2> 63 <h2>{{ post.title }}</h2>
64 </a> 64 </a>
65 </article> 65 </article>
66 {% endif %} 66 {% endif %}
67 {% endfor %} 67 {% endfor %}
68 </nav> 68 </nav>
69 69
70 </div> 70 </div>
71 71
72 {{ javascript }} 72 {{ javascript }}
73 73
74 {% include "footer.njk" %} 74 {% include "footer.njk" %}
75 75
76 </main> 76 </main>
77 77
78</body> 78 </body>
79 79
80</html> 80</html>
diff --git a/source/layouts/navigation.njk b/source/layouts/navigation.njk
index 8814fc1..c5c6c80 100644
--- a/source/layouts/navigation.njk
+++ b/source/layouts/navigation.njk
@@ -3,9 +3,18 @@
3 <a href="/" class="logo">Mitja Felicijan</a> 3 <a href="/" class="logo">Mitja Felicijan</a>
4 </div> 4 </div>
5 <nav> 5 <nav>
6 <a href="//github.com/mitjafelicijan" aria-label="Github"> 6
7 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 7 <a href="/curriculum-vitae" title="Curriculum Vitae" aria-label="Curriculum Vitae">
8 viewBox="0 0 92 92" style="enable-background:new 0 0 92 92;" xml:space="preserve"> 8 <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24">
9 <g>
10 <path fill="none" d="M0 0h24v24H0z"/>
11 <path d="M7 5V2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v3h4a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4zM4 15v4h16v-4H4zm7-4v2h2v-2h-2zM9 3v2h6V3H9z"/>
12 </g>
13 </svg>
14 </a>
15
16 <a href="//github.com/mitjafelicijan" title="Github" aria-label="Github">
17 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewbox="0 0 92 92" style="enable-background:new 0 0 92 92;" xml:space="preserve">
9 <g> 18 <g>
10 <path style="fill:#030104;" d="M61.896,52.548c-3.59,0-6.502,4.026-6.502,8.996c0,4.971,2.912,8.999,6.502,8.999 19 <path style="fill:#030104;" d="M61.896,52.548c-3.59,0-6.502,4.026-6.502,8.996c0,4.971,2.912,8.999,6.502,8.999
11 c3.588,0,6.498-4.028,6.498-8.999C68.395,56.574,65.484,52.548,61.896,52.548z M84.527,29.132c0.74-1.826,0.777-12.201-3.17-22.132 20 c3.588,0,6.498-4.028,6.498-8.999C68.395,56.574,65.484,52.548,61.896,52.548z M84.527,29.132c0.74-1.826,0.777-12.201-3.17-22.132
@@ -16,14 +25,13 @@
16 c0-4.389,1.549-8.465,5.229-11.847c6.141-5.636,16.527-2.651,28.316-2.651c0.045,0,0.093-0.001,0.141-0.003 25 c0-4.389,1.549-8.465,5.229-11.847c6.141-5.636,16.527-2.651,28.316-2.651c0.045,0,0.093-0.001,0.141-0.003
17 c0.049,0.002,0.096,0.003,0.141,0.003c11.789,0,22.178-2.984,28.316,2.651c3.68,3.382,5.229,7.458,5.229,11.847 26 c0.049,0.002,0.096,0.003,0.141,0.003c11.789,0,22.178-2.984,28.316,2.651c3.68,3.382,5.229,7.458,5.229,11.847
18 C79.686,78.322,65,80.574,46.141,80.574z M30.104,52.548c-3.588,0-6.498,4.026-6.498,8.996c0,4.971,2.91,8.999,6.498,8.999 27 C79.686,78.322,65,80.574,46.141,80.574z M30.104,52.548c-3.588,0-6.498,4.026-6.498,8.996c0,4.971,2.91,8.999,6.498,8.999
19 c3.592,0,6.502-4.028,6.502-8.999C36.605,56.574,33.695,52.548,30.104,52.548z" /> 28 c3.592,0,6.502-4.028,6.502-8.999C36.605,56.574,33.695,52.548,30.104,52.548z"/>
20 </g> 29 </g>
21 </svg> 30 </svg>
22 </a> 31 </a>
23 32
24 <a href="//twitter.com/mitjafelicijan" aria-label="Twitter"> 33 <a href="//twitter.com/mitjafelicijan" title="Twitter" aria-label="Twitter">
25 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 34 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewbox="0 0 612 612" style="enable-background:new 0 0 612 612;" xml:space="preserve">
26 viewBox="0 0 612 612" style="enable-background:new 0 0 612 612;" xml:space="preserve">
27 <g> 35 <g>
28 <path style="fill:#010002;" d="M612,116.258c-22.525,9.981-46.694,16.75-72.088,19.772c25.929-15.527,45.777-40.155,55.184-69.411 36 <path style="fill:#010002;" d="M612,116.258c-22.525,9.981-46.694,16.75-72.088,19.772c25.929-15.527,45.777-40.155,55.184-69.411
29 c-24.322,14.379-51.169,24.82-79.775,30.48c-22.907-24.437-55.49-39.658-91.63-39.658c-69.334,0-125.551,56.217-125.551,125.513 37 c-24.322,14.379-51.169,24.82-79.775,30.48c-22.907-24.437-55.49-39.658-91.63-39.658c-69.334,0-125.551,56.217-125.551,125.513
@@ -31,7 +39,7 @@
31 c0,43.559,22.181,81.993,55.835,104.479c-20.575-0.688-39.926-6.348-56.867-15.756v1.568c0,60.806,43.291,111.554,100.693,123.104 39 c0,43.559,22.181,81.993,55.835,104.479c-20.575-0.688-39.926-6.348-56.867-15.756v1.568c0,60.806,43.291,111.554,100.693,123.104
32 c-10.517,2.83-21.607,4.398-33.08,4.398c-8.107,0-15.947-0.803-23.634-2.333c15.985,49.907,62.336,86.199,117.253,87.194 40 c-10.517,2.83-21.607,4.398-33.08,4.398c-8.107,0-15.947-0.803-23.634-2.333c15.985,49.907,62.336,86.199,117.253,87.194
33 c-42.947,33.654-97.099,53.655-155.916,53.655c-10.134,0-20.116-0.612-29.944-1.721c55.567,35.681,121.536,56.485,192.438,56.485 41 c-42.947,33.654-97.099,53.655-155.916,53.655c-10.134,0-20.116-0.612-29.944-1.721c55.567,35.681,121.536,56.485,192.438,56.485
34 c230.948,0,357.188-191.291,357.188-357.188l-0.421-16.253C573.872,163.526,595.211,141.422,612,116.258z" /> 42 c230.948,0,357.188-191.291,357.188-357.188l-0.421-16.253C573.872,163.526,595.211,141.422,612,116.258z"/>
35 </g> 43 </g>
36 </svg> 44 </svg>
37 </a> 45 </a>
diff --git a/source/layouts/page.njk b/source/layouts/page.njk
index a2434a1..89aea8b 100644
--- a/source/layouts/page.njk
+++ b/source/layouts/page.njk
@@ -1,58 +1,60 @@
1<!DOCTYPE html> 1<!DOCTYPE html>
2<html lang="en"> 2<html lang="en">
3 3
4<head> 4 <head>
5 <meta charset="utf-8"> 5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <meta http-equiv="X-UA-Compatible" content="ie=edge">
8 <meta name="theme-color" content="#ffffff"> 8 <meta name="theme-color" content="#ffffff">
9 9
10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA"> 10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA">
11 11
12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}"> 12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}">
13 13
14 <title>{{ title }}</title> 14 <title>{{ title }}</title>
15 <meta name="author" content="{{ vars.author }}"> 15 <meta name="author" content="{{ vars.author }}">
16 <meta name="description" content="{{ description }}"> 16 <meta name="description" content="{{ description }}">
17 17
18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}"> 18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}">
19 <meta name="og:type" content="website"> 19 <meta name="og:type" content="website">
20 <meta name="og:title" content="{{ title }}"> 20 <meta name="og:title" content="{{ title }}">
21 <meta name="og:description" content="{{ description }}"> 21 <meta name="og:description" content="{{ description }}">
22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
23 23
24 <meta name="twitter:card" content="summary"> 24 <meta name="twitter:card" content="summary">
25 <meta name="twitter:site" content="@mitjafelicijan"> 25 <meta name="twitter:site" content="@mitjafelicijan">
26 <meta name="twitter:title" content="{{ title }}"> 26 <meta name="twitter:title" content="{{ title }}">
27 <meta name="twitter:description" content="{{ description }}"> 27 <meta name="twitter:description" content="{{ description }}">
28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
29 29
30 {{ css }} 30 {{ css }}
31 31
32</head> 32 </head>
33 33
34<body> 34 <body>
35 35
36 <main class="wrapper"> 36 <main class="wrapper">
37 37
38 {% include "navigation.njk" %} 38 {% include "navigation.njk" %}
39 39
40 <article> 40 <article itemtype="http://schema.org/Article">
41 41
42 <header> 42 <header>
43 <h1>{{ title }}</h1> 43 <h1>{{ title }}</h1>
44 </header> 44 </header>
45 45
46 {{ content }} 46 <div>
47 {{ content|safe }}
48 </div>
47 49
48 </article> 50 </article>
49 51
50 {{ javascript }} 52 {{ javascript }}
51 53
52 {% include "footer.njk" %} 54 {% include "footer.njk" %}
53 55
54 </main> 56 </main>
55 57
56</body> 58 </body>
57 59
58</html> 60</html>
diff --git a/source/layouts/post.njk b/source/layouts/post.njk
index 72923c9..9851c13 100644
--- a/source/layouts/post.njk
+++ b/source/layouts/post.njk
@@ -1,61 +1,66 @@
1<!DOCTYPE html> 1<!DOCTYPE html>
2<html lang="en"> 2<html lang="en">
3 3
4<head> 4 <head>
5 <meta charset="utf-8"> 5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta http-equiv="X-UA-Compatible" content="ie=edge"> 7 <meta http-equiv="X-UA-Compatible" content="ie=edge">
8 <meta name="theme-color" content="#ffffff"> 8 <meta name="theme-color" content="#ffffff">
9 9
10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA"> 10 <meta name="google-site-verification" content="EwUGW1WlCkRIQuyQ9AE1-bLitWthw-eVMZFTAMZVZaA">
11 11
12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}"> 12 <link rel="icon" type="image/png" href="{{ vars.domain }}/files/avatar-64x64.png?ver={{ timestamp }}">
13 13
14 <title>{{ title }}</title> 14 <title>{{ title }}</title>
15 <meta name="author" content="{{ vars.author }}"> 15 <meta name="author" content="{{ vars.author }}">
16 <meta name="description" content="{{ description }}"> 16 <meta name="description" content="{{ description }}">
17 17
18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}"> 18 <meta name="og:url" content="{{ vars.domain }}/{{ slug }}">
19 <meta name="og:type" content="website"> 19 <meta name="og:type" content="article">
20 <meta name="og:title" content="{{ title }}"> 20 <meta name="og:title" content="{{ title }}">
21 <meta name="og:description" content="{{ description }}"> 21 <meta name="og:description" content="{{ description }}">
22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 22 <meta name="og:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
23 23
24 <meta name="twitter:card" content="summary"> 24 <meta name="twitter:card" content="summary">
25 <meta name="twitter:site" content="@mitjafelicijan"> 25 <meta name="twitter:site" content="@mitjafelicijan">
26 <meta name="twitter:title" content="{{ title }}"> 26 <meta name="twitter:title" content="{{ title }}">
27 <meta name="twitter:description" content="{{ description }}"> 27 <meta name="twitter:description" content="{{ description }}">
28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}"> 28 <meta name="twitter:image" content="{{ vars.domain }}/files/avatar-512x512.png?ver={{ timestamp }}">
29 29
30 {{ css }} 30 {{ css }}
31 31
32</head> 32 </head>
33 33
34<body> 34 <body>
35 35
36 <main class="wrapper"> 36 <main class="wrapper">
37 37
38 {% include "navigation.njk" %} 38 {% include "navigation.njk" %}
39 39
40 <article> 40 <article itemtype="http://schema.org/Article">
41 41
42 <header> 42 <header>
43 <h1>{{ title }}</h1> 43 <h1>{{ title }}</h1>
44 <p class="pubdate">Published on 44 <p class="pubdate">Published on
45 <time pubdate="{{ writtenDate.original }}">{{ writtenDate.formatted }}</time> 45 <time pubdate="{{ writtenDate.original }}">{{ writtenDate.formatted }}</time>
46 by {{ vars.author }}</p> 46 by
47 </header> 47 {{ vars.author }}</p>
48 </header>
48 49
49 {{ content|safe }} 50 <div>
51 {{ content|safe }}
52 </div>
50 53
51 </article> 54 </article>
52 55
53 {{ javascript }} 56 {{ javascript }}
54 57
55 {% include "footer.njk" %} 58 {% include "comments.njk" %}
56 59
57 </main> 60 {% include "footer.njk" %}
58 61
59</body> 62 </main>
63
64 </body>
60 65
61</html> 66</html>