diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-25 17:44:59 +0100 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-01-25 17:44:59 +0100 |
| commit | 7949cdfaecbf5613b4e83a1e648b8a716d27ed41 (patch) | |
| tree | cb4291e59807ef5217adbab597fad871579ed357 /templates | |
| parent | 202d280de781df7030e3c04d8bc07c55ccfd2f99 (diff) | |
| download | mitjafelicijan.com-7949cdfaecbf5613b4e83a1e648b8a716d27ed41.tar.gz | |
Add thumbnails
Diffstat (limited to 'templates')
| -rw-r--r-- | templates/base.html | 229 | ||||
| -rw-r--r-- | templates/index.html | 135 |
2 files changed, 192 insertions, 172 deletions
diff --git a/templates/base.html b/templates/base.html index ab8e748..e81ad58 100644 --- a/templates/base.html +++ b/templates/base.html | |||
| @@ -1,115 +1,120 @@ | |||
| 1 | <!doctype html> | 1 | <!doctype html> |
| 2 | <html lang="{{ .Config.Language }}"> | 2 | <html lang="{{ .Config.Language }}"> |
| 3 | <head> | 3 | <head> |
| 4 | <meta charset="utf-8" /> | 4 | <meta charset="utf-8" /> |
| 5 | <meta name="viewport" content="width=device-width,initial-scale=1" /> | 5 | <meta name="viewport" content="width=device-width,initial-scale=1" /> |
| 6 | 6 | ||
| 7 | <title>{{ block "title" . }}{{ .Config.Title }}{{ end }}</title> | 7 | <title>{{ block "title" . }}{{ .Config.Title }}{{ end }}</title> |
| 8 | <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/> | 8 | <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/> |
| 9 | 9 | ||
| 10 | <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" /> | 10 | <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" /> |
| 11 | <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" /> | 11 | <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" /> |
| 12 | 12 | ||
| 13 | <style> | 13 | <style> |
| 14 | * { box-sizing: border-box; } | 14 | * { box-sizing: border-box; } |
| 15 | 15 | ||
| 16 | :root { | 16 | :root { |
| 17 | --border-color: gainsboro; | 17 | --border-color: gainsboro; |
| 18 | --content-width: 840px; | 18 | --content-width: 840px; |
| 19 | --primary-color: blue; | 19 | --primary-color: blue; |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | ::selection { | 22 | ::selection { |
| 23 | background: var(--primary-color); | 23 | background: var(--primary-color); |
| 24 | color: #ffffff; | 24 | color: #ffffff; |
| 25 | } | 25 | } |
| 26 | 26 | ||
| 27 | body { font-family: sans-serif; max-width: var(--content-width); margin: 0 auto; line-height: 160%; background: white; } | 27 | body { font-family: sans-serif; max-width: var(--content-width); margin: 0 auto; line-height: 160%; background: white; } |
| 28 | 28 | ||
| 29 | header { margin-block-start: 1em; margin-block-end: 4em; } | 29 | header { margin-block-start: 1em; margin-block-end: 4em; } |
| 30 | header nav { display: flex; gap: 1em; align-items: center; padding: 0.5em 0; border-bottom: 2px solid black; } | 30 | header nav { display: flex; gap: 1em; align-items: center; padding: 0.5em 0; border-bottom: 2px solid black; } |
| 31 | header nav a { color: black; } | 31 | header nav a { color: black; } |
| 32 | header nav span.title { font-weight: bold; } | 32 | header nav span.title { font-weight: bold; } |
| 33 | 33 | ||
| 34 | section { margin-block-start: 3em; margin-block-end: 3em; } | 34 | section { margin-block-start: 3em; margin-block-end: 3em; } |
| 35 | blockquote { border-left: 0.2em solid black; padding-left: 1em; margin-left: 0; } | 35 | blockquote { border-left: 0.2em solid black; padding-left: 1em; margin-left: 0; } |
| 36 | footer { font-size: small; } | 36 | footer { font-size: small; } |
| 37 | 37 | ||
| 38 | ul.post-list { padding: 0em; } | 38 | ul.post-list { padding: 0em; } |
| 39 | ul.post-list li { display: flex; gap: 1em; align-items: center; padding: 0.25em 0; } | 39 | ul.post-list li { display: flex; gap: 1em; align-items: center; padding: 0.25em 0; } |
| 40 | ul.post-list li time { min-width: 50px; } | 40 | ul.post-list li time { min-width: 50px; } |
| 41 | 41 | ||
| 42 | a { color: var(--primary-color); text-decoration: none; } | 42 | a { color: var(--primary-color); text-decoration: none; } |
| 43 | a:hover { text-decoration: underline; } | 43 | a:hover { text-decoration: underline; } |
| 44 | 44 | ||
| 45 | h1, h2, h3, h4 { font-size: initial; } | 45 | h1, h2, h3, h4 { font-size: initial; } |
| 46 | article h2, article h3, article h4 { margin-block-start: 2.5em; } | 46 | article h2, article h3, article h4 { margin-block-start: 2.5em; } |
| 47 | article h1 { font-size: 130%; line-height: 110%; } | 47 | article h1 { font-size: 130%; line-height: 110%; } |
| 48 | article code { background: lemonchiffon; padding: 0 0.2em; } | 48 | article code { background: lemonchiffon; padding: 0 0.2em; } |
| 49 | article pre { border: 1px solid var(--border-color); padding: 1em; line-height: 140%; text-wrap: nowrap; overflow-x: auto; } | 49 | article pre { border: 1px solid var(--border-color); padding: 1em; line-height: 140%; text-wrap: nowrap; overflow-x: auto; } |
| 50 | article pre > code { background: initial; padding: 0; } | 50 | article pre > code { background: initial; padding: 0; } |
| 51 | 51 | ||
| 52 | img, video, audio { max-width: 100%; } | 52 | img, video, audio { max-width: 100%; } |
| 53 | figure { display: flex; justify-content: center; margin: 1.5em 0; } | 53 | figure { display: flex; justify-content: center; margin: 1.5em 0; } |
| 54 | 54 | ||
| 55 | table { width: 100%; border: 1px solid var(--border-color); border-collapse: collapse; } | 55 | table { width: 100%; border: 1px solid var(--border-color); border-collapse: collapse; } |
| 56 | table thead { background: var(--border-color); border: 1px solid black; } | 56 | table thead { background: var(--border-color); border: 1px solid black; } |
| 57 | table td, table th { text-align: left; padding: 0.4em 0.6em; } | 57 | table td, table th { text-align: left; padding: 0.4em 0.6em; } |
| 58 | table tbody tr { border-bottom: 1px solid var(--border-color); } | 58 | table tbody tr { border-bottom: 1px solid var(--border-color); } |
| 59 | 59 | ||
| 60 | .tags mark { font-family: monospace; padding: 0 0.2em; } | 60 | .tags mark { font-family: monospace; padding: 0 0.2em; } |
| 61 | .static-prefix { width: 7em; } | 61 | .static-prefix { width: 7em; } |
| 62 | 62 | ||
| 63 | .multicolumn-list { column-count: 3; column-gap: 3em; } | 63 | .multicolumn-list { column-count: 3; column-gap: 3em; } |
| 64 | .multicolumn-list a { display: block; margin-bottom: 0.5rem; break-inside: avoid; } | 64 | .multicolumn-list a { display: block; margin-bottom: 0.5rem; break-inside: avoid; } |
| 65 | 65 | ||
| 66 | .project-release table tr td:last-child { text-align: right; } | 66 | .project-release table tr td:last-child { text-align: right; } |
| 67 | .project-release table tr th:last-child { text-align: right; } | 67 | .project-release table tr th:last-child { text-align: right; } |
| 68 | .project-list ul { column-count: 3; column-gap: 3em; } | 68 | .project-list ul { column-count: 3; column-gap: 3em; } |
| 69 | .github-link p { display: flex; align-items: center; gap: 0.3em; } | 69 | .github-link p { display: flex; align-items: center; gap: 0.3em; } |
| 70 | .github-link p img { border: 0; padding: 0; height: 15px; } | 70 | .github-link p img { border: 0; padding: 0; height: 15px; } |
| 71 | 71 | ||
| 72 | /* Hotfixes for strange behaviour. */ | 72 | .thumbnails { display: flex; gap: 1em; } |
| 73 | article iframe { margin: 0!important; } | 73 | .thumbnails div a { display: block; height: 9em; margin: 0; padding: 0; } |
| 74 | pre code span { display: initial !important; } | 74 | .thumbnails div a img { height: 100%; margin: 0; padding: 0; } |
| 75 | 75 | .thumbnails div .name { font-size: small; font-weight: bold; font-style: italic; } | |
| 76 | @media only screen and (max-width: 860px) { | 76 | |
| 77 | body { margin: auto; padding: 1em; } | 77 | /* Hotfixes for strange behaviour. */ |
| 78 | ul.post-list li time { display: none; } | 78 | article iframe { margin: 0!important; } |
| 79 | .multicolumn-list { column-count: 2; } | 79 | pre code span { display: initial !important; } |
| 80 | .project-list ul { column-count: 2; } | 80 | |
| 81 | .hide-on-mobile { display: none; } | 81 | @media only screen and (max-width: 860px) { |
| 82 | } | 82 | body { margin: auto; padding: 1em; } |
| 83 | 83 | ul.post-list li time { display: none; } | |
| 84 | @media print { | 84 | .multicolumn-list { column-count: 2; } |
| 85 | header, footer { display: none; } | 85 | .project-list ul { column-count: 2; } |
| 86 | } | 86 | .hide-on-mobile { display: none; } |
| 87 | </style> | 87 | } |
| 88 | 88 | ||
| 89 | <script src="https://cdn.usefathom.com/script.js" data-site="OKIJWYKR" defer></script> | 89 | @media print { |
| 90 | </head> | 90 | header, footer { display: none; } |
| 91 | 91 | } | |
| 92 | <body> | 92 | </style> |
| 93 | <header> | 93 | |
| 94 | <nav> | 94 | <script src="https://cdn.usefathom.com/script.js" data-site="OKIJWYKR" defer></script> |
| 95 | <span class="title hide-on-mobile static-prefix">Navigation</span> | 95 | </head> |
| 96 | <a href="/">Home</a> | 96 | |
| 97 | <a href="/projects.html">Projects</a> | 97 | <body> |
| 98 | <a href="https://github.com/mitjafelicijan/probe" target="_blank">Probe</a> | 98 | <header> |
| 99 | <a href="https://github.com/mitjafelicijan" target="_blank">GitHub</a> | 99 | <nav> |
| 100 | <a href="https://github.com/mitjafelicijan/dotfiles" target="_blank" class="hide-on-mobile">Dotfiles</a> | 100 | <span class="title hide-on-mobile static-prefix">Navigation</span> |
| 101 | <a href="/curriculum-vitae.html">CV</a> | 101 | <a href="/">Home</a> |
| 102 | <a href="/feed.xml" class="hide-on-mobile">RSS</a> | 102 | <a href="/projects.html">Projects</a> |
| 103 | </nav> | 103 | <a href="https://github.com/mitjafelicijan/probe" target="_blank">Probe</a> |
| 104 | </header> | 104 | <a href="https://github.com/mitjafelicijan" target="_blank">GitHub</a> |
| 105 | 105 | <a href="https://github.com/mitjafelicijan/dotfiles" target="_blank" class="hide-on-mobile">Dotfiles</a> | |
| 106 | <main> | 106 | <a href="/curriculum-vitae.html">CV</a> |
| 107 | {{ block "content" . }}{{ end }} | 107 | <a href="/feed.xml" class="hide-on-mobile">RSS</a> |
| 108 | </main> | 108 | </nav> |
| 109 | 109 | </header> | |
| 110 | <footer> | 110 | |
| 111 | <p>You can write me an email at <a href="mailto:mitja.felicijan@gmail.com">mitja.felicijan@gmail.com</a> or catch up with me <a href="https://telegram.me/mitjafelicijan" target="_blank">on Telegram</a>.</p> | 111 | <main> |
| 112 | <p>This page's is also available as <a href="/feed.xml" target="_blank">RSS feed</a>. Page was built with <a href="https://github.com/mitjafelicijan/jbmafp" target="_blank">jbmafp</a>.</p> | 112 | {{ block "content" . }}{{ end }} |
| 113 | </footer> | 113 | </main> |
| 114 | </body> | 114 | |
| 115 | <footer> | ||
| 116 | <p>You can write me an email at <a href="mailto:mitja.felicijan@gmail.com">mitja.felicijan@gmail.com</a> or catch up with me <a href="https://telegram.me/mitjafelicijan" target="_blank">on Telegram</a>.</p> | ||
| 117 | <p>This page's is also available as <a href="/feed.xml" target="_blank">RSS feed</a>. Page was built with <a href="https://github.com/mitjafelicijan/jbmafp" target="_blank">jbmafp</a>.</p> | ||
| 118 | </footer> | ||
| 119 | </body> | ||
| 115 | </html> | 120 | </html> |
diff --git a/templates/index.html b/templates/index.html index 7de8ba2..0fd6f7f 100644 --- a/templates/index.html +++ b/templates/index.html | |||
| @@ -2,69 +2,84 @@ | |||
| 2 | 2 | ||
| 3 | {{ define "content" }} | 3 | {{ define "content" }} |
| 4 | 4 | ||
| 5 | <section class="thumbnails hide-on-mobile"> | ||
| 6 | <div> | ||
| 7 | <a href="https://github.com/mitjafelicijan/glitch" target="_blank"><img src="thumbnails/glitch.png"></a> | ||
| 8 | <div class="name">glitch x11 window manager</div> | ||
| 9 | </div> | ||
| 10 | <div> | ||
| 11 | <a href="https://github.com/mitjafelicijan/qwe-editor" target="_blank"><img src="thumbnails/qwe-editor.png"></a> | ||
| 12 | <div class="name">qwe code editor</div> | ||
| 13 | </div> | ||
| 14 | <div> | ||
| 15 | <a href="https://github.com/mitjafelicijan/toy-debugger" target="_blank"><img src="thumbnails/toy-debugger.png"></a> | ||
| 16 | <div class="name">toy debugger</div> | ||
| 17 | </div> | ||
| 18 | </section> | ||
| 19 | |||
| 5 | <section> | 20 | <section> |
| 6 | <h2>Notes / Posts</h2> | 21 | <h2>Notes / Posts</h2> |
| 7 | <ul class="post-list"> | 22 | <ul class="post-list"> |
| 8 | {{ range .Pages }} | 23 | {{ range .Pages }} |
| 9 | {{ if and (not .Draft) (or (eq .Type "note") (eq .Type "post")) }} | 24 | {{ if and (not .Draft) (or (eq .Type "note") (eq .Type "post")) }} |
| 10 | <li> | 25 | <li> |
| 11 | <time datetime="{{ .Created.Format "2006-01-02" }}" class="static-prefix">{{ .Created.Format "2006-01-02" }}</time> | 26 | <time datetime="{{ .Created.Format "2006-01-02" }}" class="static-prefix">{{ .Created.Format "2006-01-02" }}</time> |
| 12 | <span title="Note"> | 27 | <span title="Note"> |
| 13 | <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 512 512" style="display: block"> | 28 | <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 512 512" style="display: block"> |
| 14 | {{ if (eq .Type "note") }} | 29 | {{ if (eq .Type "note") }} |
| 15 | <path fill="black" fill-rule="evenodd" d="M448 343.045 343.045 448H64V64h384v279.045Zm-42.667-65.712V106.667H106.667v298.666h170.666v-128h128Zm0 42.667H320v85.333h5.333l80-80V320Z"/> | 30 | <path fill="black" fill-rule="evenodd" d="M448 343.045 343.045 448H64V64h384v279.045Zm-42.667-65.712V106.667H106.667v298.666h170.666v-128h128Zm0 42.667H320v85.333h5.333l80-80V320Z"/> |
| 16 | {{ end }} | 31 | {{ end }} |
| 17 | </svg> | 32 | </svg> |
| 18 | </span> | 33 | </span> |
| 19 | <span> | 34 | <span> |
| 20 | <a href="{{ .RelPermalink }}">{{ .Title }}</a> | 35 | <a href="{{ .RelPermalink }}">{{ .Title }}</a> |
| 21 | <span class="tags"> | 36 | <span class="tags"> |
| 22 | {{ if .Meta.tags }} | 37 | {{ if .Meta.tags }} |
| 23 | {{ range .Meta.tags }}<mark>{{ . }}</mark>{{ end }} | 38 | {{ range .Meta.tags }}<mark>{{ . }}</mark>{{ end }} |
| 24 | {{ end }} | 39 | {{ end }} |
| 25 | </span> | 40 | </span> |
| 26 | </span> | 41 | </span> |
| 27 | </li> | 42 | </li> |
| 28 | {{ end }} | 43 | {{ end }} |
| 29 | {{ end }} | 44 | {{ end }} |
| 30 | </ul> | 45 | </ul> |
| 31 | </section> | 46 | </section> |
| 32 | 47 | ||
| 33 | <section class="hide-on-mobile"> | 48 | <section class="hide-on-mobile"> |
| 34 | <h2>Tools / Experiments</h2> | 49 | <h2>Tools / Experiments</h2> |
| 35 | <table class="normal"> | 50 | <table class="normal"> |
| 36 | <thead> | 51 | <thead> |
| 37 | <tr> | 52 | <tr> |
| 38 | <th>Title</th> | 53 | <th>Title</th> |
| 39 | <th></th> | 54 | <th></th> |
| 40 | </tr> | 55 | </tr> |
| 41 | </thead> | 56 | </thead> |
| 42 | <tbody> | 57 | <tbody> |
| 43 | <tr> | 58 | <tr> |
| 44 | <td>Visualizations and exploration of binary files</td> | 59 | <td>Visualizations and exploration of binary files</td> |
| 45 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/binary-visualization/">https://mitjafelicijan.github.io/binary-visualization/</a></td> | 60 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/binary-visualization/">https://mitjafelicijan.github.io/binary-visualization/</a></td> |
| 46 | </tr> | 61 | </tr> |
| 47 | <tr> | 62 | <tr> |
| 48 | <td>Easy convert between HEX to RGBA</td> | 63 | <td>Easy convert between HEX to RGBA</td> |
| 49 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/hextorgba/">https://mitjafelicijan.github.io/hextorgba/</a></td> | 64 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/hextorgba/">https://mitjafelicijan.github.io/hextorgba/</a></td> |
| 50 | </tr> | 65 | </tr> |
| 51 | <tr> | 66 | <tr> |
| 52 | <td>Unicode symbol explorer</td> | 67 | <td>Unicode symbol explorer</td> |
| 53 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/symbols/">https://mitjafelicijan.github.io/symbols/</a></td> | 68 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/symbols/">https://mitjafelicijan.github.io/symbols/</a></td> |
| 54 | </tr> | 69 | </tr> |
| 55 | <tr> | 70 | <tr> |
| 56 | <td>GGUF model list & tools</td> | 71 | <td>GGUF model list & tools</td> |
| 57 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/gguf-list/">https://mitjafelicijan.github.io/gguf-list/</a></td> | 72 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/gguf-list/">https://mitjafelicijan.github.io/gguf-list/</a></td> |
| 58 | </tr> | 73 | </tr> |
| 59 | <tr> | 74 | <tr> |
| 60 | <td>Soundscapes board</td> | 75 | <td>Soundscapes board</td> |
| 61 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/soundscapes/">https://mitjafelicijan.github.io/soundscapes/</a></td> | 76 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/soundscapes/">https://mitjafelicijan.github.io/soundscapes/</a></td> |
| 62 | </tr> | 77 | </tr> |
| 63 | <tr> | 78 | <tr> |
| 64 | <td>Maps of DOOM and other well known WADS</td> | 79 | <td>Maps of DOOM and other well known WADS</td> |
| 65 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/mapsofdoom/">https://mitjafelicijan.github.io/mapsofdoom/</a></td> | 80 | <td class="text-right"><a target="_blank" href="https://mitjafelicijan.github.io/mapsofdoom/">https://mitjafelicijan.github.io/mapsofdoom/</a></td> |
| 66 | </tr> | 81 | </tr> |
| 67 | </tbody> | 82 | </tbody> |
| 68 | </table> | 83 | </table> |
| 69 | </section> | 84 | </section> |
| 70 | {{ end }} | 85 | {{ end }} |
