Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
29c4ec29ca
|
||
|
|
ee60c53bd9
|
||
|
|
6b43d42051
|
||
|
|
0ac972d18d
|
||
|
|
173681e33f
|
||
|
|
8c787ec1d3
|
||
|
|
ee64080cb2
|
||
|
|
1729718b13
|
||
|
|
7178e45413
|
||
|
|
d6544b95cf
|
||
|
|
e92b7e02fe
|
||
|
|
006099ba3c
|
||
|
|
8f1572a8a3
|
||
|
|
61efdb4b46
|
||
|
|
2ded3ee54a
|
||
|
|
5668b1012d
|
||
|
|
0dbc13ad78
|
||
|
|
5390569ba5
|
||
|
|
c20a3c12ec
|
||
|
|
9a29074531
|
||
|
|
e4e47994a1
|
||
|
|
ba34adc634
|
||
|
|
7da90d2562
|
||
|
|
a884b14b81
|
||
|
|
9f3d374645
|
||
|
|
c79a95ffd4
|
||
|
|
956eede4d8
|
||
|
|
ceaa5d1d62
|
||
|
|
7c93c9f03c
|
||
|
|
c306300f2c
|
||
|
|
9ab6b65570
|
||
|
|
a6d96dbdc2
|
||
|
|
fba2bd8805
|
||
|
|
ea4c2dc200
|
||
|
|
a8c9b46f6a
|
||
|
|
076edeb55e
|
||
|
|
b578b308a7
|
||
|
|
2fb51ad906
|
||
|
|
99c0d62efe
|
||
|
|
16f049dd09
|
||
|
|
e75ee517f3
|
||
|
|
82538b81d0
|
||
|
|
5a51d582f9
|
||
|
|
c1ec90149a
|
||
|
|
e480606661
|
||
|
|
35b29774ff
|
||
|
|
df92e19b93
|
||
|
|
7efc4143f5
|
||
|
|
e4cc28438e
|
||
|
|
8cc320b459
|
||
|
|
64e346ac66
|
||
|
|
37b9445373
|
||
|
|
da41344500
|
||
|
|
0782ceb77a
|
||
|
|
5cf47899c3
|
||
|
|
fb3a264479
|
||
|
|
1e754b8ca2
|
||
|
|
81689b93f3
|
||
|
|
bd4ca03185
|
||
|
|
1bcc181220
|
||
|
|
d5c31f0d0b
|
||
|
|
50be874d54
|
||
|
|
37a7420618
|
||
|
|
f29b665fcd
|
||
|
|
3797428ef1
|
||
|
|
c45061440e
|
||
|
|
5b63b29d5d
|
||
|
|
7bf60bc3b9
|
||
|
|
a77980dafe
|
||
|
|
9c2dd10082
|
||
|
|
f006f7aad8
|
||
|
|
b1fb5072db
|
||
|
|
dd55721211
|
||
|
|
24a2ca806e
|
||
|
|
80dfee2a3f
|
||
|
|
ed0c83231e
|
||
|
|
a7f57e051e
|
||
|
|
8e05c2d2be
|
||
|
|
ae8b1fd8f3
|
||
|
|
f464ce4310
|
||
|
|
1d7c427fec
|
||
|
|
022e9fba68
|
||
|
|
d887ef0ab0
|
||
|
|
d2e4fa788c
|
||
|
|
3deeed5686
|
||
|
|
1cfa38596d
|
||
|
|
f162356627
|
||
|
|
c4b8fb83d1
|
||
|
|
821e97627d
|
||
|
|
4c0b098e53
|
||
|
|
24ef17cadb
|
||
|
|
01633db96a
|
||
|
|
16261320d9 | ||
|
|
c6fbd73a16 | ||
|
|
e75c8de422 | ||
|
|
13e64a1db7 | ||
|
|
a3321be74d | ||
|
|
a7e1bcf75e | ||
|
|
6592edf2fa | ||
|
|
7718859c4a | ||
|
|
593071dc93 | ||
|
|
066a8f054f | ||
|
|
5df8fe7fc9 | ||
|
|
72b6e89695 | ||
|
|
904e30a004 | ||
|
|
25e01b7217 | ||
|
|
ffc4ef50de | ||
|
|
8a56798c8b | ||
|
|
4be232d4a0 | ||
|
|
512f4fed33 | ||
|
|
b153c7caec | ||
|
|
988490fd5c | ||
|
|
4e830eed00 | ||
|
|
fa9375e5a2 | ||
|
|
af83094b3c | ||
|
|
e0db796046 | ||
|
|
fb186f5fc8 | ||
|
|
331af8b4e1 | ||
|
|
e7578789ca | ||
|
|
d872f9daee | ||
|
|
3ad8b4cfdf | ||
|
|
4e10d1bd32 | ||
|
|
fac3ccfdcf | ||
|
|
8d6732775b | ||
|
|
184b769dea | ||
|
|
522682c48f | ||
|
|
540b1204c2 | ||
|
|
eb66eaee56 | ||
|
|
0da0b9897c | ||
|
|
908685046c | ||
|
|
8f88af4611 | ||
|
|
66c2be4ee7 | ||
|
|
8c26826192 | ||
|
|
be614bc809 | ||
|
|
e0cce32501 | ||
|
|
7baa940b21 | ||
|
|
21a20b4b85 | ||
|
|
9480879718 | ||
|
|
61c8286995 | ||
|
|
90652210c6 | ||
|
|
e87378c335 | ||
|
|
de015f18a8 | ||
|
|
a42ca8aa17 | ||
|
|
e7c4a9e3dd | ||
|
|
9a946495a1 | ||
|
|
4c2b22a349 | ||
|
|
ced99d39ad | ||
|
|
2795caeb2f | ||
|
|
596e4f501b | ||
|
|
d8e78af242 | ||
|
|
05b12eb994 | ||
|
|
2d83712570 | ||
|
|
af01b61e84 | ||
|
|
98a09823a4 | ||
|
|
70008eb592 | ||
|
|
ce8ae5abff | ||
|
|
3044b66a6e | ||
|
|
6d289e39b9 | ||
|
|
f57467eac9 | ||
|
|
52216c8af2 | ||
|
|
f307dfe308 | ||
|
|
dd4c43a9d4 | ||
|
|
13a9947bff | ||
|
|
2e6a2f6e82 | ||
|
|
e53dadd1f7 | ||
|
|
d80d1308f2 | ||
|
|
20a715a146 | ||
|
|
41598e35d8 | ||
|
|
cfe8abce46 | ||
|
|
2734495299 | ||
|
|
8fd7031e45 | ||
|
|
39a1374d5a | ||
|
|
62156574be | ||
|
|
e19f7756e2 | ||
|
|
1691698426 | ||
|
|
55989c417b | ||
|
|
7735f87ac0 |
@@ -0,0 +1,34 @@
|
|||||||
|
name: Hugo CD
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- "master"
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
working-directory: ./
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cd:
|
||||||
|
timeout-minutes: 6
|
||||||
|
name: CD
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Setup hugo
|
||||||
|
uses: peaceiris/actions-hugo@v2
|
||||||
|
with:
|
||||||
|
hugo-version: "latest"
|
||||||
|
extended: true
|
||||||
|
- name: Build
|
||||||
|
run: hugo -D -F
|
||||||
|
- name: Create GitHub deployment
|
||||||
|
uses: chrnorm/deployment-action@releases/v1
|
||||||
|
id: deployment
|
||||||
|
with:
|
||||||
|
token: "${{ github.token }}"
|
||||||
|
target_url: https://maik.dev/
|
||||||
|
environment: production
|
||||||
|
initial_status: "success"
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
name: Hugo CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- "*"
|
||||||
|
- "*/*"
|
||||||
|
- "**"
|
||||||
|
- "!master"
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- "master"
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
working-directory: ./
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
ci:
|
||||||
|
timeout-minutes: 5
|
||||||
|
name: CI
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Setup hugo
|
||||||
|
uses: peaceiris/actions-hugo@v2
|
||||||
|
with:
|
||||||
|
hugo-version: "latest"
|
||||||
|
extended: true
|
||||||
|
- name: Build
|
||||||
|
run: hugo -D -F
|
||||||
@@ -1,2 +1,9 @@
|
|||||||
# All old/unused files
|
# Hugo default output directory
|
||||||
*.old
|
public/
|
||||||
|
resources/_gen/
|
||||||
|
.hugo_build.lock
|
||||||
|
|
||||||
|
.vscode/
|
||||||
|
|
||||||
|
*.bak
|
||||||
|
*.old
|
||||||
|
|||||||
@@ -1,2 +1,50 @@
|
|||||||
# Personal-Website
|
# Personal Website
|
||||||
Repo for my website
|
|
||||||
|
Link: <https://maik.dev>
|
||||||
|
|
||||||
|
## Goals
|
||||||
|
|
||||||
|
The goal of this website is mainly to post [CTF](https://ctftime.org/ctf-wtf/) writeups.
|
||||||
|
|
||||||
|
Besides that, its also made for the enjoyment of creating this website. To wit, I also set some technical goals for this website.
|
||||||
|
|
||||||
|
### Development goals
|
||||||
|
|
||||||
|
The website must comply with at least the following:
|
||||||
|
|
||||||
|
- The website is fully usable with JavaScript disabled.
|
||||||
|
- JavaScript may only be used for graphical enhancements.
|
||||||
|
- Where possible, JavaScript should be avoided.
|
||||||
|
- The website must have a usable Dark Theme.
|
||||||
|
- This means all text and images are still readable, and the look and feel is the same are the regular theme (but dark ofcourse).
|
||||||
|
- The website must have a working RSS feed,
|
||||||
|
- The website must be static.
|
||||||
|
- Self-hosted, dynamic components (like a comment system) can be used, but the main content is static. (see the first goal)
|
||||||
|
- All assets, libraries, whatever, must be hosted locally.
|
||||||
|
- With the exception of Google Analytics. I am planning to replace this in the future.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### Install Hugo
|
||||||
|
|
||||||
|
This website is made using the [Hugo static site generator](https://gohugo.io/).
|
||||||
|
|
||||||
|
On Arch Linux this is as easy as running the following:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
pacman -S hugo
|
||||||
|
```
|
||||||
|
|
||||||
|
### Running locally
|
||||||
|
|
||||||
|
To see a preview of new posts, you can run the hugo development server.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
hugo -DF server
|
||||||
|
```
|
||||||
|
|
||||||
|
The `-D` and `-F` flags are for building draft and future posts respectively.
|
||||||
|
|
||||||
|
## Publish
|
||||||
|
|
||||||
|
When a commit is pushed to the `master` branch, the new version of the website will automatically be deployed using GitHub Actions.
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "{{ replace .Name "-" " " | title }}"
|
||||||
|
date = {{ .Date }}
|
||||||
|
description = ""
|
||||||
|
images = []
|
||||||
|
tags = [
|
||||||
|
"untagged",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"uncategorized",
|
||||||
|
]
|
||||||
|
+++
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "{{ replace .Name "-" " " | title }}"
|
||||||
|
date = {{ .Date }}
|
||||||
|
description = ""
|
||||||
|
images = []
|
||||||
|
tags = [
|
||||||
|
"untagged",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"uncategorized",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
Before Width: | Height: | Size: 95 KiB |
@@ -1,68 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
|
||||||
<style type="text/css">
|
|
||||||
.st0 {
|
|
||||||
clip-path: url(#SVGID_2_);
|
|
||||||
}
|
|
||||||
|
|
||||||
.st1 {
|
|
||||||
fill: #02A8F4;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st2 {
|
|
||||||
fill: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st3 {
|
|
||||||
fill: #F2504D;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st4 {
|
|
||||||
fill: #E5E4E9;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st5 {
|
|
||||||
fill: #FF0000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st6 {
|
|
||||||
fill: #FFFF00;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st7 {
|
|
||||||
fill: #00FF00;
|
|
||||||
}
|
|
||||||
|
|
||||||
.st8 {
|
|
||||||
fill-opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
<g>
|
|
||||||
<defs>
|
|
||||||
<rect id="SVGID_1_" width="512" height="512" />
|
|
||||||
</defs>
|
|
||||||
<clipPath id="SVGID_2_">
|
|
||||||
<use xlink:href="#SVGID_1_" style="overflow:visible;" />
|
|
||||||
</clipPath>
|
|
||||||
<g class="st0">
|
|
||||||
<path class="st1" d="M58.7,256L58.7,256C58.7,147,147,58.7,256,58.7l0,0c52.3,0,102.5,20.8,139.5,57.8s57.8,87.2,57.8,139.5l0,0
|
|
||||||
c0,109-88.3,197.3-197.3,197.3l0,0C147,453.3,58.7,365,58.7,256z" />
|
|
||||||
<path class="st2" d="M149.2,161.9L149.2,161.9c0-7,5.7-12.7,12.7-12.7h188.2c3.4,0,6.6,1.3,8.9,3.7c2.4,2.4,3.7,5.6,3.7,8.9v188.2
|
|
||||||
c0,7-5.7,12.7-12.7,12.7H161.9c-7,0-12.7-5.7-12.7-12.7V161.9z" />
|
|
||||||
<path class="st3" d="M166,202.4H346v133.6H166V202.4z" />
|
|
||||||
<path class="st4" d="M154.2,149.2h203.6c1.3,0,2.6,0.5,3.5,1.5c0.9,0.9,1.5,2.2,1.5,3.5v24.9c0,0,0,0,0,0l-213.5,0l0,0
|
|
||||||
c0,0,0,0,0,0l0-24.9l0,0C149.2,151.5,151.5,149.2,154.2,149.2z" />
|
|
||||||
<path class="st5" d="M158.7,164.2L158.7,164.2c0-4,3.2-7.2,7.2-7.2l0,0c1.9,0,3.7,0.8,5.1,2.1c1.4,1.4,2.1,3.2,2.1,5.1l0,0
|
|
||||||
c0,4-3.2,7.2-7.2,7.2l0,0C162,171.4,158.7,168.2,158.7,164.2z" />
|
|
||||||
<path class="st6" d="M179.2,164.2L179.2,164.2c0-4,3.2-7.2,7.2-7.2l0,0c1.9,0,3.7,0.8,5.1,2.1c1.4,1.4,2.1,3.2,2.1,5.1l0,0
|
|
||||||
c0,4-3.2,7.2-7.2,7.2l0,0C182.4,171.4,179.2,168.2,179.2,164.2z" />
|
|
||||||
<path class="st7" d="M199.6,164.2L199.6,164.2c0-4,3.2-7.2,7.2-7.2l0,0c1.9,0,3.7,0.8,5.1,2.1c1.4,1.4,2.1,3.2,2.1,5.1l0,0
|
|
||||||
c0,4-3.2,7.2-7.2,7.2l0,0C202.8,171.4,199.6,168.2,199.6,164.2z" />
|
|
||||||
<path class="st8" d="M166,202.4H346v133.6H166V202.4z" />
|
|
||||||
<path class="st2" d="M241.1,291.4l-39.3-17.1v-9.5l39.3-17v11.1l-27.4,10.5l27.4,10.9V291.4z M244.8,298.9l14.2-59.2h8.3
|
|
||||||
l-14.3,59.2H244.8z M270.8,291.5v-11.1l27.4-10.8L270.8,259v-11l39.3,17v9.4L270.8,291.5z" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 2.3 KiB |
@@ -1,40 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
||||||
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="124px" height="124px" viewBox="0 0 124 124" style="enable-background:new 0 0 124 124;" xml:space="preserve">
|
|
||||||
<g>
|
|
||||||
<path d="M112,6H12C5.4,6,0,11.4,0,18s5.4,12,12,12h100c6.6,0,12-5.4,12-12S118.6,6,112,6z" />
|
|
||||||
<path d="M112,50H12C5.4,50,0,55.4,0,62c0,6.6,5.4,12,12,12h100c6.6,0,12-5.4,12-12C124,55.4,118.6,50,112,50z" />
|
|
||||||
<path d="M112,94H12c-6.6,0-12,5.4-12,12s5.4,12,12,12h100c6.6,0,12-5.4,12-12S118.6,94,112,94z" />
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 968 B |
@@ -1,2 +0,0 @@
|
|||||||
<svg width="300" height="300" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect x="2" y="2" width="296" height="296" style="fill:#DEDEDE;stroke:#555555;stroke-width:2" /><text x="50%" y="50%" font-size="18" text-anchor="middle" alignment-baseline="middle" font-family="monospace, sans-serif" fill="#555555">300×300</text></svg>
|
|
||||||
|
Before Width: | Height: | Size: 326 B |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 61 KiB |
|
After Width: | Height: | Size: 400 KiB |
|
After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 9.1 KiB |
|
After Width: | Height: | Size: 382 KiB |
|
After Width: | Height: | Size: 852 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 512 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 143 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 572 KiB |
|
After Width: | Height: | Size: 499 KiB |
|
After Width: | Height: | Size: 523 KiB |
|
After Width: | Height: | Size: 522 KiB |
|
After Width: | Height: | Size: 568 KiB |
|
After Width: | Height: | Size: 540 KiB |
|
After Width: | Height: | Size: 532 KiB |
|
After Width: | Height: | Size: 553 KiB |
|
After Width: | Height: | Size: 628 KiB |
|
After Width: | Height: | Size: 560 KiB |
|
After Width: | Height: | Size: 536 KiB |
|
After Width: | Height: | Size: 594 KiB |
|
After Width: | Height: | Size: 636 KiB |
|
After Width: | Height: | Size: 314 KiB |
|
After Width: | Height: | Size: 516 KiB |
|
After Width: | Height: | Size: 546 KiB |
|
After Width: | Height: | Size: 579 KiB |
|
After Width: | Height: | Size: 558 KiB |
|
After Width: | Height: | Size: 552 KiB |
|
After Width: | Height: | Size: 559 KiB |
|
After Width: | Height: | Size: 499 KiB |
|
After Width: | Height: | Size: 536 KiB |
|
After Width: | Height: | Size: 564 KiB |
|
After Width: | Height: | Size: 515 KiB |
|
After Width: | Height: | Size: 314 KiB |
|
After Width: | Height: | Size: 348 KiB |
|
After Width: | Height: | Size: 309 KiB |
|
After Width: | Height: | Size: 367 KiB |
|
After Width: | Height: | Size: 326 KiB |
|
After Width: | Height: | Size: 359 KiB |
|
After Width: | Height: | Size: 390 KiB |
|
After Width: | Height: | Size: 340 KiB |
|
After Width: | Height: | Size: 335 KiB |
|
After Width: | Height: | Size: 415 KiB |
|
After Width: | Height: | Size: 159 KiB |
|
After Width: | Height: | Size: 214 KiB |
|
After Width: | Height: | Size: 367 KiB |
|
After Width: | Height: | Size: 371 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 909 KiB |
|
After Width: | Height: | Size: 889 KiB |
|
After Width: | Height: | Size: 243 KiB |
|
After Width: | Height: | Size: 189 KiB |
|
After Width: | Height: | Size: 407 KiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 85 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 72 KiB |
|
After Width: | Height: | Size: 99 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 115 KiB |
|
Before Width: | Height: | Size: 620 KiB |
@@ -1,732 +0,0 @@
|
|||||||
html,
|
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
font-family: 'Roboto', sans-serif;
|
|
||||||
background: #060612;
|
|
||||||
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'Roboto';
|
|
||||||
font-style: normal;
|
|
||||||
font-display: fallback;
|
|
||||||
font-weight: 400;
|
|
||||||
src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v19/KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2');
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 480px) {
|
|
||||||
|
|
||||||
body,
|
|
||||||
input,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
font-size: 12pt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 480px) {
|
|
||||||
|
|
||||||
html,
|
|
||||||
body {
|
|
||||||
min-width: 320px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 736px) {
|
|
||||||
|
|
||||||
body,
|
|
||||||
input,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
font-size: 12pt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@media screen and (max-width: 736px) {
|
|
||||||
|
|
||||||
html,
|
|
||||||
body {
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
@media screen and (max-width: 980px) {
|
|
||||||
|
|
||||||
body,
|
|
||||||
input,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
font-size: 12pt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 1280px) {
|
|
||||||
|
|
||||||
body,
|
|
||||||
input,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
font-size: 11.5pt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 1680px) {
|
|
||||||
|
|
||||||
body,
|
|
||||||
input,
|
|
||||||
select,
|
|
||||||
textarea {
|
|
||||||
font-size: 13pt;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.parallax::after {
|
|
||||||
/* Display and position the pseudo-element */
|
|
||||||
content: " ";
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
|
|
||||||
/* Move the pseudo-element back away from the camera,
|
|
||||||
* then scale it back up to fill the viewport.
|
|
||||||
* Because the pseudo-element is further away, it appears to move more slowly, like in real life. */
|
|
||||||
transform: translateZ(-1px) scale(1.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hidden {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nocroll {
|
|
||||||
overflow: hidden !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content {
|
|
||||||
display: grid;
|
|
||||||
grid-template-rows: auto;
|
|
||||||
grid-column-gap: 0;
|
|
||||||
grid-row-gap: 0;
|
|
||||||
|
|
||||||
grid-template-columns: 1fr 1fr 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"nav nav nav"
|
|
||||||
"header header header"
|
|
||||||
"projects projects projects"
|
|
||||||
"contact contact contact"
|
|
||||||
"footer footer footer";
|
|
||||||
|
|
||||||
overflow-x: hidden;
|
|
||||||
overflow-y: auto;
|
|
||||||
perspective: 2px;
|
|
||||||
height: 100vh;
|
|
||||||
scroll-behavior: smooth;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 980px) {
|
|
||||||
.content {
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"nav nav"
|
|
||||||
"header header"
|
|
||||||
"projects projects"
|
|
||||||
"contact contact"
|
|
||||||
"footer footer";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content {
|
|
||||||
grid-template-columns: 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"nav"
|
|
||||||
"header"
|
|
||||||
"projects"
|
|
||||||
"contact"
|
|
||||||
"footer";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > * {
|
|
||||||
background: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav {
|
|
||||||
grid-area: nav;
|
|
||||||
position: absolute;
|
|
||||||
background: transparent;
|
|
||||||
color: #ffffff;
|
|
||||||
width: 100%;
|
|
||||||
height: 3.5em;
|
|
||||||
line-height: 3.5em;
|
|
||||||
z-index: 10;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu {
|
|
||||||
position: absolute;
|
|
||||||
width: 100vw;
|
|
||||||
height: calc(100vh - 3.5em);
|
|
||||||
z-index: 100;
|
|
||||||
top: 3.5em;
|
|
||||||
left: 0;
|
|
||||||
background-color: #060612;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container > .list {}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container > .list > .item {
|
|
||||||
display: block;
|
|
||||||
background-color: #1a1233;
|
|
||||||
width: 100%;
|
|
||||||
text-decoration: none;
|
|
||||||
font-weight: 900;
|
|
||||||
color: #ffffff;
|
|
||||||
line-height: 4em;
|
|
||||||
font-size: 1.25em;
|
|
||||||
padding-left: 1em;
|
|
||||||
position: relative;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container > .list > .active {
|
|
||||||
background: #480070;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container > .list > .language > .subitem {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
background-color: #9535fc;
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
padding-left: 3em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .mobile_menu > .container > .list > .item > .subitem:nth-child(2n) {
|
|
||||||
margin-top: 4em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .nav_toggle {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
background-color: #9535fc;
|
|
||||||
width: 3.5em;
|
|
||||||
height: 3.5em;
|
|
||||||
cursor: pointer;
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .nav_toggle > .button_container {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-53%, -46%);
|
|
||||||
margin: 0;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #aa5bff;
|
|
||||||
font-weight: 900;
|
|
||||||
font-size: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .logo {
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
margin-left: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list {
|
|
||||||
cursor: default;
|
|
||||||
user-select: none;
|
|
||||||
float: right;
|
|
||||||
margin-right: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list > .item {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 0 1em;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
position: relative;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list > .item > .subitem {
|
|
||||||
display: block;
|
|
||||||
padding: 0 1em;
|
|
||||||
right: 0;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
background: #1a1233;
|
|
||||||
position: absolute;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list > .item > .subitem:nth-child(2n) {
|
|
||||||
margin-top: 4em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list > .active {
|
|
||||||
color: #9535fc;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content > nav {
|
|
||||||
background: rgba(6, 6, 18, 0.95);
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .logo {
|
|
||||||
margin: 0;
|
|
||||||
text-align: center;
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
transform: translateX(-50%)
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .list {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > nav > .nav_toggle {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header {
|
|
||||||
grid-area: header;
|
|
||||||
min-height: 100vh;
|
|
||||||
box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.25);
|
|
||||||
background: rgba(6, 6, 18, 0.95);
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header {
|
|
||||||
min-height: 35em;
|
|
||||||
height: 100vh;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header::after {
|
|
||||||
background-size: cover;
|
|
||||||
background-image: url("../images/banner.webp");
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container {
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text {
|
|
||||||
display: inline-block;
|
|
||||||
user-select: text;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text > .container {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text > .container > h1 {
|
|
||||||
font-size: 2.5em;
|
|
||||||
line-height: 1.5em;
|
|
||||||
color: #ffffff;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text > .container > span {
|
|
||||||
font-size: 1.25em;
|
|
||||||
line-height: 1.75em;
|
|
||||||
text-align: right;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .logo {
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .logo > img {
|
|
||||||
width: 18em;
|
|
||||||
height: 18em;
|
|
||||||
margin-left: 3em;
|
|
||||||
display: inline-block;
|
|
||||||
vertical-align: middle;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .filler {
|
|
||||||
display: block;
|
|
||||||
height: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .scroll_arrow {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 1.25em;
|
|
||||||
z-index: 8;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .scroll_arrow > a {
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
font-size: 4em;
|
|
||||||
padding: 1em 1em 0.25em 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 980px) {
|
|
||||||
.content > header > .container > .logo > img {
|
|
||||||
margin: 0;
|
|
||||||
display: block;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text > .container > span,
|
|
||||||
.content > header > .container > .text > .container > h1 {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content > header > .container > .text > .container > h1 {
|
|
||||||
font-size: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .text > .container > span {
|
|
||||||
font-size: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > header > .container > .logo > img {
|
|
||||||
width: 9em;
|
|
||||||
height: 9em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects {
|
|
||||||
grid-area: projects;
|
|
||||||
background-color: #060612;
|
|
||||||
text-align: center;
|
|
||||||
color: #ffffff;
|
|
||||||
width: 100%;
|
|
||||||
margin-bottom: 1.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container {
|
|
||||||
margin: 1em 2em;
|
|
||||||
display: grid;
|
|
||||||
grid-template-rows: auto;
|
|
||||||
grid-column-gap: 0;
|
|
||||||
grid-row-gap: 0;
|
|
||||||
|
|
||||||
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"description description description description description description"
|
|
||||||
"watchtogether watchtogether superbot superbot toyneuralnet toyneuralnet"
|
|
||||||
". invoicegenerator invoicegenerator ctf ctf ."
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .description {
|
|
||||||
grid-area: description;
|
|
||||||
margin: 1em auto;
|
|
||||||
width: 85%;
|
|
||||||
max-width: 78em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .description > h1 {
|
|
||||||
font-size: 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .description > hr {
|
|
||||||
width: 60%;
|
|
||||||
margin: 1em auto 1em;
|
|
||||||
border-color: #9535fc;
|
|
||||||
border-width: .1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project {
|
|
||||||
display: block;
|
|
||||||
margin: .75em auto;
|
|
||||||
width: 80%;
|
|
||||||
/* background-color: white;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project > .icon {
|
|
||||||
background-color: #1a1233;
|
|
||||||
height: 6em;
|
|
||||||
width: 6em;
|
|
||||||
position: relative;
|
|
||||||
border-radius: 100%;
|
|
||||||
margin: auto;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project > .icon > img {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
height: 2.25em;
|
|
||||||
width: 2.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project > h1 {
|
|
||||||
font-size: 1.35em;
|
|
||||||
line-height: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project > p {}
|
|
||||||
|
|
||||||
.content > .projects p {
|
|
||||||
font-size: 1.25em;
|
|
||||||
line-height: 1.75em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects p > a {
|
|
||||||
text-decoration: underline;
|
|
||||||
color: #9535fc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .watchtogether {
|
|
||||||
grid-area: watchtogether;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .superbot {
|
|
||||||
grid-area: superbot;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .toyneuralnet {
|
|
||||||
grid-area: toyneuralnet;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .invoicegenerator {
|
|
||||||
grid-area: invoicegenerator;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .ctf {
|
|
||||||
grid-area: ctf;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 980px) {
|
|
||||||
.content > .projects > .container {
|
|
||||||
grid-template-columns: 1fr 1fr 1fr 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"description description description description"
|
|
||||||
"watchtogether watchtogether superbot superbot"
|
|
||||||
"toyneuralnet toyneuralnet invoicegenerator invoicegenerator"
|
|
||||||
". ctf ctf ."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content > .projects > .container {
|
|
||||||
grid-template-columns: 1fr;
|
|
||||||
grid-template-areas:
|
|
||||||
"description"
|
|
||||||
"watchtogether"
|
|
||||||
"superbot"
|
|
||||||
"toyneuralnet"
|
|
||||||
"invoicegenerator"
|
|
||||||
"ctf"
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .description > h1 {
|
|
||||||
font-size: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects p {
|
|
||||||
font-size: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .projects > .container > .project > h1 {
|
|
||||||
font-size: 1.2em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact {
|
|
||||||
grid-area: contact;
|
|
||||||
background-color: #9535fc;
|
|
||||||
text-align: center;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container {
|
|
||||||
margin: 9em auto;
|
|
||||||
width: 70%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container > h1 {
|
|
||||||
font-size: 2em;
|
|
||||||
line-height: 1.5em;
|
|
||||||
/* letter-spacing: -0.025em;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container > p {
|
|
||||||
font-size: 1.25em;
|
|
||||||
line-height: 1.75em;
|
|
||||||
margin-top: -0.75em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container > p > a {
|
|
||||||
color: #ffffff;
|
|
||||||
/* text-decoration: none;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 980px) {
|
|
||||||
.content > .contact > .container {
|
|
||||||
margin: 7em auto;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content > .contact > .container {
|
|
||||||
margin: 6.75em auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container > h1 {
|
|
||||||
font-size: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > .contact > .container > p {
|
|
||||||
font-size: 1em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer {
|
|
||||||
grid-area: footer;
|
|
||||||
background-color: #060612;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container {
|
|
||||||
margin: 8em auto 0;
|
|
||||||
padding-bottom: 7em;
|
|
||||||
width: 80%;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social {
|
|
||||||
user-select: none;
|
|
||||||
margin: 1.75em auto;
|
|
||||||
width: 80%;
|
|
||||||
text-align: center
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social > a {
|
|
||||||
color: #9535fc;
|
|
||||||
margin: .25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social > a > svg {
|
|
||||||
fill: #9535fc;
|
|
||||||
width: 2.5em;
|
|
||||||
height: 2.5em;
|
|
||||||
margin: 0 0.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social > a > svg:hover {
|
|
||||||
-moz-transform: scale(1.1);
|
|
||||||
-webkit-transform: scale(1.1);
|
|
||||||
tansform: scale(1.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright {
|
|
||||||
user-select: none;
|
|
||||||
margin: 1em auto;
|
|
||||||
text-align: center
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > p {
|
|
||||||
display: inline-block;
|
|
||||||
user-select: text;
|
|
||||||
margin: 0;
|
|
||||||
line-height: 1.75em;
|
|
||||||
font-size: 1.1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > span {
|
|
||||||
user-select: none;
|
|
||||||
margin: 0 1.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .scroll_up {
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
bottom: 0;
|
|
||||||
z-index: 8;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .scroll_up > a {
|
|
||||||
text-decoration: none;
|
|
||||||
color: #ffffff;
|
|
||||||
font-size: 4em;
|
|
||||||
padding: .25em 1.25em 0.25em 1.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 1680px) {
|
|
||||||
.content > footer > .container > .copyright > .second_span {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > .trademarks {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 980px) {
|
|
||||||
.content > footer > .container {
|
|
||||||
margin: 7em auto 0;
|
|
||||||
padding-bottom: 6em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social > a > svg {
|
|
||||||
width: 2.25em;
|
|
||||||
height: 2.25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > span {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > p {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 736px) {
|
|
||||||
.content > footer > .container > .social > a > svg {
|
|
||||||
width: 1.75em;
|
|
||||||
height: 1.75em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .social > a > svg:hover {
|
|
||||||
transform: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content > footer > .container > .copyright > p {
|
|
||||||
font-size: 0.9em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,194 @@
|
|||||||
|
baseURL = "https://maik.dev/"
|
||||||
|
# baseURL = "http://localhost:1313/"
|
||||||
|
title = "Maik de Kruif"
|
||||||
|
languageCode = "en-us"
|
||||||
|
theme = "maik-blog"
|
||||||
|
|
||||||
|
paginate = 12
|
||||||
|
rssLimit = 10
|
||||||
|
|
||||||
|
copyright = "© Maik de Kruif (maik_dev). All rights reserved."
|
||||||
|
|
||||||
|
PygmentsCodeFences = true
|
||||||
|
pygmentsUseClasses = true
|
||||||
|
PygmentsStyle = "monokai"
|
||||||
|
|
||||||
|
archetypeDir = "archetypes"
|
||||||
|
contentDir = "content"
|
||||||
|
dataDir = "data"
|
||||||
|
layoutDir = "layouts"
|
||||||
|
publishDir = "public"
|
||||||
|
|
||||||
|
buildDrafts = false
|
||||||
|
buildFuture = false
|
||||||
|
buildExpired = false
|
||||||
|
canonifyURLs = true
|
||||||
|
|
||||||
|
enableRobotsTXT = true
|
||||||
|
enableGitInfo = true
|
||||||
|
enableEmoji = true
|
||||||
|
enableMissingTranslationPlaceholders = false
|
||||||
|
disableRSS = false
|
||||||
|
disableSitemap = false
|
||||||
|
disable404 = false
|
||||||
|
disableHugoGeneratorInject = false
|
||||||
|
|
||||||
|
googleAnalytics = "UA-136337666-1"
|
||||||
|
|
||||||
|
[permalinks]
|
||||||
|
posts = "/posts/:title/"
|
||||||
|
writeups = "/:sections/:title/"
|
||||||
|
|
||||||
|
[author]
|
||||||
|
name = "Maik de Kruif"
|
||||||
|
email = "maik@maik.dev"
|
||||||
|
twitter = "@maik_dev"
|
||||||
|
image = "/img/home/portrait.png"
|
||||||
|
|
||||||
|
[social]
|
||||||
|
twitter = "@maik_dev"
|
||||||
|
|
||||||
|
[outputs]
|
||||||
|
home = ["HTML", "RSS"]
|
||||||
|
page = ["HTML", "RSS"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
dateform = "Jan 2, 2006"
|
||||||
|
dateformShort = "Jan 2"
|
||||||
|
dateformNum = "2006-01-02"
|
||||||
|
dateformNumTime = "2006-01-02 15:04 -0700"
|
||||||
|
|
||||||
|
# Metadata mostly used in document's head
|
||||||
|
description = "Hey there, my name is Maik de Kruif, I create websites, bots and other kinds of software. At the moment, I'm still studying computer science at Avans University of Applied Sciences. I am also a big fan of open-source software, which is why you'll find many of my projects on Github. And last but not least, I love playing around with cyber-security related stuff."
|
||||||
|
keywords = "Devloper, Software Engineer, Software Developer, Maik, Computer Science, Portfolio, Blog, Maik de Kruif"
|
||||||
|
images = [""]
|
||||||
|
|
||||||
|
genre = "Blog"
|
||||||
|
|
||||||
|
showReadingTimeInList = false
|
||||||
|
|
||||||
|
homeSubtitle = "Software Engineering, Linux and Cyber Security"
|
||||||
|
|
||||||
|
# Prefix of link to the git commit detail page. GitInfo must be enabled.
|
||||||
|
gitUrl = "https://github.com/maikka39/Personal-Website/commit/"
|
||||||
|
|
||||||
|
# Set disableReadOtherPosts to true in order to hide the links to other posts.
|
||||||
|
disableReadOtherPosts = false
|
||||||
|
|
||||||
|
# Sharing buttons
|
||||||
|
# There are a lot of buttons preconfigured. If you want to change them,
|
||||||
|
# generate the buttons here: https://sharingbuttons.io
|
||||||
|
# and add them into your own `layouts/partials/sharing-buttons.html`
|
||||||
|
# Preconfigured: facebook, twitter, tumblr, email, pinterest, linkedin, reddit, xing, whatsapp, hackernews, telegram
|
||||||
|
enableSharingButtons = true
|
||||||
|
sharingButtons = ["twitter", "email", "linkedin", "reddit", "whatsapp", "telegram"]
|
||||||
|
|
||||||
|
# Integrate Javascript files or stylesheets by adding the url to the external assets or by
|
||||||
|
# linking local files with their path relative to the static folder, e.g. "css/styles.css"
|
||||||
|
customCSS = []
|
||||||
|
customJS = []
|
||||||
|
|
||||||
|
# Toggle this option need to rebuild SCSS, requires extended version of Hugo
|
||||||
|
justifyContent = false # Set "text-align: justify" to .post-content.
|
||||||
|
|
||||||
|
# Default theme "light" or "dark"
|
||||||
|
defaultTheme = "light"
|
||||||
|
themeColor = "#252627"
|
||||||
|
|
||||||
|
# Colors for favicons
|
||||||
|
[params.favicon.color]
|
||||||
|
mask = "#252627"
|
||||||
|
msapplication = "#252627"
|
||||||
|
theme = "#252627"
|
||||||
|
|
||||||
|
# Uncomment this if you want a portrait on your start page
|
||||||
|
[params.portrait]
|
||||||
|
path = "/img/home/portrait.png"
|
||||||
|
alt = "Portrait"
|
||||||
|
size = "175px"
|
||||||
|
|
||||||
|
# Wallets
|
||||||
|
[[params.wallets]]
|
||||||
|
name = "XMR"
|
||||||
|
address = "83cfsXGHPaW81hKJtAPYZEgbfFqANMTXXRwghsBpjf5oTDRV3BnCC4jFno8tLTnF4C6gJzGjPEmpvjntXaiGBB7kVitkDKi"
|
||||||
|
|
||||||
|
# Social icons
|
||||||
|
[[params.social]]
|
||||||
|
name = "email"
|
||||||
|
url = "mailto:maik@maik.dev"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "github"
|
||||||
|
url = "https://github.com/maikka39"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "linkedin"
|
||||||
|
url = "https://www.linkedin.com/in/maikdekruif/"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "twitter"
|
||||||
|
url = "https://twitter.com/maik_dev"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "discord"
|
||||||
|
url = "https://discord.gg/wXCMdzCDcH"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "instagram"
|
||||||
|
url = "https://www.instagram.com/maik.dev/"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "stackoverflow"
|
||||||
|
url = "https://stackoverflow.com/users/9146982/maik-de-kruif"
|
||||||
|
|
||||||
|
# [[params.social]]
|
||||||
|
# name = "rss"
|
||||||
|
# url = "posts/index.xml"
|
||||||
|
|
||||||
|
# [[params.social]]
|
||||||
|
# name = "hackerrank"
|
||||||
|
# url = "https://www.hackerrank.com/maik_dev"
|
||||||
|
|
||||||
|
# [[params.social]]
|
||||||
|
# name = "medium"
|
||||||
|
# url = "https://medium.com/@maikka39"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "steam"
|
||||||
|
url = "https://steamcommunity.com/id/maikka39"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "reddit"
|
||||||
|
url = "https://www.reddit.com/user/maikka39"
|
||||||
|
|
||||||
|
# [[params.social]]
|
||||||
|
# name = "lbry"
|
||||||
|
# url = "https://lbry.tv/@Maik:c"
|
||||||
|
|
||||||
|
[[params.social]]
|
||||||
|
name = "youtube"
|
||||||
|
url = "https://www.youtube.com/channel/UCepNO6s7q0Kcyn8cc3rZNFA"
|
||||||
|
|
||||||
|
[languages]
|
||||||
|
[languages.en]
|
||||||
|
subtitle = "maik.dev"
|
||||||
|
weight = 1
|
||||||
|
copyright = "© Maik de Kruif (maik_dev). All rights reserved."
|
||||||
|
|
||||||
|
[menu]
|
||||||
|
[[menu.main]]
|
||||||
|
identifier = "about"
|
||||||
|
name = "About"
|
||||||
|
url = "about/"
|
||||||
|
[[menu.main]]
|
||||||
|
identifier = "portfolio"
|
||||||
|
name = "Portfolio"
|
||||||
|
url = "portfolio/"
|
||||||
|
[[menu.main]]
|
||||||
|
identifier = "posts"
|
||||||
|
name = "Posts"
|
||||||
|
url = "posts/"
|
||||||
|
[[menu.main]]
|
||||||
|
identifier = "writeups"
|
||||||
|
name = "Writeups"
|
||||||
|
url = "writeups/"
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "About"
|
||||||
|
date = 2021-11-19T12:26:01+01:00
|
||||||
|
description = "Ever since I was a little kid, I've loved coding. From the moment of writing my first program in Python and manipulating it to produce the desired output, I have been obsessed with the idea of writing software to solve practical problems. Programming is like a never-ending puzzle where you continuously have to come up with a new way to solve it."
|
||||||
|
images = []
|
||||||
|
tags = [
|
||||||
|
"aboutme",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"me",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
Ever since I was a little kid, I've loved coding. From the moment of writing my first program in Python and manipulating it to produce the desired output, I have been obsessed with the idea of writing software to solve practical problems. Programming is like a never-ending puzzle where you continuously have to come up with a new way to solve it.
|
||||||
|
|
||||||
|
Outside of my job, I run a small business with a couple of friends where we develop drone shows. I'm responsible for both designing and writing the control software as well as creating and designing the actual drones.
|
||||||
|
|
||||||
|
When I get home after work/school, I tend to either continue writing code for some personal side-projects, or play around with cyber-security related stuff. This is what keeps me up at night, a never-ending thirst to create beautiful, powerful things and share them with the world.
|
||||||
|
|
||||||
|
Skills/Interests: Python, Java, Scala, JavaScript, Node, CSS, HTML, Git, SQL, MongoDB, Apache, Nginx, Docker.
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Portfolio"
|
||||||
|
description = "Over the years I have developed various pieces of software and accomplished many goals. Most of them can be found on my GitHub, but I have also listed some here with a bit of extra information."
|
||||||
|
+++
|
||||||
|
|
||||||
|
Over the years I have developed various pieces of software and accomplished many goals.
|
||||||
|
|
||||||
|
Most of them can be found on [my GitHub](https://github.com/maikka39/), but I have also listed some here with a bit of extra information.
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Learn-to-Program"
|
||||||
|
start_date = 2019-09-03
|
||||||
|
end_date = 2019-10-21
|
||||||
|
company_name = "Personal"
|
||||||
|
company_url = "https://maik.dev"
|
||||||
|
cover = "img/portfolio/learn-to-program/screenshot.png"
|
||||||
|
description = "This website was created for a school assignment. It was created with HTML and CSS only and no frameworks were used."
|
||||||
|
skills = [
|
||||||
|
"Pure HTML and CSS",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
This website was created for a school assignment. It was created with HTML and CSS only and no frameworks were used.
|
||||||
|
|
||||||
|
[Github](https://github.com/maikka39/Learn-to-Program)
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "SuperBot"
|
||||||
|
start_date = 2018-08-17
|
||||||
|
end_date = 2021-04-24
|
||||||
|
company_name = "Personal"
|
||||||
|
company_url = "https://maik.dev"
|
||||||
|
description = "A Discord bot I wrote for my own server so that I could manage the server better and listen to music in voice channels."
|
||||||
|
skills = [
|
||||||
|
"Python",
|
||||||
|
"Asynchronous programming",
|
||||||
|
"Input validation",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
An amazing Discord bot with lots of functionalities!
|
||||||
|
|
||||||
|
A Discord bot I wrote for my own server so that I could manage the server better and listen to music in voice channels.
|
||||||
|
|
||||||
|
SuperBot is the solution to your crowded and chaotic Discord server!
|
||||||
|
|
||||||
|
[Github](https://github.com/maikka39/SuperBot)
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Toy-Neural-Network-Py"
|
||||||
|
start_date = 2019-03-02
|
||||||
|
end_date = 2019-04-16
|
||||||
|
company_name = "Personal"
|
||||||
|
company_url = "https://maik.dev"
|
||||||
|
description = "Neural Network Python library for experimenting with Machine Learning"
|
||||||
|
skills = [
|
||||||
|
"Machine Learning",
|
||||||
|
"Neural Networks",
|
||||||
|
"Matrix calculations",
|
||||||
|
"Overheating hardware",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
Neural Network Python library for experimenting with Machine Learning
|
||||||
|
|
||||||
|
[Github](https://github.com/maikka39/Toy-Neural-Network-Py)
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "WatchTogether"
|
||||||
|
start_date = 2018-08-17
|
||||||
|
end_date = 9999-01-01
|
||||||
|
company_name = "Personal"
|
||||||
|
company_url = "https://maik.dev"
|
||||||
|
cover = "img/portfolio/watch-together/screenshot.png"
|
||||||
|
description = "A website to watch a youtube video together with someone who is not directly next to you!"
|
||||||
|
skills = [
|
||||||
|
"Websockets",
|
||||||
|
"Socket-IO",
|
||||||
|
"NodeJS",
|
||||||
|
"React",
|
||||||
|
"Real time synchronization",
|
||||||
|
"REST API",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
WatchTogether is an online service that lets you watch a video together with your friends without being in the same room!
|
||||||
|
|
||||||
|
[Github](https://github.com/maikka39/WatchTogether)
|
||||||
|
|
||||||
|
[Github (backend)](https://github.com/maikka39/WatchTogether-Server)
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Youtube-Music-Desktop-Player"
|
||||||
|
start_date = 2019-10-17
|
||||||
|
end_date = 2019-12-07
|
||||||
|
company_name = "Personal"
|
||||||
|
company_url = "https://maik.dev"
|
||||||
|
cover = "img/portfolio/youtube-music-desktop-player/screenshot.png"
|
||||||
|
description = "YouTube Music Desktop Player converts YouTube Music to a standalone desktop app. Because of this, you will never have to go through all your tabs to control your music."
|
||||||
|
skills = [
|
||||||
|
"Desktop Application Development",
|
||||||
|
"Electron",
|
||||||
|
"Object Oriented JavaScipt",
|
||||||
|
"Script injection",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
YouTube Music Desktop Player converts YouTube Music to a standalone desktop app. Because of this, you will never have to go through all your tabs to control your music.
|
||||||
|
|
||||||
|
_This software has no affiliation this Google, YouTube Music is a trademark of Google LCC._
|
||||||
|
|
||||||
|
[Github](https://github.com/maikka39/Youtube-Music-Desktop-Player)
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Posts"
|
||||||
|
description = "Every now and then I'll write a post. Here's a collection of my previous ones."
|
||||||
|
+++
|
||||||
|
|
||||||
|
Every now and then I'll write a post. Here's a collection of my previous ones.
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Advent of Code - 2021"
|
||||||
|
date = 2021-12-01T16:41:25+02:00
|
||||||
|
description = "My participation in Advent of Code 2021."
|
||||||
|
cover = "img/posts/adventofcode/2021_cover.png"
|
||||||
|
tags = [
|
||||||
|
"AdventOfCode",
|
||||||
|
"algorithms",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"code",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
It's December again!:tada:
|
||||||
|
|
||||||
|
That doesn't only mean it'll be my birthday soon :birthday:, but I'll also participate in some advent challenges again.
|
||||||
|
|
||||||
|
Last year I participated in [The Advent of CTF]({{< ref "/posts/adventofctf.md" >}}), but this year I feel like doing some coding challenges. I have heard many people talk about [Advent of Code](https://adventofcode.com/), but have never actually done the challenges. So this year, I'll be busy with Advent of Code.
|
||||||
|
|
||||||
|
## Language
|
||||||
|
|
||||||
|
I'll most likely be solving the problems in Python. This is my preferred language for most thing algoritms. I have thought about using other languages, but due to my internship I won't have much time to solve the problems and thus don't want to spend time looking up the language features.
|
||||||
|
|
||||||
|
After solving the challenges and waiting for a bit for others to solve them, I'll post my solutions on [my GitHub repo for it](https://github.com/maikka39/Advent-of-Code)
|
||||||
|
|
||||||
|
## Competition
|
||||||
|
|
||||||
|
If you feel like you you can beat me in solving the problems, feel free to join my private leaderboard using the following code: `1337061-861df0da`.
|
||||||
|
|
||||||
|
You'll have plenty of time as I won't be setting an alarm at 6 A.M. my time to solve them :sleeping:.
|
||||||
|
|
||||||
|
Happy coding to all of you that are participating!:computer:
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "The Advent of CTF - 2020"
|
||||||
|
date = 2021-02-08T16:41:25+02:00
|
||||||
|
description = "My participation in The Advent of CTF 2020."
|
||||||
|
cover = "img/posts/adventofctf/cover.png"
|
||||||
|
tags = [
|
||||||
|
"AdventOfCTF",
|
||||||
|
"ctf",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"ctf",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
So, last December I participated in The Advent of CTF.
|
||||||
|
|
||||||
|
## The Advent of CTF
|
||||||
|
|
||||||
|
This CTF is a yearly competition held in December. It, like the name implies, features 24 challenges. One every day before Christmas. The challenges range from easy to hard and the CTF is created and curated by [Arjen Wiersma](https://twitter.com/credmp).
|
||||||
|
|
||||||
|
## First CTF
|
||||||
|
|
||||||
|
This was my first "real" CTF. I had played some local challenged from the internet, but had never dealt with remote machines.
|
||||||
|
|
||||||
|
Because it was my first one, I though I'd be a good idea to document my progress. I choose to do this to both force myself to actually deeply understand the exploit, and help others learn how to do these challenge as I would have never been able to solve them if it weren't for some great writeups by others.
|
||||||
|
|
||||||
|
[My writeups of these challenges can be found here]({{< ref "/tags/adventofctf/" >}}).
|
||||||
|
|
||||||
|
## Expreriences
|
||||||
|
|
||||||
|
From playing this CTF I learned a lot about how website can be exploited. Like I said above, I did have _some_ previous knowledge, but no where near what I have now because of this CTF.
|
||||||
|
|
||||||
|
The challenges were very diverse and every single one thought me a new subject.
|
||||||
|
|
||||||
|
Even though I was pretty new to this, I almost managed to get a first blood on a challenge. Only being beated by a few minutes. In the end I did end up in the top 20, finishing in 13th place.
|
||||||
|
|
||||||
|
{{< figure src="/img/posts/adventofctf/scoreboard.jpeg" title="Scoreboard" >}}
|
||||||
|
|
||||||
|
Because I finished in 13th place, I even got a physical coin as a remider of this CTF.
|
||||||
|
|
||||||
|
{{< figure src="/img/posts/adventofctf/coin.jpeg" title="Coin" >}}
|
||||||
|
|
||||||
|
Finally, I'd like to thank [Arjen Wiersma](https://twitter.com/credmp) and [NOVI Hogeschool](https://twitter.com/NOVIhogeschool) again for this awesome CTF and this great opportinity to learn about hacking.
|
||||||
|
|
||||||
|
The original challenges can be found on [the Advent of CTF GitHub page](https://github.com/adventofctf/2020).
|
||||||
@@ -0,0 +1,90 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "My Linux Journey"
|
||||||
|
date = 2022-02-17T16:41:25+02:00
|
||||||
|
description = "Recently, my friend Raymon posted on is website about his distro hopping journey. I thought it was fun to see what he used over the years, so created a blog post for myself to post my journey."
|
||||||
|
cover = "img/posts/linux-journey/cover.png"
|
||||||
|
tags = [
|
||||||
|
"linux",
|
||||||
|
"windows",
|
||||||
|
"zorin os",
|
||||||
|
"kali linux",
|
||||||
|
"Pop!_OS",
|
||||||
|
"manjaro",
|
||||||
|
"arch",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"personal",
|
||||||
|
"linux",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
Recently, my friend [Raymon](https://raymon.dev/) [posted on is website about his distro hopping journey](https://raymon.dev/posts/2022/2/hopping-around.html). I thought it was fun to see what he used over the years, so created a blog post for myself to post my journey.
|
||||||
|
|
||||||
|
## Tl;dr
|
||||||
|
|
||||||
|
| Device | Distro _("/" means dualbooted)_ | Year |
|
||||||
|
| ---------------------------- | ------------------------------- | --------- |
|
||||||
|
| Toshiba Satellite C50D-A-10K | Windows | 2016 |
|
||||||
|
| Toshiba Satellite C50D-A-10K | ZorinOS / Windows | 2016-2017 |
|
||||||
|
| Toshiba Satellite C50D-A-10K | Kali Linux | 2017 |
|
||||||
|
| Toshiba Satellite C50D-A-10K | ZorinOS | 2017 |
|
||||||
|
| MSI GL62M 7REX | Windows | 2018 |
|
||||||
|
| MSI GL62M 7REX | Pop!_OS / Windows | 2019-2020 |
|
||||||
|
| Asus Zephyrus M GU502GV | Windows | 2020 |
|
||||||
|
| Asus Zephyrus M GU502GV | Manjaro / Windows | 2020-2021 |
|
||||||
|
| Asus Zephyrus M GU502GV | Arch / Windows | 2021-2022 |
|
||||||
|
|
||||||
|
## My journey
|
||||||
|
|
||||||
|
### First laptop
|
||||||
|
|
||||||
|
When I got my first laptop (a Toshiba Satellite C50D-A-10K), it, of course, had Windows installed. At first, this worked fine, as I didn't use my laptop that much. But as I started to use it more, I got more and more annoyed with how slow it was and the `DPC WATCHDOG VIOLATION` blue screens.
|
||||||
|
|
||||||
|
Part of the slowness was, naturally, because of the computer itself. Back then, you couldn't expect too much from a cheap AMD APU.
|
||||||
|
|
||||||
|
So, I started looking around and came across Zorin OS.
|
||||||
|
|
||||||
|
#### Zorin OS
|
||||||
|
|
||||||
|
After spending some time learning how to dual boot Zorin OS, I was pleasantly surprised with how well it worked out of the box. Its usage wasn't too different from Windows, which was a huge plus, as I had never used or heard about Linux before. And even though it looked like Windows, it was much faster to use.
|
||||||
|
|
||||||
|
As I continued using Zorin OS, I started using the terminal more and more. This is probably where my love for Linux started. It allowed me to do things much faster, and it made way more sense than having to click through twenty UI components.
|
||||||
|
|
||||||
|
#### Kali Linux
|
||||||
|
|
||||||
|
By this time, I learned about hacking, and saw many people use Kali Linux for it. As I didn't know much about it, and I didn't know how to install the tools necessary on Zorin OS, I installed Kali.
|
||||||
|
|
||||||
|
This actually wasn't a good experience. Although all the tools I wanted worked well, Kali was very slow on my machine. Because of this, I turned back to Zorin OS soon after.
|
||||||
|
|
||||||
|
### MSI laptop
|
||||||
|
|
||||||
|
Slowly, I became sick of the slowness, and wanted to play Minecraft at more than 20 FPS. So, I bought an MSI GL62M 7REX, which, with its i7-7700HQ and GTX 1050 Ti, was a massive upgrade over the AMD E1-1200 in the Toshiba.
|
||||||
|
|
||||||
|
As it, thus, was quick enough, I kept running Windows on it for a while.
|
||||||
|
|
||||||
|
I began to miss Linux after a while, though, and wanted to try something new. This is where Pop!_OS comes into view .
|
||||||
|
|
||||||
|
#### Pop!_OS
|
||||||
|
|
||||||
|
Pop!_OS was great. I got everything to work fairly quickly, and it was easy to use. I still kept Windows around for games, as Linux support was even worse than it is now.
|
||||||
|
|
||||||
|
### Asus Zephyrus
|
||||||
|
|
||||||
|
After a while, the subpar build quality of the MSI laptop really started to show. It was also a fairly heavy laptop, and since it had to carry it to school every day, I started to look for a replacement. I eventually settled on the Asus Zephyrus M GU502GV.
|
||||||
|
|
||||||
|
Initially, I used it with Windows again, but quickly installed Linux again. This time, I heard good things about Manjaro.
|
||||||
|
|
||||||
|
#### Manjaro
|
||||||
|
|
||||||
|
After I installed Manjaro on a second drive, I found out support for my laptop was pretty much nonexistent. The sound card wasn't working, the battery drained at least three times quicker, and certain special keys weren't functioning. I tried several distros, but there always were some major parts of the system that didn't feel like working.
|
||||||
|
|
||||||
|
Because of this, I had to use Windows. Because of [WSL](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux) this was kind of doable, but overall just very annoying.
|
||||||
|
|
||||||
|
I kept coming back to it from time to time, and eventually most issues were fixed. It didn't work exactly how I wanted, though, and my system was pretty bloated.
|
||||||
|
|
||||||
|
#### I use Arch, btw
|
||||||
|
|
||||||
|
Since I liked most parts of Manjaro, I decided to install the distro Manjaro was based on, Arch Linux. Many people say it is hard to use, and difficult to install, but after using it for a little over a year now, I've found the opposite to be true. Especially when it comes to the package manager, pacman is infinitely easier to use than apt.
|
||||||
|
|
||||||
|
Arch Linux has been working very well for me up until now, and I don't plan to hop distros any time soon.
|
||||||
@@ -0,0 +1,60 @@
|
|||||||
|
+++
|
||||||
|
author = "Maik de Kruif"
|
||||||
|
title = "Privacy Policy"
|
||||||
|
date = 2020-12-03T22:31:58+01:00
|
||||||
|
description = ""
|
||||||
|
images = []
|
||||||
|
tags = [
|
||||||
|
"privacy",
|
||||||
|
]
|
||||||
|
categories = [
|
||||||
|
"privacy",
|
||||||
|
]
|
||||||
|
+++
|
||||||
|
|
||||||
|
This privacy policy applies to [maik.dev](https://maik.dev).
|
||||||
|
|
||||||
|
We respect the privacy of our visitors. We collect only such personal information as is needed to provide the information, service, or assistance that you request.
|
||||||
|
|
||||||
|
## Information We Collect Automatically
|
||||||
|
|
||||||
|
If you visit our website to browse, read, or download information:
|
||||||
|
|
||||||
|
- Your web browser automatically sends us (and we may retain) information such as the:
|
||||||
|
- Internet domain through which you access the Internet (e.g., yourServiceProvider.com if you use a commercial Internet service provider, or yourSchool.edu if you use an Internet account from your school);
|
||||||
|
- Internet Protocol address of the computer you are using;
|
||||||
|
- type of browser software and operating system you are using;
|
||||||
|
- date and time you access our site; and
|
||||||
|
- the Internet address of the site from which you linked directly to our site.
|
||||||
|
- We will use this information as aggregate data to help us maintain this site, e.g., to determine the number of visitors to different sections of our site, to ensure the site is working properly, and to help us make our site more accessible and useful.
|
||||||
|
- We will not use this information to identify individuals, except for site security or law enforcement purposes.
|
||||||
|
- We will not obtain personally-identifying information about you when you visit our site, unless you choose to provide such information.
|
||||||
|
|
||||||
|
## Other Information We Collect
|
||||||
|
|
||||||
|
If you choose to identify yourself (or otherwise provide us with personal information) when you use our online forms:
|
||||||
|
|
||||||
|
- We will collect (and may retain) any personally identifying information, such as your name, street address, email address, and phone number, and any other information you provide. We will use this information to try to fulfill your request and may use it to provide you with additional information at a later time. We will not disclose such information to third parties, except as specified in this privacy policy.
|
||||||
|
- If you request information, services, or assistance, we may disclose your personal information to those third parties that (in our judgment) are appropriate in order to fulfill your request. If, when you provide us with such information, you specify that you do not want us to disclose the information to third parties, we will honor your request. Note, however, that if you do not provide such information, it may be impossible for us to refer, respond to or fulfill your request.
|
||||||
|
|
||||||
|
## How Long We Keep Information
|
||||||
|
|
||||||
|
We may keep information that will collect for an unlimited period of time.
|
||||||
|
|
||||||
|
## Security
|
||||||
|
|
||||||
|
Please note that electronic communication, particularly email, is not necessarily secure against interception. Please do not send sensitive data by email or web form.
|
||||||
|
|
||||||
|
## Cookies
|
||||||
|
|
||||||
|
We may use cookies in order to customize this site for return visitors. These cookies are not required for site functionality. Additionally, third-party widgets such as YouTube or Flickr may install cookies depending on their configuration. You are not required to accept any cookies to use this site.
|
||||||
|
|
||||||
|
### Google Analytics
|
||||||
|
|
||||||
|
We use a tool called “Google Analytics” to collect information about use of this site. Google Analytics collects information such as how often users visit this site, what pages they visit when they do so, and what other sites they used prior to coming to this site. We use the information we get from Google Analytics only to improve this site. Google Analytics collects only the IP address assigned to you on the date you visit this site, rather than your name or other identifying information. We do not combine the information collected through the use of Google Analytics with personally identifiable information. Although Google Analytics plants a permanent cookie on your web browser to identify you as a unique user the next time you visit this site, the cookie cannot be used by anyone but Google. Google’s ability to use and share information collected by Google Analytics about your visits to this site is restricted by the Google Analytics Terms of Use and the Google Privacy Policy. You can prevent Google Analytics from recognizing you on return visits to this site by disabling cookies on your browser.
|
||||||
|
|
||||||
|
## Site Monitoring
|
||||||
|
|
||||||
|
For site security purposes this computer system employs software programs to monitor network traffic. Anyone using this system consents to the monitoring of their use by system or security personnel.
|
||||||
|
|
||||||
|
Unauthorized use, tampering with or modification of this system—or its supporting hardware or software—may violate federal or other statutes and may subject the violator to criminal and civil penalties. In the event of unauthorized intrusion, all relevant information regarding possible violation of law may be provided to law enforcement officials.
|
||||||