Upgrade to template v3

This commit is contained in:
Florine W. Dekker 2022-11-21 18:24:49 +01:00
parent 203b174827
commit 94e4ad21b8
Signed by: FWDekker
GPG Key ID: D3DCFAA8A4560BE0
5 changed files with 119 additions and 106 deletions

View File

@ -7,13 +7,16 @@ module.exports = grunt => {
default: ["dist/"], default: ["dist/"],
}, },
copy: { copy: {
css: {
files: [{expand: true, cwd: "src/main/", src: "**/*.css", dest: "dist/", flatten: true}]
},
html: { html: {
files: [{expand: true, cwd: "src/main/", src: "**/*.html", dest: "dist/"}] files: [{expand: true, cwd: "src/main/", src: "**/*.html", dest: "dist/", flatten: true}]
}, },
}, },
focus: { focus: {
dev: { dev: {
include: ["html"], include: ["css", "html"],
}, },
}, },
replace: { replace: {
@ -39,6 +42,10 @@ module.exports = grunt => {
}, },
}, },
watch: { watch: {
css: {
files: ["src/main/**/*.css"],
tasks: ["copy:css"],
},
html: { html: {
files: ["src/main/**/*.html"], files: ["src/main/**/*.html"],
tasks: ["copy:html", "replace:dev"], tasks: ["copy:html", "replace:dev"],
@ -56,6 +63,7 @@ module.exports = grunt => {
// Pre // Pre
"clean", "clean",
// Copy files // Copy files
"copy:css",
"copy:html", "copy:html",
// Insert version number // Insert version number
"replace:dev", "replace:dev",
@ -65,6 +73,7 @@ module.exports = grunt => {
// Pre // Pre
"clean", "clean",
// Copy files // Copy files
"copy:css",
"copy:html", "copy:html",
// Insert version number // Insert version number
"replace:deploy", "replace:deploy",

BIN
package-lock.json generated

Binary file not shown.

View File

@ -1,6 +1,6 @@
{ {
"name": "about", "name": "about",
"version": "1.3.6", "version": "1.3.7",
"description": "All about Florine", "description": "All about Florine",
"author": "Florine W. Dekker", "author": "Florine W. Dekker",
"browser": "dist/bundle.js", "browser": "dist/bundle.js",
@ -16,9 +16,9 @@
"deploy": "grunt deploy" "deploy": "grunt deploy"
}, },
"devDependencies": { "devDependencies": {
"grunt": "^1.4.1", "grunt": "^1.5.3",
"grunt-cli": "^1.4.3", "grunt-cli": "^1.4.3",
"grunt-contrib-clean": "^2.0.0", "grunt-contrib-clean": "^2.0.1",
"grunt-contrib-copy": "^1.0.0", "grunt-contrib-copy": "^1.0.0",
"grunt-contrib-watch": "^1.1.0", "grunt-contrib-watch": "^1.1.0",
"grunt-focus": "^1.0.0", "grunt-focus": "^1.0.0",

7
src/main/css/main.css Normal file
View File

@ -0,0 +1,7 @@
:root {
--aside-width: 215px !important;
}
#socials-span a {
text-decoration: none !important;
}

View File

@ -16,14 +16,15 @@
<title>About | FWDekker</title> <title>About | FWDekker</title>
<link rel="stylesheet" href="https://static.fwdekker.com/fonts/roboto/roboto.css" /> <!--suppress HtmlUnknownTarget -->
<link rel="stylesheet" href="main.css?v=%%VERSION_NUMBER%%" />
<link rel="stylesheet" href="https://static.fwdekker.com/fonts/fork-awesome/1.x.x/fork-awesome.css" /> <link rel="stylesheet" href="https://static.fwdekker.com/fonts/fork-awesome/1.x.x/fork-awesome.css" />
<link rel="stylesheet" href="https://static.fwdekker.com/lib/template/2.x.x/template.css" /> <link rel="stylesheet" href="https://static.fwdekker.com/lib/template/3.x.x/template.css?v=%%VERSION_NUMBER%%" />
<script async src="https://stats.fwdekker.com/count.js" <script async src="https://stats.fwdekker.com/count.js"
data-goatcounter="https://stats.fwdekker.com/count"></script> data-goatcounter="https://stats.fwdekker.com/count"></script>
</head> </head>
<body> <body>
<noscript> <noscript class="fwd-js-notice">
<img src="https://stats.fwdekker.com/count?p=/about/" alt="Counting pixel" /> <img src="https://stats.fwdekker.com/count?p=/about/" alt="Counting pixel" />
<p> <p>
@ -32,110 +33,106 @@
instructions on how to enable JavaScript in your web browser</a>. instructions on how to enable JavaScript in your web browser</a>.
</p> </p>
</noscript> </noscript>
<main> <!-- No need to hide if JS disabled --> <nav id="nav"></nav>
<div id="nav"></div> <main class="container container-with-aside-left"> <!-- Do not hide without JavaScript -->
<div id="contents"> <aside>
<section class="container"> <h3 id="personalia">Personalia</h3>
<div class="row"> <p>
<div class="column column-75"> <b><i class="fa fa-envelope-o" aria-hidden="true"></i> Email</b><br />
<h3>Research</h3> <samp>florine@&lt;<a href="https://fwdekker.com/">domain</a>&gt;</samp>,
<p> <samp>f.w.dekker@&lt;<a href="https://tudelft.nl/">affiliation</a>&gt;</samp>
I'm currently a PhD candidate at TU Delft in the Computational Privacy group, in the area </p>
of cybersecurity. <p>
My research is on using multi-party computation to achieve privacy in the federated learning <b><i class="fa fa-key-modern" aria-hidden="true"></i> PGP key</b><br />
setting. <a href="https://fwdkr.co/pgp">
Check my profile on <samp>8299 B00A 92AE<br />7B89 3E59 0D00<br /><b>CB7A 189A 7860 758B</b></samp>
<a href="https://scholar.google.com/citations?user=dLqv1UEAAAAJ">&#9099;&nbsp;Google Scholar</a>, </a>
<a href="https://orcid.org/0000-0002-0506-7365">&#9099;&nbsp;ORCID</a>, or </p>
<a href="https://research.tudelft.nl/en/persons/florine-w-dekker">&#9099;&nbsp;TU Delft</a> for <p>
an up-to-date list of publications. <b><i class="fa fa-file-pdf-o" aria-hidden="true"></i> Resume</b><br />
</p> <a href="https://fwdkr.co/cv" target="_blank">PDF</a>
</p>
<p>
<b><i class="fa fa-user-circle" aria-hidden="true"></i> Socials</b><br />
<span id="socials-span">
<a href="https://github.com/FWDekker/" aria-label="GitHub">
<i class="fa fa-github fa-lg fa-fw" aria-hidden="true"></i>
</a>
<a href="https://stackoverflow.com/users/3307872/fwdekker" aria-label="StackOverflow">
<i class="fa fa-stack-overflow fa-lg fa-fw" aria-hidden="true"></i>
</a>
<a href="https://linkedin.com/in/fwdekker/" aria-label="LinkedIn">
<i class="fa fa-linkedin-square fa-lg fa-fw" aria-hidden="true"></i>
</a>
</span>
</p>
</aside>
<div role="document">
<section>
<h3>Research</h3>
<p>
I'm currently a PhD candidate at TU Delft in the Computational Privacy group, in the area
of cybersecurity.
My research is on using multi-party computation to achieve privacy in the federated learning
setting.
Check my profile on
<a href="https://scholar.google.com/citations?user=dLqv1UEAAAAJ" target="_blank">Google Scholar</a>,
<a href="https://orcid.org/0000-0002-0506-7365" target="_blank">ORCID</a>, or
<a href="https://research.tudelft.nl/en/persons/florine-w-dekker" target="_blank">TU Delft</a> for
an up-to-date list of publications.
</p>
<h3>Programming</h3> <h3>Programming</h3>
<p> <p>
I do a bunch of programming in my spare time. I do a bunch of programming in my spare time.
I prefer programming in Kotlin, but I do lots of stuff in JavaScript as well because web tools I prefer programming in Kotlin, but I do lots of stuff in JavaScript as well because web tools
are just way more accessible; are just way more accessible;
nobody is going to download your untrusted distribution of Minesweeper if there's already a nobody is going to download your untrusted distribution of Minesweeper if there's already a
<a href="https://fwdekker.com/tools/minesweeper/">perfectly good browser version</a>. <a href="https://fwdekker.com/tools/minesweeper/">perfectly good browser version</a>.
I sometimes use Python for some quick and dirty data processing. I sometimes use Python for some quick and dirty data processing.
</p> </p>
<p> <p>
Most of my web-related projects can be found on my self-hosted Most of my web-related projects can be found on my self-hosted
<a href="https://git.fwdekker.com/">Gitea</a>&nbsp;instance. <a href="https://git.fwdekker.com/">Gitea</a>&nbsp;instance.
Other projects are usually hosted over at Other projects are usually hosted over at
<a href="https://github.com/FWDekker/">&#9099;&nbsp;GitHub</a>. <a href="https://github.com/FWDekker/" target="_blank">GitHub</a>.
My most popular project is probably the My most popular project is probably the
<a href="https://github.com/FWDekker/intellij-randomness">&#9099;&nbsp;Randomness plugin</a> for <a href="https://github.com/FWDekker/intellij-randomness" target="_blank">Randomness plugin</a> for
JetBrains&nbsp;IDEs. JetBrains&nbsp;IDEs.
</p> </p>
<h3>Contact</h3> <h3>Contact</h3>
<p> <p>
If you have a question or whatever about a project of mine, feel free to open an issue on the If you have a question or whatever about a project of mine, feel free to open an issue on the
relevant repository. relevant repository.
</p> </p>
<p> <p>
You can also email me at <kbd>florine</kbd> at this very domain. You can also email me at <samp>florine</samp> at this very domain.
My PGP key is hosted in the web key directory on this domain, but your email client will My PGP key is hosted in the web key directory on this domain, but your email client will
probably find it for you automatically. probably find it for you automatically.
If it doesn't, use GPG's <samp>--locate-key</samp> function or If it doesn't, use GPG's <samp>--locate-key</samp> function or
<a href="https://fwdkr.co/pgp">grab the key directly</a>. <a href="https://fwdkr.co/pgp">grab the key directly</a>.
</p> </p>
<h4>PGP keys</h4> <h4>PGP keys</h4>
<p> <p>
I'm currently on my third and (hopefully) final PGP key. I'm currently on my third and (hopefully) final PGP key.
I started with <samp>0xB1B567AF58D6EE0F</samp> in 2017 and I had intended to create a new master I started with <samp>0xB1B567AF58D6EE0F</samp> in 2017 and I had intended to create a new master key
key every five years, but then <a href="https://wukl.net/">&#9099;&nbsp;a friend</a> told me every five years, but then <a href="https://wukl.net/" target="_blank">a friend</a> told me that it's a
that it's a much better idea to have a non-expiring master key and rotating sub-keys. much better idea to have a non-expiring master key and rotating sub-keys.
So in 2021 I created <samp>0xBAEE7B87CAC0ECDD</samp> according to So in 2021 I created <samp>0xBAEE7B87CAC0ECDD</samp> according to
<a href="https://github.com/drduh/YubiKey-Guide">&#9099;&nbsp;this excellent guide</a>. <a href="https://github.com/drduh/YubiKey-Guide" target="_blank">this excellent guide</a>.
However, later that year I found out that I had lost the password to the USB stick containing However, later that year I found out that I had lost the password to the USB stick containing
the master key <i>and</i> the revocation certificate, so I moved on to create my current PGP the master key <i>and</i> the revocation certificate, so I moved on to create my current PGP
key, <samp>0xCB7A189A7860758B</samp>. key, <samp>0xCB7A189A7860758B</samp>.
While you'll have to re-import my <i>sub</i>-keys again every year, I promise I'll do my best to While you'll have to re-import my <i>sub</i>-keys again every year, I promise I'll do my best to
never need a new master key! never need a new master key!
</p> </p>
</div>
<div class="column column-25">
<h3 id="personalia">Personalia</h3>
<p>
<b><i class="fa fa-envelope-o" aria-hidden="true"></i> Email</b><br />
<kbd>florine@&lt;<a href="https://fwdekker.com/">domain</a>&gt;</kbd>,
<kbd>f.w.dekker@&lt;<a href="https://tudelft.nl/">affiliation</a>&gt;</kbd>
</p>
<p>
<b><i class="fa fa-key-modern" aria-hidden="true"></i> PGP key</b><br />
<a href="https://fwdkr.co/pgp">
<samp>8299 B00A 92AE 7B89 3E59 0D00 <b>CB7A 189A 7860 758B</b></samp>
</a>
</p>
<p>
<b><i class="fa fa-file-pdf-o" aria-hidden="true"></i> Resume</b><br />
<a href="https://fwdkr.co/cv">PDF</a>
</p>
<p>
<b><i class="fa fa-user-circle" aria-hidden="true"></i> Socials</b><br />
<span>
<a href="https://github.com/FWDekker/" aria-label="GitHub">
<i class="fa fa-github fa-lg fa-fw" aria-hidden="true"></i>
</a>
<a href="https://stackoverflow.com/users/3307872/fwdekker" aria-label="StackOverflow">
<i class="fa fa-stack-overflow fa-lg fa-fw" aria-hidden="true"></i>
</a>
<a href="https://linkedin.com/in/fwdekker/" aria-label="LinkedIn">
<i class="fa fa-linkedin-square fa-lg fa-fw" aria-hidden="true"></i>
</a>
</span>
</p>
</div>
</div>
</section> </section>
<footer id="footer"></footer>
</div> </div>
<div id="footer"></div>
</main> </main>
<script src="https://static.fwdekker.com/lib/template/2.x.x/template.js"></script> <script src="https://static.fwdekker.com/lib/template/3.x.x/template.js?v=%%VERSION_NUMBER%%"></script>
</body> </body>
</html> </html>