Make use of static-site generation with 11ty
164
.gitignore
vendored
Normal file
|
@ -0,0 +1,164 @@
|
||||||
|
# Created by https://www.toptal.com/developers/gitignore/api/visualstudiocode,node
|
||||||
|
# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudiocode,node
|
||||||
|
|
||||||
|
### Node ###
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
.pnpm-debug.log*
|
||||||
|
|
||||||
|
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||||
|
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||||
|
|
||||||
|
# Runtime data
|
||||||
|
pids
|
||||||
|
*.pid
|
||||||
|
*.seed
|
||||||
|
*.pid.lock
|
||||||
|
|
||||||
|
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||||
|
lib-cov
|
||||||
|
|
||||||
|
# Coverage directory used by tools like istanbul
|
||||||
|
coverage
|
||||||
|
*.lcov
|
||||||
|
|
||||||
|
# nyc test coverage
|
||||||
|
.nyc_output
|
||||||
|
|
||||||
|
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||||
|
.grunt
|
||||||
|
|
||||||
|
# Bower dependency directory (https://bower.io/)
|
||||||
|
bower_components
|
||||||
|
|
||||||
|
# node-waf configuration
|
||||||
|
.lock-wscript
|
||||||
|
|
||||||
|
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||||
|
build/Release
|
||||||
|
|
||||||
|
# Dependency directories
|
||||||
|
node_modules/
|
||||||
|
jspm_packages/
|
||||||
|
|
||||||
|
# Snowpack dependency directory (https://snowpack.dev/)
|
||||||
|
web_modules/
|
||||||
|
|
||||||
|
# TypeScript cache
|
||||||
|
*.tsbuildinfo
|
||||||
|
|
||||||
|
# Optional npm cache directory
|
||||||
|
.npm
|
||||||
|
|
||||||
|
# Optional eslint cache
|
||||||
|
.eslintcache
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
.stylelintcache
|
||||||
|
|
||||||
|
# Microbundle cache
|
||||||
|
.rpt2_cache/
|
||||||
|
.rts2_cache_cjs/
|
||||||
|
.rts2_cache_es/
|
||||||
|
.rts2_cache_umd/
|
||||||
|
|
||||||
|
# Optional REPL history
|
||||||
|
.node_repl_history
|
||||||
|
|
||||||
|
# Output of 'npm pack'
|
||||||
|
*.tgz
|
||||||
|
|
||||||
|
# Yarn Integrity file
|
||||||
|
.yarn-integrity
|
||||||
|
|
||||||
|
# dotenv environment variable files
|
||||||
|
.env
|
||||||
|
.env.development.local
|
||||||
|
.env.test.local
|
||||||
|
.env.production.local
|
||||||
|
.env.local
|
||||||
|
|
||||||
|
# parcel-bundler cache (https://parceljs.org/)
|
||||||
|
.cache
|
||||||
|
.parcel-cache
|
||||||
|
|
||||||
|
# Next.js build output
|
||||||
|
.next
|
||||||
|
out
|
||||||
|
|
||||||
|
# Nuxt.js build / generate output
|
||||||
|
.nuxt
|
||||||
|
dist
|
||||||
|
|
||||||
|
# Gatsby files
|
||||||
|
.cache/
|
||||||
|
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||||
|
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||||
|
# public
|
||||||
|
|
||||||
|
# vuepress build output
|
||||||
|
.vuepress/dist
|
||||||
|
|
||||||
|
# vuepress v2.x temp and cache directory
|
||||||
|
.temp
|
||||||
|
|
||||||
|
# Docusaurus cache and generated files
|
||||||
|
.docusaurus
|
||||||
|
|
||||||
|
# Serverless directories
|
||||||
|
.serverless/
|
||||||
|
|
||||||
|
# FuseBox cache
|
||||||
|
.fusebox/
|
||||||
|
|
||||||
|
# DynamoDB Local files
|
||||||
|
.dynamodb/
|
||||||
|
|
||||||
|
# TernJS port file
|
||||||
|
.tern-port
|
||||||
|
|
||||||
|
# Stores VSCode versions used for testing VSCode extensions
|
||||||
|
.vscode-test
|
||||||
|
|
||||||
|
# yarn v2
|
||||||
|
.yarn/cache
|
||||||
|
.yarn/unplugged
|
||||||
|
.yarn/build-state.yml
|
||||||
|
.yarn/install-state.gz
|
||||||
|
.pnp.*
|
||||||
|
|
||||||
|
### Node Patch ###
|
||||||
|
# Serverless Webpack directories
|
||||||
|
.webpack/
|
||||||
|
|
||||||
|
# Optional stylelint cache
|
||||||
|
|
||||||
|
# SvelteKit build / generate output
|
||||||
|
.svelte-kit
|
||||||
|
|
||||||
|
### VisualStudioCode ###
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/settings.json
|
||||||
|
!.vscode/tasks.json
|
||||||
|
!.vscode/launch.json
|
||||||
|
!.vscode/extensions.json
|
||||||
|
!.vscode/*.code-snippets
|
||||||
|
|
||||||
|
# Local History for Visual Studio Code
|
||||||
|
.history/
|
||||||
|
|
||||||
|
# Built Visual Studio Code Extensions
|
||||||
|
*.vsix
|
||||||
|
|
||||||
|
### VisualStudioCode Patch ###
|
||||||
|
# Ignore all local history of files
|
||||||
|
.history
|
||||||
|
.ionide
|
||||||
|
|
||||||
|
# End of https://www.toptal.com/developers/gitignore/api/visualstudiocode,node
|
||||||
|
ssg/_site
|
|
@ -1,5 +1,5 @@
|
||||||
:8080
|
:8080
|
||||||
root * ./src
|
root * ./ssg/_site
|
||||||
redir /status /status/default
|
redir /status /status/default
|
||||||
redir /status/* https://status.nexy7574.co.uk{uri}
|
redir /status/* https://status.nexy7574.co.uk{uri}
|
||||||
encode {
|
encode {
|
||||||
|
|
22
ssg/.eleventy.js
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
// const { eleventyImageTransformPlugin } = require("@11ty/eleventy-img");
|
||||||
|
|
||||||
|
module.exports = function (eleventyConfig) {
|
||||||
|
eleventyConfig.setLiquidOptions({
|
||||||
|
jsTruthy: true,
|
||||||
|
});
|
||||||
|
// eleventyConfig.addPassthroughCopy("img");
|
||||||
|
// eleventyConfig.addPassthroughCopy("assets");
|
||||||
|
// eleventyConfig.addPassthroughCopy("js");
|
||||||
|
eleventyConfig.addPassthroughCopy("src/css");
|
||||||
|
eleventyConfig.addPassthroughCopy("src/img");
|
||||||
|
eleventyConfig.addPassthroughCopy("src/assets");
|
||||||
|
return {
|
||||||
|
dir: {
|
||||||
|
input: "src",
|
||||||
|
// data: "_assets",
|
||||||
|
// includes: "_includes",
|
||||||
|
// layouts: "_layouts"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//
|
||||||
|
};
|
2962
ssg/package-lock.json
generated
Normal file
17
ssg/package.json
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name": "ssg",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "",
|
||||||
|
"main": "index.js",
|
||||||
|
"scripts": {
|
||||||
|
"start": "eleventy --serve",
|
||||||
|
"build": "eleventy"
|
||||||
|
},
|
||||||
|
"keywords": [],
|
||||||
|
"author": "",
|
||||||
|
"license": "ISC",
|
||||||
|
"dependencies": {
|
||||||
|
"@11ty/eleventy": "^2.0.1",
|
||||||
|
"@11ty/eleventy-img": "^4.0.2"
|
||||||
|
}
|
||||||
|
}
|
3
ssg/src/_includes/footer.njk
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<footer>
|
||||||
|
<p>🍉 Free Palestine | 🇺🇦 Slava Ukraini | 🔥 Tories out</p>
|
||||||
|
</footer>
|
18
ssg/src/_includes/layouts/base.njk
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" style="background-color: black;">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>nexy7574.co.uk</title>
|
||||||
|
<link rel="stylesheet" href="{{ '/css/bundle.css' | url }}">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="mainBody">
|
||||||
|
{% include 'nav.njk' %}
|
||||||
|
<main>
|
||||||
|
{{ content | safe }}
|
||||||
|
</main>
|
||||||
|
{% include 'footer.njk' %}
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
28
ssg/src/_includes/nav.njk
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<header>
|
||||||
|
<nav>
|
||||||
|
<div>
|
||||||
|
<span><img src="/img/twemoji_trans.svg" width="32px" height="32px" alt="🏳️⚧️" class="icon"/></span> <i id="__name">Nexus</i>
|
||||||
|
</div>
|
||||||
|
<div class="navbar">
|
||||||
|
<div><a href="/">Home</a></div>
|
||||||
|
<div><a href="/faq">FAQ</a></div>
|
||||||
|
<div><a href="/chat/#/user/@nex:nexy7574.co.uk" class="icon"><img src="/img/matrix-color.svg" width="32px" height="32px" alt="Chat" title="Chat" class="icon"/></a></div>
|
||||||
|
<div><a href="https://status.nexy7574.co.uk" class="icon"><img src="/img/server.svg" alt="Service Status" title="Service Status" width="32px" height="32px" class="icon"/></a></div>
|
||||||
|
<div>
|
||||||
|
<a href="https://github.com/nexy7574" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="/img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<a href="https://git.i-am.nexus/nex/nexy7574.co.uk-b" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="/img/forgejo-color.svg" alt="Forgejo" title="Forgejo (git) & source code" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<a href="https://mastodon.nexy7574.co.uk" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="/img/mastodon-color.svg" alt="Mastodon" title="Mastodon" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
</header>
|
89
ssg/src/assets/pgp-2024-05-13.txt
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
5UGvAepPBA==
|
||||||
|
=PAYz
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
1
ssg/src/assets/ssh-2024-05-13.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqk+0tSp1dm8ALhcxRjkurj3y/3rN9SOHquNHVk+xXZIOUTXjWSgXclrlsHH2562VgeBx8ZxJFkX04jMb3wkPHNL794troX4LX17X0j5ixBK76vPGMuzG0/VU6oLwl3S2Zkuz6q3d3oGj6+qemLhQF6qRZ+ByTkhoQu22Jc6QYpk0o6lMF1kabkS496LxBD8JlAGBT4DsdHem3dDUwvAWseNEs3gJHOup9T43Iw3pKpZYrfISBxhkehojtsMNFziL+pX2rYZHxwoMAiaD9LKlhFsZgND2bMYFJ0WODycAwkrhEMwEVoEWNtlYeqadRZpCSA1ta1Rz9souovTkV2Kbov522eHuIVlu1uWNENiM+fEtP36QEMnZago0FgUBpfijh8LNjN/SR5aOeyn2Nw9pjQP3ZSjmFe2lFz88E092HwrAczc6gGb/tCH4DcTBwyna6AQFHFFw1QcW9rer5kjYnFpZGjmXBBnSFg8lDy3AhGdUSJfELS3ESA0pyAWk7Nr0=
|
211
ssg/src/css/bundle.css
Normal file
|
@ -0,0 +1,211 @@
|
||||||
|
.question {
|
||||||
|
margin: 1em;
|
||||||
|
padding: 1em;
|
||||||
|
box-shadow: 0 0 1em rgba(255, 255, 255, 0.2);
|
||||||
|
background-color: rgba(255, 255, 255, 0.2);
|
||||||
|
border-radius: 5px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.question p {
|
||||||
|
font-size: large
|
||||||
|
}
|
||||||
|
|
||||||
|
code.block {
|
||||||
|
display: block;
|
||||||
|
padding: 1em;
|
||||||
|
margin: 1em 0;
|
||||||
|
background-color: #1f1f1f;
|
||||||
|
color: #dcdcdc;
|
||||||
|
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: 1.5;
|
||||||
|
border-radius: 5px;
|
||||||
|
overflow-x: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
code.inline {
|
||||||
|
background-color: #1f1f1f;
|
||||||
|
color: #dcdcdc;
|
||||||
|
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
||||||
|
font-size: initial;
|
||||||
|
line-height: 1.2;
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0.4em 0.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.emoji {
|
||||||
|
font-family: 'Noto Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Android Emoji',
|
||||||
|
'EmojiSymbols', 'EmojiOne Color', 'EmojiOne', 'Apple Color Emoji', 'Twemoji Mozilla', 'Twemoji', 'Segoe UI Symbol', sans-serif;
|
||||||
|
/* just try them all 🤷 */
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #59CBF7
|
||||||
|
}
|
||||||
|
a:hover, a:visited {
|
||||||
|
color: #F5A9B7
|
||||||
|
}
|
||||||
|
|
||||||
|
a.icon {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
img.icon {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
html,body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
background-color: #000;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
font-size: larger;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
.mainBody {
|
||||||
|
max-width: 1200px;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
header {
|
||||||
|
color: #fff;
|
||||||
|
padding: 0;
|
||||||
|
margin: 1em 0;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
nav {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: space-between;
|
||||||
|
background-color: #111;
|
||||||
|
border-radius: 12px;
|
||||||
|
align-items: center;
|
||||||
|
width: 100%;
|
||||||
|
padding: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.navbar {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(7, 1fr);
|
||||||
|
align-items: center;
|
||||||
|
align-self: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
width: 100%;
|
||||||
|
border-collapse: collapse;
|
||||||
|
background-color: #111;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
table th,
|
||||||
|
table td {
|
||||||
|
padding: 0.5em;
|
||||||
|
border: 1px solid #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
table th {
|
||||||
|
background-color: #222;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
table tr:nth-child(even) {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
table tr:hover {
|
||||||
|
background-color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
|
#array {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
grid-gap: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#array div, .box {
|
||||||
|
margin: 0 0.5em;
|
||||||
|
padding: 0.5em;
|
||||||
|
background-color: #333;
|
||||||
|
border-radius: 12px;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
margin: 1em 0;
|
||||||
|
padding: 1em;
|
||||||
|
background-color: #111;
|
||||||
|
border-radius: 12px;
|
||||||
|
color: #fff;
|
||||||
|
border-top: 1px solid #444
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* MAKE SURE THIS IS LOADED *AFTER* MAIN STYLESHEETS! ORDER MATTERS! */
|
||||||
|
@media screen and (max-width: 1600px) {
|
||||||
|
body {
|
||||||
|
max-width: 80%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 1400px) {
|
||||||
|
body {
|
||||||
|
max-width: 80%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 800px) {
|
||||||
|
body {
|
||||||
|
max-width: 100%;
|
||||||
|
min-width: 100%;
|
||||||
|
width: 100%;
|
||||||
|
font-size: initial;
|
||||||
|
text-align: center;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
nav {
|
||||||
|
flex-direction: column;
|
||||||
|
padding: 0;
|
||||||
|
gap: 2em;
|
||||||
|
padding: 1em 0;
|
||||||
|
}
|
||||||
|
.navbar span {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
ul.navbar li {
|
||||||
|
margin: 0.3em 0;
|
||||||
|
}
|
||||||
|
#array {
|
||||||
|
grid-template-columns: repeat(1, 1fr);
|
||||||
|
}
|
||||||
|
header {
|
||||||
|
margin: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
This file should be imported at the end of <body> so that any fonts that're needed are loaded last.
|
||||||
|
|
||||||
|
Sure this will make fonts look ugly on slow connections, but if you can't load the page because the font is taking too long to load, well that's even worse.
|
||||||
|
*/
|
||||||
|
@import url('https://fonts.googleapis.com/css2?family=Noto+Color+Emoji&display=swap');
|
110
ssg/src/faq.njk
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
---
|
||||||
|
layout: layouts/base.njk
|
||||||
|
title: faq
|
||||||
|
---
|
||||||
|
<div>
|
||||||
|
<h1>Frequently Asked Questions</h1>
|
||||||
|
<p>Note: I am dyslexic, so please excuse any spelling or grammar errors. Feel free to message me for corrections ^^</p>
|
||||||
|
<div id="toc" hidden>
|
||||||
|
<h2>Table Of Contents:</h2>
|
||||||
|
<ol id="toc-li"></ol>
|
||||||
|
</div>
|
||||||
|
<noscript><p>There will be a table of contents here if you enable JavaScript. You don't have to though.</p></noscript>
|
||||||
|
<hr/>
|
||||||
|
<div class="question">
|
||||||
|
<h2>Q: What are your keys???</h2>
|
||||||
|
<div>
|
||||||
|
<h3>A: PGP:</h3>
|
||||||
|
<p>
|
||||||
|
<code class="inline">0FA334385D0B689F</code> - available via WKD (<code class="inline">gpg --locate-keys me@nexy7574.co.uk</code>), or the full (armoured) key is available <a href="assets/pgp-2024-05-13.txt" download>here</a>.
|
||||||
|
The key is also available on several keyservers, however
|
||||||
|
<a href="https://keyserver.ubuntu.com/pks/lookup?search=0FA334385D0B689F&fingerprint=on&op=index" target="_blank" rel="noopener noreferrer">Ubuntu's keyserver</a>
|
||||||
|
is the most reliable and kept up-to-date. Although, WKD should be preferred where possible.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>A: SSH</h3>
|
||||||
|
<p>Can be imported from <a href="{{ '/assets/ssh-2024-05-13.txt' | url }}" download>this text file</a>, however be aware I do not sign anything with my SSH key, only my PGP key.</p>
|
||||||
|
<p>Feel free to give me SSH access to your servers though :^)</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="what-are-your-pc-specs">Q: What are your PC specs/how much did your PC cost?</h2>
|
||||||
|
<p>
|
||||||
|
A: You can find all the details on <a href="https://uk.pcpartpicker.com/b/Hfz7YJ" rel="noopener" target="_blank">PcPartPicker</a>.
|
||||||
|
It cost me around £650 to build in December, 2023.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="can-you-hack">Q: Can you hack my friend's instagram?</h2>
|
||||||
|
<p>A: <strong><em>No.</em></strong></p>
|
||||||
|
<h2 id="fix-printer">Q: Can you fix my printer?</h2>
|
||||||
|
<p>
|
||||||
|
A: Yep!
|
||||||
|
<ol>
|
||||||
|
<li>Kick the printer.</li>
|
||||||
|
<li>Kick it harder.</li>
|
||||||
|
<li>Unplug it (bare with me)</li>
|
||||||
|
<li>Bring your printer to the nearest window</li>
|
||||||
|
<li>Open the window</li>
|
||||||
|
<li>Throw the printer out the window</li>
|
||||||
|
<li>Ask someone else to print it for you (its their problem then)</li>
|
||||||
|
</ol>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="what-music-do-you-listen-to">Q: What music do you listen to?</h2>
|
||||||
|
<p>A: Here's my main playlists. TL;DR, I listen to a lot of pop and rock, with a sprinkle of electronic</p>
|
||||||
|
<p>My favourite artists aren't really a thing, I prefer music over artists and albums, but I consistently listen to K.Flay, Grandson, Mother Mother, Super Whatevr, Cavetown, The Front Bottoms, Hospital Bracelet, and Crawlers.</p>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/26wJTA2mXk3QNXhqBI95kM?utm_source=generator&theme=0" width="100%" height="352" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/07GvdPCtDvWO2UFawBDlSA?utm_source=generator&theme=0" width="100%" height="152" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/1mTh1hj7rmzCYknLWfru4C?utm_source=generator&theme=0" width="100%" height="152" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<p>I am one of those people that will listen to any music genre, and I actually mean it. Just remember though "will listen" doesn't mean "will like".</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="urandom-or-random">Q: Urandom or Random?</h2>
|
||||||
|
<p>A: Urandom</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.addEventListener(
|
||||||
|
"DOMContentLoaded",
|
||||||
|
() => {
|
||||||
|
const questions = document.querySelectorAll(".question h2");
|
||||||
|
for (let question of questions) {
|
||||||
|
const id = question.id;
|
||||||
|
const a = document.createElement("a");
|
||||||
|
a.href = `#${id}`;
|
||||||
|
a.textContent = "🔗";
|
||||||
|
a.title = "Link to this question";
|
||||||
|
a.style.textDecoration = "none";
|
||||||
|
a.style.fontSize = "smaller";
|
||||||
|
a.style.color = "black";
|
||||||
|
a.style.marginLeft = "0.5em";
|
||||||
|
question.appendChild(a);
|
||||||
|
// copy URL to clipboard
|
||||||
|
a.addEventListener(
|
||||||
|
"click",
|
||||||
|
() => {
|
||||||
|
navigator.clipboard.writeText(location.href + "#" + id);
|
||||||
|
a.textContent = "✅";
|
||||||
|
setTimeout(() => {
|
||||||
|
a.textContent = "🔗";
|
||||||
|
}, 1000);
|
||||||
|
}
|
||||||
|
)
|
||||||
|
// add to table of contents
|
||||||
|
const toc = document.getElementById("toc");
|
||||||
|
toc.hidden = false;
|
||||||
|
const tocLi = document.getElementById("toc-li");
|
||||||
|
const li = document.createElement("li");
|
||||||
|
const a2 = document.createElement("a");
|
||||||
|
a2.href = `#${id}`;
|
||||||
|
a2.textContent = question.textContent.replace(/^Q: /, "").replace("🔗", "");
|
||||||
|
li.appendChild(a2);
|
||||||
|
tocLi.appendChild(li);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
</script>
|
1
ssg/src/img/apple-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#FFFFFF" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Apple</title><path d="M12.152 6.896c-.948 0-2.415-1.078-3.96-1.04-2.04.027-3.91 1.183-4.961 3.014-2.117 3.675-.546 9.103 1.519 12.09 1.013 1.454 2.208 3.09 3.792 3.039 1.52-.065 2.09-.987 3.935-.987 1.831 0 2.35.987 3.96.948 1.637-.026 2.676-1.48 3.676-2.948 1.156-1.688 1.636-3.325 1.662-3.415-.039-.013-3.182-1.221-3.22-4.857-.026-3.04 2.48-4.494 2.597-4.559-1.429-2.09-3.623-2.324-4.39-2.376-2-.156-3.675 1.09-4.61 1.09zM15.53 3.83c.843-1.012 1.4-2.427 1.245-3.83-1.207.052-2.662.805-3.532 1.818-.78.896-1.454 2.338-1.273 3.714 1.338.104 2.715-.688 3.559-1.701"/></svg>
|
After Width: | Height: | Size: 666 B |
1
ssg/src/img/csharp-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg role="img" fill="#512BD4" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>C#</title><path d="M1.194 7.543v8.913c0 1.103.588 2.122 1.544 2.674l7.718 4.456a3.086 3.086 0 0 0 3.088 0l7.718-4.456a3.087 3.087 0 0 0 1.544-2.674V7.543a3.084 3.084 0 0 0-1.544-2.673L13.544.414a3.086 3.086 0 0 0-3.088 0L2.738 4.87a3.085 3.085 0 0 0-1.544 2.673Zm5.403 2.914v3.087a.77.77 0 0 0 .772.772.773.773 0 0 0 .772-.772.773.773 0 0 1 1.317-.546.775.775 0 0 1 .226.546 2.314 2.314 0 1 1-4.631 0v-3.087c0-.615.244-1.203.679-1.637a2.312 2.312 0 0 1 3.274 0c.434.434.678 1.023.678 1.637a.769.769 0 0 1-.226.545.767.767 0 0 1-1.091 0 .77.77 0 0 1-.226-.545.77.77 0 0 0-.772-.772.771.771 0 0 0-.772.772Zm12.35 3.087a.77.77 0 0 1-.772.772h-.772v.772a.773.773 0 0 1-1.544 0v-.772h-1.544v.772a.773.773 0 0 1-1.317.546.775.775 0 0 1-.226-.546v-.772H12a.771.771 0 1 1 0-1.544h.772v-1.543H12a.77.77 0 1 1 0-1.544h.772v-.772a.773.773 0 0 1 1.317-.546.775.775 0 0 1 .226.546v.772h1.544v-.772a.773.773 0 0 1 1.544 0v.772h.772a.772.772 0 0 1 0 1.544h-.772v1.543h.772a.776.776 0 0 1 .772.772Zm-3.088-2.315h-1.544v1.543h1.544v-1.543Z"/></svg>
|
After Width: | Height: | Size: 1.1 KiB |
1
ssg/src/img/css3-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#1572B6" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>CSS3</title><path d="M1.5 0h21l-1.91 21.563L11.977 24l-8.565-2.438L1.5 0zm17.09 4.413L5.41 4.41l.213 2.622 10.125.002-.255 2.716h-6.64l.24 2.573h6.182l-.366 3.523-2.91.804-2.956-.81-.188-2.11h-2.61l.29 3.855L12 19.288l5.373-1.53L18.59 4.414z"/></svg>
|
After Width: | Height: | Size: 343 B |
1
ssg/src/img/discord-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#5865F2" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Discord</title><path d="M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg>
|
After Width: | Height: | Size: 1.4 KiB |
BIN
ssg/src/img/discordpy.png
Normal file
After Width: | Height: | Size: 60 KiB |
1
ssg/src/img/docker-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#2496ED" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Docker</title><path d="M13.983 11.078h2.119a.186.186 0 00.186-.185V9.006a.186.186 0 00-.186-.186h-2.119a.185.185 0 00-.185.185v1.888c0 .102.083.185.185.185m-2.954-5.43h2.118a.186.186 0 00.186-.186V3.574a.186.186 0 00-.186-.185h-2.118a.185.185 0 00-.185.185v1.888c0 .102.082.185.185.185m0 2.716h2.118a.187.187 0 00.186-.186V6.29a.186.186 0 00-.186-.185h-2.118a.185.185 0 00-.185.185v1.887c0 .102.082.185.185.186m-2.93 0h2.12a.186.186 0 00.184-.186V6.29a.185.185 0 00-.185-.185H8.1a.185.185 0 00-.185.185v1.887c0 .102.083.185.185.186m-2.964 0h2.119a.186.186 0 00.185-.186V6.29a.185.185 0 00-.185-.185H5.136a.186.186 0 00-.186.185v1.887c0 .102.084.185.186.186m5.893 2.715h2.118a.186.186 0 00.186-.185V9.006a.186.186 0 00-.186-.186h-2.118a.185.185 0 00-.185.185v1.888c0 .102.082.185.185.185m-2.93 0h2.12a.185.185 0 00.184-.185V9.006a.185.185 0 00-.184-.186h-2.12a.185.185 0 00-.184.185v1.888c0 .102.083.185.185.185m-2.964 0h2.119a.185.185 0 00.185-.185V9.006a.185.185 0 00-.184-.186h-2.12a.186.186 0 00-.186.186v1.887c0 .102.084.185.186.185m-2.92 0h2.12a.185.185 0 00.184-.185V9.006a.185.185 0 00-.184-.186h-2.12a.185.185 0 00-.184.185v1.888c0 .102.082.185.185.185M23.763 9.89c-.065-.051-.672-.51-1.954-.51-.338.001-.676.03-1.01.087-.248-1.7-1.653-2.53-1.716-2.566l-.344-.199-.226.327c-.284.438-.49.922-.612 1.43-.23.97-.09 1.882.403 2.661-.595.332-1.55.413-1.744.42H.751a.751.751 0 00-.75.748 11.376 11.376 0 00.692 4.062c.545 1.428 1.355 2.48 2.41 3.124 1.18.723 3.1 1.137 5.275 1.137.983.003 1.963-.086 2.93-.266a12.248 12.248 0 003.823-1.389c.98-.567 1.86-1.288 2.61-2.136 1.252-1.418 1.998-2.997 2.553-4.4h.221c1.372 0 2.215-.549 2.68-1.009.309-.293.55-.65.707-1.046l.098-.288Z"/></svg>
|
After Width: | Height: | Size: 1.7 KiB |
1
ssg/src/img/element-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#0DBD8B" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Element</title><path d="M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12 12-5.373 12-12S18.627 0 12 0zm-1.314 4.715c3.289 0 5.956 2.66 5.956 5.943 0 .484-.394.877-.879.877s-.879-.393-.879-.877c0-2.313-1.88-4.189-4.198-4.189-.486 0-.879-.393-.879-.877s.392-.877.879-.877zm-5.092 9.504c-.486 0-.879-.394-.879-.877 0-3.283 2.666-5.945 5.956-5.945.485 0 .879.393.879.877s-.394.876-.879.876c-2.319 0-4.198 1.877-4.198 4.191 0 .484-.395.878-.879.878zm7.735 5.067c-3.29 0-5.957-2.662-5.957-5.944 0-.484.394-.878.879-.878s.879.394.879.878c0 2.313 1.88 4.189 4.199 4.189.485 0 .879.393.879.877 0 .486-.394.878-.879.878zm0-2.683c-.485 0-.88-.393-.88-.876 0-.484.395-.878.88-.878 2.318 0 4.199-1.876 4.199-4.19 0-.484.393-.877.879-.877.485 0 .879.393.879.877 0 3.282-2.667 5.944-5.957 5.944z"/></svg>
|
After Width: | Height: | Size: 875 B |
BIN
ssg/src/img/email.png
Normal file
After Width: | Height: | Size: 76 KiB |
1
ssg/src/img/fastapi-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#009688" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>FastAPI</title><path d="M12 0C5.375 0 0 5.375 0 12c0 6.627 5.375 12 12 12 6.626 0 12-5.373 12-12 0-6.625-5.373-12-12-12zm-.624 21.62v-7.528H7.19L13.203 2.38v7.528h4.029L11.376 21.62z"/></svg>
|
After Width: | Height: | Size: 284 B |
1
ssg/src/img/fedora-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#51A2DA" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Fedora</title><path d="M12.001 0C5.376 0 .008 5.369.004 11.992H.002v9.287h.002A2.726 2.726 0 0 0 2.73 24h9.275c6.626-.004 11.993-5.372 11.993-11.997C23.998 5.375 18.628 0 12 0zm2.431 4.94c2.015 0 3.917 1.543 3.917 3.671 0 .197.001.395-.03.619a1.002 1.002 0 0 1-1.137.893 1.002 1.002 0 0 1-.842-1.175 2.61 2.61 0 0 0 .013-.337c0-1.207-.987-1.672-1.92-1.672-.934 0-1.775.784-1.777 1.672.016 1.027 0 2.046 0 3.07l1.732-.012c1.352-.028 1.368 2.009.016 1.998l-1.748.013c-.004.826.006.677.002 1.093 0 0 .015 1.01-.016 1.776-.209 2.25-2.124 4.046-4.424 4.046-2.438 0-4.448-1.993-4.448-4.437.073-2.515 2.078-4.492 4.603-4.469l1.409-.01v1.996l-1.409.013h-.007c-1.388.04-2.577.984-2.6 2.47a2.438 2.438 0 0 0 2.452 2.439c1.356 0 2.441-.987 2.441-2.437l-.001-7.557c0-.14.005-.252.02-.407.23-1.848 1.883-3.256 3.754-3.256z"/></svg>
|
After Width: | Height: | Size: 911 B |
1
ssg/src/img/forgejo-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#FB923C" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Forgejo</title><path d="M16.7773 0c1.6018 0 2.9004 1.2986 2.9004 2.9005s-1.2986 2.9004-2.9004 2.9004c-1.0854 0-2.0315-.596-2.5288-1.4787H12.91c-2.3322 0-4.2272 1.8718-4.2649 4.195l-.0007 2.1175a7.0759 7.0759 0 0 1 4.148-1.4205l.1176-.001 1.3385.0002c.4973-.8827 1.4434-1.4788 2.5288-1.4788 1.6018 0 2.9004 1.2986 2.9004 2.9005s-1.2986 2.9004-2.9004 2.9004c-1.0854 0-2.0315-.596-2.5288-1.4787H12.91c-2.3322 0-4.2272 1.8718-4.2649 4.195l-.0007 2.319c.8827.4973 1.4788 1.4434 1.4788 2.5287 0 1.602-1.2986 2.9005-2.9005 2.9005-1.6018 0-2.9004-1.2986-2.9004-2.9005 0-1.0853.596-2.0314 1.4788-2.5287l-.0002-9.9831c0-3.887 3.1195-7.0453 6.9915-7.108l.1176-.001h1.3385C14.7458.5962 15.692 0 16.7773 0ZM7.2227 19.9052c-.6596 0-1.1943.5347-1.1943 1.1943s.5347 1.1943 1.1943 1.1943 1.1944-.5347 1.1944-1.1943-.5348-1.1943-1.1944-1.1943Zm9.5546-10.4644c-.6596 0-1.1944.5347-1.1944 1.1943s.5348 1.1943 1.1944 1.1943c.6596 0 1.1943-.5347 1.1943-1.1943s-.5347-1.1943-1.1943-1.1943Zm0-7.7346c-.6596 0-1.1944.5347-1.1944 1.1943s.5348 1.1943 1.1944 1.1943c.6596 0 1.1943-.5347 1.1943-1.1943s-.5347-1.1943-1.1943-1.1943Z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
ssg/src/img/git-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#F05032" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Git</title><path d="M23.546 10.93L13.067.452c-.604-.603-1.582-.603-2.188 0L8.708 2.627l2.76 2.76c.645-.215 1.379-.07 1.889.441.516.515.658 1.258.438 1.9l2.658 2.66c.645-.223 1.387-.078 1.9.435.721.72.721 1.884 0 2.604-.719.719-1.881.719-2.6 0-.539-.541-.674-1.337-.404-1.996L12.86 8.955v6.525c.176.086.342.203.488.348.713.721.713 1.883 0 2.6-.719.721-1.889.721-2.609 0-.719-.719-.719-1.879 0-2.598.182-.18.387-.316.605-.406V8.835c-.217-.091-.424-.222-.6-.401-.545-.545-.676-1.342-.396-2.009L7.636 3.7.45 10.881c-.6.605-.6 1.584 0 2.189l10.48 10.477c.604.604 1.582.604 2.186 0l10.43-10.43c.605-.603.605-1.582 0-2.187"/></svg>
|
After Width: | Height: | Size: 717 B |
1
ssg/src/img/github.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg role="img" fill="#FFFFFF" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
|
After Width: | Height: | Size: 838 B |
1
ssg/src/img/gmail-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#EA4335" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Gmail</title><path d="M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z"/></svg>
|
After Width: | Height: | Size: 354 B |
1
ssg/src/img/gnubash-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#4EAA25" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GNU Bash</title><path d="M21.038,4.9l-7.577-4.498C13.009,0.134,12.505,0,12,0c-0.505,0-1.009,0.134-1.462,0.403L2.961,4.9 C2.057,5.437,1.5,6.429,1.5,7.503v8.995c0,1.073,0.557,2.066,1.462,2.603l7.577,4.497C10.991,23.866,11.495,24,12,24 c0.505,0,1.009-0.134,1.461-0.402l7.577-4.497c0.904-0.537,1.462-1.529,1.462-2.603V7.503C22.5,6.429,21.943,5.437,21.038,4.9z M15.17,18.946l0.013,0.646c0.001,0.078-0.05,0.167-0.111,0.198l-0.383,0.22c-0.061,0.031-0.111-0.007-0.112-0.085L14.57,19.29 c-0.328,0.136-0.66,0.169-0.872,0.084c-0.04-0.016-0.057-0.075-0.041-0.142l0.139-0.584c0.011-0.046,0.036-0.092,0.069-0.121 c0.012-0.011,0.024-0.02,0.036-0.026c0.022-0.011,0.043-0.014,0.062-0.006c0.229,0.077,0.521,0.041,0.802-0.101 c0.357-0.181,0.596-0.545,0.592-0.907c-0.003-0.328-0.181-0.465-0.613-0.468c-0.55,0.001-1.064-0.107-1.072-0.917 c-0.007-0.667,0.34-1.361,0.889-1.8l-0.007-0.652c-0.001-0.08,0.048-0.168,0.111-0.2l0.37-0.236 c0.061-0.031,0.111,0.007,0.112,0.087l0.006,0.653c0.273-0.109,0.511-0.138,0.726-0.088c0.047,0.012,0.067,0.076,0.048,0.151 l-0.144,0.578c-0.011,0.044-0.036,0.088-0.065,0.116c-0.012,0.012-0.025,0.021-0.038,0.028c-0.019,0.01-0.038,0.013-0.057,0.009 c-0.098-0.022-0.332-0.073-0.699,0.113c-0.385,0.195-0.52,0.53-0.517,0.778c0.003,0.297,0.155,0.387,0.681,0.396 c0.7,0.012,1.003,0.318,1.01,1.023C16.105,17.747,15.736,18.491,15.17,18.946z M19.143,17.859c0,0.06-0.008,0.116-0.058,0.145 l-1.916,1.164c-0.05,0.029-0.09,0.004-0.09-0.056v-0.494c0-0.06,0.037-0.093,0.087-0.122l1.887-1.129 c0.05-0.029,0.09-0.004,0.09,0.056V17.859z M20.459,6.797l-7.168,4.427c-0.894,0.523-1.553,1.109-1.553,2.187v8.833 c0,0.645,0.26,1.063,0.66,1.184c-0.131,0.023-0.264,0.039-0.398,0.039c-0.42,0-0.833-0.114-1.197-0.33L3.226,18.64 c-0.741-0.44-1.201-1.261-1.201-2.142V7.503c0-0.881,0.46-1.702,1.201-2.142l7.577-4.498c0.363-0.216,0.777-0.33,1.197-0.33 c0.419,0,0.833,0.114,1.197,0.33l7.577,4.498c0.624,0.371,1.046,1.013,1.164,1.732C21.686,6.557,21.12,6.411,20.459,6.797z"/></svg>
|
After Width: | Height: | Size: 2 KiB |
1
ssg/src/img/go-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#00ADD8" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Go</title><path d="M1.811 10.231c-.047 0-.058-.023-.035-.059l.246-.315c.023-.035.081-.058.128-.058h4.172c.046 0 .058.035.035.07l-.199.303c-.023.036-.082.07-.117.07zM.047 11.306c-.047 0-.059-.023-.035-.058l.245-.316c.023-.035.082-.058.129-.058h5.328c.047 0 .07.035.058.07l-.093.28c-.012.047-.058.07-.105.07zm2.828 1.075c-.047 0-.059-.035-.035-.07l.163-.292c.023-.035.07-.07.117-.07h2.337c.047 0 .07.035.07.082l-.023.28c0 .047-.047.082-.082.082zm12.129-2.36c-.736.187-1.239.327-1.963.514-.176.046-.187.058-.34-.117-.174-.199-.303-.327-.548-.444-.737-.362-1.45-.257-2.115.175-.795.514-1.204 1.274-1.192 2.22.011.935.654 1.706 1.577 1.835.795.105 1.46-.175 1.987-.77.105-.13.198-.27.315-.434H10.47c-.245 0-.304-.152-.222-.35.152-.362.432-.97.596-1.274a.315.315 0 01.292-.187h4.253c-.023.316-.023.631-.07.947a4.983 4.983 0 01-.958 2.29c-.841 1.11-1.94 1.8-3.33 1.986-1.145.152-2.209-.07-3.143-.77-.865-.655-1.356-1.52-1.484-2.595-.152-1.274.222-2.419.993-3.424.83-1.086 1.928-1.776 3.272-2.02 1.098-.2 2.15-.07 3.096.571.62.41 1.063.97 1.356 1.648.07.105.023.164-.117.2m3.868 6.461c-1.064-.024-2.034-.328-2.852-1.029a3.665 3.665 0 01-1.262-2.255c-.21-1.32.152-2.489.947-3.529.853-1.122 1.881-1.706 3.272-1.95 1.192-.21 2.314-.095 3.33.595.923.63 1.496 1.484 1.648 2.605.198 1.578-.257 2.863-1.344 3.962-.771.783-1.718 1.273-2.805 1.495-.315.06-.63.07-.934.106zm2.78-4.72c-.011-.153-.011-.27-.034-.387-.21-1.157-1.274-1.81-2.384-1.554-1.087.245-1.788.935-2.045 2.033-.21.912.234 1.835 1.075 2.21.643.28 1.285.244 1.905-.07.923-.48 1.425-1.228 1.484-2.233z"/></svg>
|
After Width: | Height: | Size: 1.6 KiB |
1
ssg/src/img/html5-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#E34F26" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>HTML5</title><path d="M1.5 0h21l-1.91 21.563L11.977 24l-8.564-2.438L1.5 0zm7.031 9.75l-.232-2.718 10.059.003.23-2.622L5.412 4.41l.698 8.01h9.126l-.326 3.426-2.91.804-2.955-.81-.188-2.11H6.248l.33 4.171L12 19.351l5.379-1.443.744-8.157H8.531z"/></svg>
|
After Width: | Height: | Size: 342 B |
1
ssg/src/img/imessage-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#34DA50" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>iMessage</title><path d="M5.285 0A5.273 5.273 0 0 0 0 5.285v13.43A5.273 5.273 0 0 0 5.285 24h13.43A5.273 5.273 0 0 0 24 18.715V5.285A5.273 5.273 0 0 0 18.715 0ZM12 4.154a8.809 7.337 0 0 1 8.809 7.338A8.809 7.337 0 0 1 12 18.828a8.809 7.337 0 0 1-2.492-.303A8.656 7.337 0 0 1 5.93 19.93a9.929 7.337 0 0 0 1.54-2.155 8.809 7.337 0 0 1-4.279-6.283A8.809 7.337 0 0 1 12 4.154"/></svg>
|
After Width: | Height: | Size: 473 B |
1
ssg/src/img/javascript-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#F7DF1E" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>JavaScript</title><path d="M0 0h24v24H0V0zm22.034 18.276c-.175-1.095-.888-2.015-3.003-2.873-.736-.345-1.554-.585-1.797-1.14-.091-.33-.105-.51-.046-.705.15-.646.915-.84 1.515-.66.39.12.75.42.976.9 1.034-.676 1.034-.676 1.755-1.125-.27-.42-.404-.601-.586-.78-.63-.705-1.469-1.065-2.834-1.034l-.705.089c-.676.165-1.32.525-1.71 1.005-1.14 1.291-.811 3.541.569 4.471 1.365 1.02 3.361 1.244 3.616 2.205.24 1.17-.87 1.545-1.966 1.41-.811-.18-1.26-.586-1.755-1.336l-1.83 1.051c.21.48.45.689.81 1.109 1.74 1.756 6.09 1.666 6.871-1.004.029-.09.24-.705.074-1.65l.046.067zm-8.983-7.245h-2.248c0 1.938-.009 3.864-.009 5.805 0 1.232.063 2.363-.138 2.711-.33.689-1.18.601-1.566.48-.396-.196-.597-.466-.83-.855-.063-.105-.11-.196-.127-.196l-1.825 1.125c.305.63.75 1.172 1.324 1.517.855.51 2.004.675 3.207.405.783-.226 1.458-.691 1.811-1.411.51-.93.402-2.07.397-3.346.012-2.054 0-4.109 0-6.179l.004-.056z"/></svg>
|
After Width: | Height: | Size: 989 B |
1
ssg/src/img/linode.svg
Normal file
After Width: | Height: | Size: 5.2 KiB |
1
ssg/src/img/linux-color.svg
Normal file
After Width: | Height: | Size: 5.3 KiB |
1
ssg/src/img/markdown-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#000000" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Markdown</title><path d="M22.27 19.385H1.73A1.73 1.73 0 010 17.655V6.345a1.73 1.73 0 011.73-1.73h20.54A1.73 1.73 0 0124 6.345v11.308a1.73 1.73 0 01-1.73 1.731zM5.769 15.923v-4.5l2.308 2.885 2.307-2.885v4.5h2.308V8.078h-2.308l-2.307 2.885-2.308-2.885H3.46v7.847zM21.232 12h-2.309V8.077h-2.307V12h-2.308l3.461 4.039z"/></svg>
|
After Width: | Height: | Size: 416 B |
1
ssg/src/img/mastodon-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#6364FF" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Mastodon</title><path d="M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
ssg/src/img/matrix-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#FFFFFF" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Matrix</title><path d="M.632.55v22.9H2.28V24H0V0h2.28v.55zm7.043 7.26v1.157h.033c.309-.443.683-.784 1.117-1.024.433-.245.936-.365 1.5-.365.54 0 1.033.107 1.481.314.448.208.785.582 1.02 1.108.254-.374.6-.706 1.034-.992.434-.287.95-.43 1.546-.43.453 0 .872.056 1.26.167.388.11.716.286.993.53.276.245.489.559.646.951.152.392.23.863.23 1.417v5.728h-2.349V11.52c0-.286-.01-.559-.032-.812a1.755 1.755 0 0 0-.18-.66 1.106 1.106 0 0 0-.438-.448c-.194-.11-.457-.166-.785-.166-.332 0-.6.064-.803.189a1.38 1.38 0 0 0-.48.499 1.946 1.946 0 0 0-.231.696 5.56 5.56 0 0 0-.06.785v4.768h-2.35v-4.8c0-.254-.004-.503-.018-.752a2.074 2.074 0 0 0-.143-.688 1.052 1.052 0 0 0-.415-.503c-.194-.125-.476-.19-.854-.19-.111 0-.259.024-.439.074-.18.051-.36.143-.53.282-.171.138-.319.337-.439.595-.12.259-.18.6-.18 1.02v4.966H5.46V7.81zm15.693 15.64V.55H21.72V0H24v24h-2.28v-.55z"/></svg>
|
After Width: | Height: | Size: 955 B |
1
ssg/src/img/nextdotjs.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Next.js</title><path d="M18.665 21.978C16.758 23.255 14.465 24 12 24 5.377 24 0 18.623 0 12S5.377 0 12 0s12 5.377 12 12c0 3.583-1.574 6.801-4.067 9.001L9.219 7.2H7.2v9.596h1.615V9.251l9.85 12.727Zm-3.332-8.533 1.6 2.061V7.2h-1.6v6.245Z"/></svg>
|
After Width: | Height: | Size: 322 B |
9
ssg/src/img/ollama.svg
Normal file
After Width: | Height: | Size: 17 KiB |
1
ssg/src/img/openai-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#412991" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>OpenAI</title><path d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"/></svg>
|
After Width: | Height: | Size: 1.5 KiB |
1
ssg/src/img/postgresql-color.svg
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
ssg/src/img/pycord.png
Normal file
After Width: | Height: | Size: 7.2 KiB |
1
ssg/src/img/python-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#3776AB" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Python</title><path d="M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z"/></svg>
|
After Width: | Height: | Size: 1.5 KiB |
1282
ssg/src/img/schildichat.svg
Normal file
After Width: | Height: | Size: 43 KiB |
1
ssg/src/img/server.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#EEEEEE " xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z"/></svg>
|
After Width: | Height: | Size: 626 B |
1
ssg/src/img/signal-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#3A76F0" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Signal</title><path d="m9.12.35.27 1.09a10.845 10.845 0 0 0-3.015 1.248l-.578-.964A11.955 11.955 0 0 1 9.12.35zm5.76 0-.27 1.09a10.845 10.845 0 0 1 3.015 1.248l.581-.964A11.955 11.955 0 0 0 14.88.35zM1.725 5.797A11.955 11.955 0 0 0 .351 9.119l1.09.27A10.845 10.845 0 0 1 2.69 6.374zm-.6 6.202a10.856 10.856 0 0 1 .122-1.63l-1.112-.168a12.043 12.043 0 0 0 0 3.596l1.112-.169A10.856 10.856 0 0 1 1.125 12zm17.078 10.275-.578-.964a10.845 10.845 0 0 1-3.011 1.247l.27 1.091a11.955 11.955 0 0 0 3.319-1.374zM22.875 12a10.856 10.856 0 0 1-.122 1.63l1.112.168a12.043 12.043 0 0 0 0-3.596l-1.112.169a10.856 10.856 0 0 1 .122 1.63zm.774 2.88-1.09-.27a10.845 10.845 0 0 1-1.248 3.015l.964.581a11.955 11.955 0 0 0 1.374-3.326zm-10.02 7.875a10.952 10.952 0 0 1-3.258 0l-.17 1.112a12.043 12.043 0 0 0 3.597 0zm7.125-4.303a10.914 10.914 0 0 1-2.304 2.302l.668.906a12.019 12.019 0 0 0 2.542-2.535zM18.45 3.245a10.914 10.914 0 0 1 2.304 2.304l.906-.675a12.019 12.019 0 0 0-2.535-2.535zM3.246 5.549A10.914 10.914 0 0 1 5.55 3.245l-.675-.906A12.019 12.019 0 0 0 2.34 4.874zm19.029.248-.964.577a10.845 10.845 0 0 1 1.247 3.011l1.091-.27a11.955 11.955 0 0 0-1.374-3.318zM10.371 1.246a10.952 10.952 0 0 1 3.258 0L13.8.134a12.043 12.043 0 0 0-3.597 0zM3.823 21.957 1.5 22.5l.542-2.323-1.095-.257-.542 2.323a1.125 1.125 0 0 0 1.352 1.352l2.321-.532zm-2.642-3.041 1.095.255.375-1.61a10.828 10.828 0 0 1-1.21-2.952l-1.09.27a11.91 11.91 0 0 0 1.106 2.852zm5.25 2.437-1.61.375.255 1.095 1.185-.275a11.91 11.91 0 0 0 2.851 1.106l.27-1.091a10.828 10.828 0 0 1-2.943-1.217zM12 2.25a9.75 9.75 0 0 0-8.25 14.938l-.938 4 4-.938A9.75 9.75 0 1 0 12 2.25z"/></svg>
|
After Width: | Height: | Size: 1.7 KiB |
1
ssg/src/img/topdotgg.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#FF3366" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Top.gg</title><path d="M0 4.3785h7.6215V12H2.329A2.3212 2.3212 0 0 1 .0077 9.6788Zm24 0H8.757v15.243h3.1144a4.5071 4.5071 0 0 0 4.507-4.5071V12h3.1145A4.5073 4.5073 0 0 0 24 7.4929z"/></svg>
|
After Width: | Height: | Size: 283 B |
1
ssg/src/img/twemoji_rainbow.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" xml:space="preserve"><path fill="#880082" d="M0 27a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4v-.5H0v.5z"/><path fill="#3558A0" d="M0 22.07h36v4.6H0z"/><path fill="#138F3E" d="M0 17.83h36v4.5H0z"/><path fill="#FAD220" d="M0 13.5h36V18H0z"/><path fill="#FF7300" d="M0 9.17h36v4.5H0z"/><path fill="#FF000E" d="M32 5H4a4 4 0 0 0-4 4v.33h36V9a4 4 0 0 0-4-4z"/></svg>
|
After Width: | Height: | Size: 409 B |
1
ssg/src/img/twemoji_trans.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#5BCEFA" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-1.3H0V27z"/><path fill="#F5A9B8" d="M.026 20.5L0 25.8h36v-5.3z"/><path fill="#EEE" d="M0 15.3h36v5.3H0z"/><path fill="#F5A9B8" d="M0 9.902h36V15.4H0z"/><path fill="#5BCEFA" d="M36 9c0-2.209-1.791-4-4-4H4C1.791 5 0 6.791 0 9v1.2h36V9z"/></svg>
|
After Width: | Height: | Size: 376 B |
1
ssg/src/img/ubuntu-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#E95420" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Ubuntu</title><path d="M17.61.455a3.41 3.41 0 0 0-3.41 3.41 3.41 3.41 0 0 0 3.41 3.41 3.41 3.41 0 0 0 3.41-3.41 3.41 3.41 0 0 0-3.41-3.41zM12.92.8C8.923.777 5.137 2.941 3.148 6.451a4.5 4.5 0 0 1 .26-.007 4.92 4.92 0 0 1 2.585.737A8.316 8.316 0 0 1 12.688 3.6 4.944 4.944 0 0 1 13.723.834 11.008 11.008 0 0 0 12.92.8zm9.226 4.994a4.915 4.915 0 0 1-1.918 2.246 8.36 8.36 0 0 1-.273 8.303 4.89 4.89 0 0 1 1.632 2.54 11.156 11.156 0 0 0 .559-13.089zM3.41 7.932A3.41 3.41 0 0 0 0 11.342a3.41 3.41 0 0 0 3.41 3.409 3.41 3.41 0 0 0 3.41-3.41 3.41 3.41 0 0 0-3.41-3.41zm2.027 7.866a4.908 4.908 0 0 1-2.915.358 11.1 11.1 0 0 0 7.991 6.698 11.234 11.234 0 0 0 2.422.249 4.879 4.879 0 0 1-.999-2.85 8.484 8.484 0 0 1-.836-.136 8.304 8.304 0 0 1-5.663-4.32zm11.405.928a3.41 3.41 0 0 0-3.41 3.41 3.41 3.41 0 0 0 3.41 3.41 3.41 3.41 0 0 0 3.41-3.41 3.41 3.41 0 0 0-3.41-3.41z"/></svg>
|
After Width: | Height: | Size: 963 B |
1
ssg/src/img/uptimekuma-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#5CDD8B" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Uptime Kuma</title><path d="M11.759.955c-4.071 0-7.93 2.265-10.06 5.774l-.16.263-.116.284c-1.81 4.44-2.188 9.118.621 12.459 2.67 3.174 6.221 3.328 9.477 3.308 3.256-.02 6.323-.482 8.995-2.032C22.75 19.714 24 16.917 24 14.53c0-2.388-.724-4.698-1.882-7.343l-.112-.257-.148-.238C19.683 3.2 15.83.955 11.758.955Zm0 3.868c2.919 0 5.19 1.305 6.816 3.914 2.076 4.747 2.076 7.724 0 8.929-3.116 1.808-11.234 2.359-13.57-.42-1.558-1.853-1.558-4.69 0-8.51 1.584-2.608 3.835-3.913 6.754-3.913z"/></svg>
|
After Width: | Height: | Size: 583 B |
1
ssg/src/img/windows-color.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg fill="#0078D4" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Windows</title><path d="M0,0H11.377V11.372H0ZM12.623,0H24V11.372H12.623ZM0,12.623H11.377V24H0Zm12.623,0H24V24H12.623"/></svg>
|
After Width: | Height: | Size: 218 B |
240
ssg/src/index.njk
Normal file
|
@ -0,0 +1,240 @@
|
||||||
|
---
|
||||||
|
layout: layouts/base.njk
|
||||||
|
title: index
|
||||||
|
---
|
||||||
|
<h1>Hello There!</h1>
|
||||||
|
<p><span id="__age">17</span> | she/it | "full"-stack</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Quick - about me</h2>
|
||||||
|
<div>
|
||||||
|
<p>You can hover over icons to get a tooltip, and some you can click to go places.</p>
|
||||||
|
<div id="array">
|
||||||
|
<div>
|
||||||
|
<h3>Languages</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/python-color.svg" alt="Python" title="Python" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/javascript-color.svg" alt="JavaScript" title="JavaScript" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/gnubash-color.svg" alt="Bash" title="Bash" width="32px" height="32px" class="icon">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Operating Systems</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/fedora-color.svg" alt="Fedora" title="Fedora" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/ubuntu-color.svg" alt="Ubuntu" title="Ubuntu (Server)" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/windows-color.svg" alt="Windows" title="Windows" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/apple-color.svg" alt="iOS" title="iOS" width="32px" height="32px" class="icon">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Communication Platforms</h3>
|
||||||
|
<p style="font-size: initial">In order of fastest to slowest</p>
|
||||||
|
<div>
|
||||||
|
<a href="https://matrix.to/#/@nex:nexy7574.co.uk" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<a href="https://signal.me/#eu/j24vT8zDzquI0us48k7eiNJcpJjEw4TYUz1gtvo_0HtEfq4C2MZG1YFs5POF98Sb" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/signal-color.svg" alt="Signal" title="Signal" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<img src="img/imessage-color.svg" alt="iMessage" title="iMessage" width="32px" height="32px" class="icon">
|
||||||
|
<a href="https://discord.gg/TveBeG7" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/discord-color.svg" alt="Discord" title="Discord" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<a rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/gmail-color.svg" alt="Email" title="Email (very slow)" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Learning</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/csharp-color.svg" alt="C#" title="C#" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/go-color.svg" alt="Go" title="Go" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Tools</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/docker-color.svg" alt="Docker" title="Docker" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/git-color.svg" alt="Git" title="Git" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/linode.svg" alt="Linode" title="Linode (cloud hosting)" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/postgresql-color.svg" alt="Postgres" title="Postgres" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/ollama.svg" alt="Ollama" title="Ollama (web hosting)" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/openai-color.svg" alt="OpenAI/ChatGPT" title="OpenAI/ChatGPT" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Frameworks & Libraries</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/nextdotjs.svg" alt="Next.js" title="Next.js" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/fastapi-color.svg" alt="FastAPI" title="FastAPI" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/discordpy.png" alt="Discord.py" title="Discord.py" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/pycord.png" alt="py-cord" title="py-cord" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<h3>Notable Projects</h3>
|
||||||
|
<div>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Brief</th>
|
||||||
|
<th>Source</th>
|
||||||
|
<th>Live</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Nio-Bot</td>
|
||||||
|
<td>A bot framework for the matrix ecosystem</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/nio-bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://matrix.to/#/#bots:nexy7574.co.uk" rel="opopener" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>dendritecli</td>
|
||||||
|
<td>A command line interface for interacting with the Dendrite homeserver.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/dendritecli" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>ModMan</td>
|
||||||
|
<td>A CLI mod manager for minecraft servers.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/modman" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>College Bot v2</td>
|
||||||
|
<td>Specialised chat bot in discord for my college server.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://git.i-am.nexus/nex/college-bot-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/forgejo-color.svg" alt="Forgejo" title="Forgejo" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
[<a href="https://github.com/nexy7574/college-bot-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>]
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>drop-in-url-previews</td>
|
||||||
|
<td>A drop-in proxy URL preview server for Matrix</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://git.i-am.nexus/nex/drop-in-url-previews" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/forgejo-color.svg" alt="Forgejo" title="Forgejo" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://matrix.nexy7574.co.uk/_matrix/media/r0/preview_url?url=nexy7574.co.uk" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Spanner</td>
|
||||||
|
<td>A really informational discord bot</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-v3" rel="noopener" target="_blank" class="icon">
|
||||||
|
v3
|
||||||
|
</a><br/>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
v2
|
||||||
|
</a><br/>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
v1
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://discord.com/api/oauth2/authorize?client_id=722000000000000000&permissions=8&scope=bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/discord-color.svg" alt="Discord" title="Discord" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>YourApps</td>
|
||||||
|
<td>A discord bot that trailblazed the discord forms market with, at its peak, 2.5k servers, and over 5 million users.</td>
|
||||||
|
<td><i>proprietary</i></td>
|
||||||
|
<td>
|
||||||
|
<a href="https://top.gg/bot/619328560141697036" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="img/topdotgg.svg" alt="top.gg" title="top.gg" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Top.py</td>
|
||||||
|
<td>
|
||||||
|
An alternative python API wrapper for the
|
||||||
|
<a href="https://top.gg" rel="noopener noreferrer" target="_blank">top.gg</a>
|
||||||
|
API
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/top.py" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h4>Notable Contributions</h4>
|
||||||
|
<p>These are projects I have contributed to, but not necessarily created or had a major role in.</p>
|
||||||
|
<p>Projects listed here had code contributions - other contributions, such as issues or design insights, are not included.</p>
|
||||||
|
<div>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Brief</th>
|
||||||
|
<th>Source</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>PyCord</td>
|
||||||
|
<td>"Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/Pycord-Development/pycord" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>matrix-nio</td>
|
||||||
|
<td>"A Python Matrix client library, designed according to sans I/O principles"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/matrix-nio/matrix-nio" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>discord.py</td>
|
||||||
|
<td>"An API wrapper for Discord written in Python"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/Rapptz/discord.py" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
38
ssg/src/js/index.js
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
document.addEventListener(
|
||||||
|
"DOMContentLoaded",
|
||||||
|
() => {
|
||||||
|
const __name = document.getElementById("__name");
|
||||||
|
__name.addEventListener(
|
||||||
|
"mouseover",
|
||||||
|
() => {
|
||||||
|
__name.textContent = "she/it";
|
||||||
|
}
|
||||||
|
)
|
||||||
|
__name.addEventListener(
|
||||||
|
"mouseout",
|
||||||
|
() => {
|
||||||
|
__name.textContent = "Nexus";
|
||||||
|
}
|
||||||
|
)
|
||||||
|
const email = document.getElementById("email-modal");
|
||||||
|
const emailImages = document.querySelectorAll("img[src='img/gmail-color.svg']");
|
||||||
|
if(email && emailImages.length > 0) {
|
||||||
|
for (let emailImg of emailImages) {
|
||||||
|
emailImg.addEventListener(
|
||||||
|
"click",
|
||||||
|
() => {
|
||||||
|
email.hidden = !email.hidden;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
emailImg.style.cursor = "pointer";
|
||||||
|
}
|
||||||
|
email.addEventListener(
|
||||||
|
"click",
|
||||||
|
() => {
|
||||||
|
email.hidden = !email.hidden;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
email.style.cursor = "pointer";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
124
ssg/src/oldfaq.html
Normal file
|
@ -0,0 +1,124 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" style="background-color: black;">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>FAQ | nexy7574.co.uk</title>
|
||||||
|
<link rel="stylesheet" href="bundle.css"/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="mainBody">
|
||||||
|
<header>
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
<div>
|
||||||
|
<h1>Frequently Asked Questions</h1>
|
||||||
|
<p>Note: I am dyslexic, so please excuse any spelling or grammar errors. Feel free to message me for corrections ^^</p>
|
||||||
|
<div id="toc" hidden>
|
||||||
|
<h2>Table Of Contents:</div>
|
||||||
|
<ol id="toc-li"></ol>
|
||||||
|
</div> <!-- Table of Contents -->
|
||||||
|
<noscript><p>There will be a table of contents here if you enable JavaScript. You don't have to though.</p></noscript>
|
||||||
|
<hr/>
|
||||||
|
<div class="question">
|
||||||
|
<h2>Q: What are your keys???</h2>
|
||||||
|
<div>
|
||||||
|
<h3>A: PGP:</h3>
|
||||||
|
<p>
|
||||||
|
<code class="inline">0FA334385D0B689F</code> - available via WKD (<code class="inline">gpg --locate-keys me@nexy7574.co.uk</code>), or the full (armoured) key is available <a href="assets/pgp-2024-05-13.txt" download>here</a>.
|
||||||
|
The key is also available on several keyservers, however
|
||||||
|
<a href="https://keyserver.ubuntu.com/pks/lookup?search=0FA334385D0B689F&fingerprint=on&op=index" target="_blank" rel="noopener noreferrer">Ubuntu's keyserver</a>
|
||||||
|
is the most reliable and kept up-to-date. Although, WKD should be preferred where possible.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>A: SSH</h3>
|
||||||
|
<p>Can be imported from <a href="assets/ssh-2024-05-13.txt" download>this text file</a>, however be aware I do not sign anything with my SSH key, only my PGP key.</p>
|
||||||
|
<p>Feel free to give me SSH access to your servers though :^)</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="what-are-your-pc-specs">Q: What are your PC specs/how much did your PC cost?</h2>
|
||||||
|
<p>
|
||||||
|
A: You can find all the details on <a href="https://uk.pcpartpicker.com/b/Hfz7YJ" rel="noopener" target="_blank">PcPartPicker</a>.
|
||||||
|
It cost me around £650 to build in December, 2023.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="can-you-hack">Q: Can you hack my friend's instagram?</h2>
|
||||||
|
<p>A: <strong><em>No.</em></strong></p>
|
||||||
|
<h2 id="fix-printer">Q: Can you fix my printer?</h2>
|
||||||
|
<p>
|
||||||
|
A: Yep!
|
||||||
|
<ol>
|
||||||
|
<li>Kick the printer.</li>
|
||||||
|
<li>Kick it harder.</li>
|
||||||
|
<li>Unplug it (bare with me)</li>
|
||||||
|
<li>Bring your printer to the nearest window</li>
|
||||||
|
<li>Open the window</li>
|
||||||
|
<li>Throw the printer out the window</li>
|
||||||
|
<li>Ask someone else to print it for you (its their problem then)</li>
|
||||||
|
</ol>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="what-music-do-you-listen-to">Q: What music do you listen to?</h2>
|
||||||
|
<p>A: Here's my main playlists. TL;DR, I listen to a lot of pop and rock, with a sprinkle of electronic</p>
|
||||||
|
<p>My favourite artists aren't really a thing, I prefer music over artists and albums, but I consistently listen to K.Flay, Grandson, Mother Mother, Super Whatevr, Cavetown, The Front Bottoms, Hospital Bracelet, and Crawlers.</p>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/26wJTA2mXk3QNXhqBI95kM?utm_source=generator&theme=0" width="100%" height="352" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/07GvdPCtDvWO2UFawBDlSA?utm_source=generator&theme=0" width="100%" height="152" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<iframe style="border-radius:12px" src="https://open.spotify.com/embed/playlist/1mTh1hj7rmzCYknLWfru4C?utm_source=generator&theme=0" width="100%" height="152" frameBorder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>
|
||||||
|
<p>I am one of those people that will listen to any music genre, and I actually mean it. Just remember though "will listen" doesn't mean "will like".</p>
|
||||||
|
</div>
|
||||||
|
<div class="question">
|
||||||
|
<h2 id="urandom-or-random">Q: Urandom or Random?</h2>
|
||||||
|
<p>A: Urandom</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.addEventListener(
|
||||||
|
"DOMContentLoaded",
|
||||||
|
() => {
|
||||||
|
const questions = document.querySelectorAll(".question h2");
|
||||||
|
for (let question of questions) {
|
||||||
|
const id = question.id;
|
||||||
|
const a = document.createElement("a");
|
||||||
|
a.href = `#${id}`;
|
||||||
|
a.textContent = "🔗";
|
||||||
|
a.title = "Link to this question";
|
||||||
|
a.style.textDecoration = "none";
|
||||||
|
a.style.fontSize = "smaller";
|
||||||
|
a.style.color = "black";
|
||||||
|
a.style.marginLeft = "0.5em";
|
||||||
|
question.appendChild(a);
|
||||||
|
// copy URL to clipboard
|
||||||
|
a.addEventListener(
|
||||||
|
"click",
|
||||||
|
() => {
|
||||||
|
navigator.clipboard.writeText(location.href + "#" + id);
|
||||||
|
a.textContent = "✅";
|
||||||
|
setTimeout(() => {
|
||||||
|
a.textContent = "🔗";
|
||||||
|
}, 1000);
|
||||||
|
}
|
||||||
|
)
|
||||||
|
// add to table of contents
|
||||||
|
const toc = document.getElementById("toc");
|
||||||
|
toc.hidden = false;
|
||||||
|
const tocLi = document.getElementById("toc-li");
|
||||||
|
const li = document.createElement("li");
|
||||||
|
const a2 = document.createElement("a");
|
||||||
|
a2.href = `#${id}`;
|
||||||
|
a2.textContent = question.textContent.replace(/^Q: /, "").replace("🔗", "");
|
||||||
|
li.appendChild(a2);
|
||||||
|
tocLi.appendChild(li);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
</script>
|
||||||
|
</main>
|
||||||
|
<link rel="stylesheet" href="lazy-fonts.css">
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
254
ssg/src/oldindex.html
Normal file
|
@ -0,0 +1,254 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" style="background-color: black;">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>nexy7574.co.uk</title>
|
||||||
|
<link rel="stylesheet" href="bundle.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="email-modal" style="z-index: 100;width:100%;height: 100%;padding:200px auto;background-color: rgba(0, 0, 0, 0.5);position:absolute" hidden>
|
||||||
|
<p>If you're going to email me, please use PGP encryption. My key is available via WKD, or <a href="faq.html">the FAQ</a></p>
|
||||||
|
<img src="img/email.png" width="1366px" height="768px" alt="oh"/>
|
||||||
|
</div>
|
||||||
|
<div class="mainBody">
|
||||||
|
<main>
|
||||||
|
<h1>Hello There!</h1>
|
||||||
|
<p><span id="__age">17</span> | she/it | "full"-stack</p>
|
||||||
|
|
||||||
|
<h2>Quick - about me</h2>
|
||||||
|
<div>
|
||||||
|
<p>You can hover over icons to get a tooltip, and some you can click to go places.</p>
|
||||||
|
<div id="array">
|
||||||
|
<div>
|
||||||
|
<h3>Languages</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/python-color.svg" alt="Python" title="Python" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/javascript-color.svg" alt="JavaScript" title="JavaScript" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/gnubash-color.svg" alt="Bash" title="Bash" width="32px" height="32px" class="icon">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Operating Systems</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/fedora-color.svg" alt="Fedora" title="Fedora" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/ubuntu-color.svg" alt="Ubuntu" title="Ubuntu (Server)" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/windows-color.svg" alt="Windows" title="Windows" width="32px" height="32px" class="icon">
|
||||||
|
<img src="img/apple-color.svg" alt="iOS" title="iOS" width="32px" height="32px" class="icon">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Communication Platforms</h3>
|
||||||
|
<p style="font-size: initial">In order of fastest to slowest</p>
|
||||||
|
<div>
|
||||||
|
<a href="https://matrix.to/#/@nex:nexy7574.co.uk" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<a href="https://signal.me/#eu/j24vT8zDzquI0us48k7eiNJcpJjEw4TYUz1gtvo_0HtEfq4C2MZG1YFs5POF98Sb" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/signal-color.svg" alt="Signal" title="Signal" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<img src="img/imessage-color.svg" alt="iMessage" title="iMessage" width="32px" height="32px" class="icon">
|
||||||
|
<a href="https://discord.gg/TveBeG7" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/discord-color.svg" alt="Discord" title="Discord" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
<a rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/gmail-color.svg" alt="Email" title="Email (very slow)" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Learning</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/csharp-color.svg" alt="C#" title="C#" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/go-color.svg" alt="Go" title="Go" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Tools</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/docker-color.svg" alt="Docker" title="Docker" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/git-color.svg" alt="Git" title="Git" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/linode.svg" alt="Linode" title="Linode (cloud hosting)" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/postgresql-color.svg" alt="Postgres" title="Postgres" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/ollama.svg" alt="Ollama" title="Ollama (web hosting)" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/openai-color.svg" alt="OpenAI/ChatGPT" title="OpenAI/ChatGPT" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<h3>Frameworks & Libraries</h3>
|
||||||
|
<div>
|
||||||
|
<img src="img/nextdotjs.svg" alt="Next.js" title="Next.js" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/fastapi-color.svg" alt="FastAPI" title="FastAPI" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/discordpy.png" alt="Discord.py" title="Discord.py" width="32px" height="32px" class="icon"/>
|
||||||
|
<img src="img/pycord.png" alt="py-cord" title="py-cord" width="32px" height="32px" class="icon"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<h3>Notable Projects</h3>
|
||||||
|
<div>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Brief</th>
|
||||||
|
<th>Source</th>
|
||||||
|
<th>Live</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Nio-Bot</td>
|
||||||
|
<td>A bot framework for the matrix ecosystem</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/nio-bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://matrix.to/#/#bots:nexy7574.co.uk" rel="opopener" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>dendritecli</td>
|
||||||
|
<td>A command line interface for interacting with the Dendrite homeserver.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/dendritecli" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>ModMan</td>
|
||||||
|
<td>A CLI mod manager for minecraft servers.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/modman" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>College Bot v2</td>
|
||||||
|
<td>Specialised chat bot in discord for my college server.</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://git.i-am.nexus/nex/college-bot-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/forgejo-color.svg" alt="Forgejo" title="Forgejo" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
[<a href="https://github.com/nexy7574/college-bot-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>]
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>drop-in-url-previews</td>
|
||||||
|
<td>A drop-in proxy URL preview server for Matrix</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://git.i-am.nexus/nex/drop-in-url-previews" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/forgejo-color.svg" alt="Forgejo" title="Forgejo" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://matrix.nexy7574.co.uk/_matrix/media/r0/preview_url?url=nexy7574.co.uk" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/matrix-color.svg" alt="Matrix" title="Matrix" width="32px" height="32px" class="icon">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Spanner</td>
|
||||||
|
<td>A really informational discord bot</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-v3" rel="noopener" target="_blank" class="icon">
|
||||||
|
v3
|
||||||
|
</a><br/>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-v2" rel="noopener" target="_blank" class="icon">
|
||||||
|
v2
|
||||||
|
</a><br/>
|
||||||
|
<a href="https://github.com/nexy7574/spanner-bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
v1
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://discord.com/api/oauth2/authorize?client_id=722000000000000000&permissions=8&scope=bot" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/discord-color.svg" alt="Discord" title="Discord" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>YourApps</td>
|
||||||
|
<td>A discord bot that trailblazed the discord forms market with, at its peak, 2.5k servers, and over 5 million users.</td>
|
||||||
|
<td><i>proprietary</i></td>
|
||||||
|
<td>
|
||||||
|
<a href="https://top.gg/bot/619328560141697036" rel="noopener noreferrer" target="_blank" class="icon">
|
||||||
|
<img src="img/topdotgg.svg" alt="top.gg" title="top.gg" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Top.py</td>
|
||||||
|
<td>
|
||||||
|
An alternative python API wrapper for the
|
||||||
|
<a href="https://top.gg" rel="noopener noreferrer" target="_blank">top.gg</a>
|
||||||
|
API
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/nexy7574/top.py" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<h4>Notable Contributions</h4>
|
||||||
|
<p>These are projects I have contributed to, but not necessarily created or had a major role in.</p>
|
||||||
|
<p>Projects listed here had code contributions - other contributions, such as issues or design insights, are not included.</p>
|
||||||
|
<div>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
<th>Brief</th>
|
||||||
|
<th>Source</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>PyCord</td>
|
||||||
|
<td>"Pycord, a maintained fork of discord.py, is a python wrapper for the Discord API"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/Pycord-Development/pycord" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>matrix-nio</td>
|
||||||
|
<td>"A Python Matrix client library, designed according to sans I/O principles"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/matrix-nio/matrix-nio" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>discord.py</td>
|
||||||
|
<td>"An API wrapper for Discord written in Python"</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://github.com/Rapptz/discord.py" rel="noopener" target="_blank" class="icon">
|
||||||
|
<img src="img/github.svg" alt="GitHub" title="GitHub" width="32px" height="32px" class="icon">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|