Compare commits
25
Commits
pages
..
e72314fb05
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e72314fb05 | ||
|
|
f98a5218ac | ||
|
|
8d7621ab4c | ||
|
|
b8a4c87abc | ||
|
|
0e1ed09bee | ||
|
|
1dd95f2418 | ||
|
|
2a06d6666e | ||
|
|
2d0c954a82 | ||
|
|
eac0b06afc | ||
|
|
99aa4c47d4 | ||
|
|
c85dd65ae7 | ||
|
|
71322bff07 | ||
|
|
299d47b580 | ||
|
|
d063d9773c | ||
|
|
7dd4ca5cb3 | ||
|
|
a99d8fbaba | ||
|
|
b3af6f6905 | ||
|
|
10c1b26153 | ||
|
|
5b4e9eb0c7 | ||
|
|
96186d3248 | ||
|
|
dd28d65164 | ||
|
|
5cf8725e01 | ||
|
|
1e531f07b6 | ||
|
|
eb018b6717 | ||
|
|
110eea369b |
No files matched your search
@@ -0,0 +1,8 @@
|
||||
_site
|
||||
result
|
||||
.direnv
|
||||
.envrc
|
||||
public/
|
||||
|
||||
# Generated using tailwindcss
|
||||
static/css/index.css
|
||||
Whitespace-only changes.
@@ -0,0 +1,16 @@
|
||||
steps:
|
||||
build:
|
||||
image: alpine:3.19
|
||||
commands:
|
||||
- apk add --no-cache zola npm
|
||||
- npm install -D tailwindcss @tailwindcss/typography
|
||||
- npx tailwindcss -i input.css -o static/css/index.css --minify
|
||||
- zola build
|
||||
deploy:
|
||||
image: git.polynom.me/papatutuwawa/woodpecker-ssg-deploy@sha256:c7e2e8ad5d096ca6a628ffbbfa1026dce21784305f6069985d830c4167abcbda
|
||||
secrets: [ git_push_token ]
|
||||
settings:
|
||||
email: "ci@polynom.me"
|
||||
name: "polynom.me CI system"
|
||||
token_env: "GIT_PUSH_TOKEN"
|
||||
output: "public"
|
||||
@@ -1,3 +0,0 @@
|
||||
<!doctype html>
|
||||
<title>404 Not Found</title>
|
||||
<h1>404 Not Found</h1>
|
||||
@@ -1,65 +0,0 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link href="https://polynom.me/css/index.css" rel="stylesheet" />
|
||||
<link href="https://polynom.me/css/extra.css" rel="stylesheet" />
|
||||
|
||||
|
||||
<meta property="og:title" content="Code | polynom.me" />
|
||||
<meta property="og:description" content="Alexander 'PapaTutuWawa' 's code repositories." />
|
||||
<title>Code | polynom.me</title>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="flex flex-col p-2 md:p-8 items-start md:w-4/5 mx-auto">
|
||||
<!-- Header -->
|
||||
<div class="flex flex-row self-center">
|
||||
<img
|
||||
class="w-12 h-12 md:w-24 md:h-24 rounded-lg"
|
||||
src="/img/avatar.jpg"
|
||||
alt="Profile picture"
|
||||
integrity="sha386-uiNteVXosQ2+o/izp41L1G9VwuwYDYCOPxzFWks058DMUhW7KfQXcipM7WqgSgEZ" />
|
||||
<div class="ml-4 self-center">
|
||||
<a class="self-center text-2xl font-bold" href="/">PapaTutuWawa's Website</a>
|
||||
|
||||
<ul class="list-none">
|
||||
<li class="inline mr-8"><a href="https://blog.polynom.me">Blog</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/code/">Code</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/contact/">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="flex flex-col pt-8 mx-auto">
|
||||
<p class="prose text-white">
|
||||
I keep my code mostly on my private Gitea instance <a class="text-indigo-400"
|
||||
href="https://git.polynom.me/PapaTutuWawa">here</a>.
|
||||
For purposes of allowing other people to also contribute
|
||||
I try to mirror my code on GitHub and codeberg.
|
||||
</p>
|
||||
|
||||
<div class="pt-8 w-full">
|
||||
<table class="text-white pt-8 w-full">
|
||||
<tr>
|
||||
<td>GitHub</td>
|
||||
<td><a class="text-indigo-400" href="https://github.com/PapaTutuWawa">PapaTutuWawa</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Codeberg</td>
|
||||
<td><a class="text-indigo-400" href="https://codeberg.org/PapaTutuWawa">PapaTutuWawa</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gitea</td>
|
||||
<td><a class="text-indigo-400" href="https://git.polynom.me/PapaTutuWawa">PapaTutuWawa</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
base_url = "https://polynom.me"
|
||||
|
||||
title = "PapaTutuWawa's Website"
|
||||
description = "The personal website of Alexander 'PapaTutuWawa'."
|
||||
|
||||
[extra]
|
||||
# Code information
|
||||
gitea_url = "git.polynom.me"
|
||||
gitea_username = "PapaTutuWawa"
|
||||
github_username = "PapaTutuWawa"
|
||||
codeberg_username = "PapaTutuWawa"
|
||||
|
||||
# Contact information
|
||||
email_user = "papatutuwawa"
|
||||
email_domain = "polynom.me"
|
||||
gpg_key_url = "pki.polynom.me/pubkeys/papatutuwawa.pub"
|
||||
fediverse_instance = "social.polynom.me"
|
||||
fediverse_username = "papatutuwawa"
|
||||
|
||||
[[extra.projects]]
|
||||
title = "Moxxy"
|
||||
description = "A modern XMPP client written in Flutter. Licensed under GPLv3."
|
||||
screenshot = "img/moxxy.jpg"
|
||||
source_url = "codeberg.org/moxxy/moxxyv2"
|
||||
website = "moxxy.org"
|
||||
|
||||
[[extra.projects]]
|
||||
title = "AniTrack"
|
||||
description = "A simple Anime and Manga tracker written in Flutter. Licensed under MIT."
|
||||
screenshot = "img/anitrack.jpg"
|
||||
source_url = "codeberg.org/PapaTutuWawa/anitrack"
|
||||
website = "codeberg.org/PapaTutuWawa/anitrack"
|
||||
|
||||
[[extra.projects]]
|
||||
title = "xmpp-discord-bridge"
|
||||
description = "An XMPP to Discord bridge that attempts to feel as native as possible on each chat platform, written in Python. Licensed under GPLv3."
|
||||
screenshot = ""
|
||||
source_url = "codeberg.org/PapaTutuWawa/xmpp-discord-bridge.git"
|
||||
website = "codeberg.org/PapaTutuWawa/xmpp-discord-bridge.git"
|
||||
|
||||
[[extra.projects]]
|
||||
title = "mira"
|
||||
description = "An XMPP bot framework for persistent subscription services, written in Python. Licensed under GPLv3."
|
||||
screenshot = ""
|
||||
source_url = "git.polynom.me/PapaTutuWawa/mira"
|
||||
website = "git.polynom.me/PapaTutuWawa/mira"
|
||||
@@ -1,80 +0,0 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link href="https://polynom.me/css/index.css" rel="stylesheet" />
|
||||
<link href="https://polynom.me/css/extra.css" rel="stylesheet" />
|
||||
|
||||
|
||||
<meta property="og:title" content="Contact | polynom.me" />
|
||||
<meta property="og:description" content="Contact details for getting in touch with Alexander 'PapaTutuWawa'." />
|
||||
<title>Contact | polynom.me</title>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="flex flex-col p-2 md:p-8 items-start md:w-4/5 mx-auto">
|
||||
<!-- Header -->
|
||||
<div class="flex flex-row self-center">
|
||||
<img
|
||||
class="w-12 h-12 md:w-24 md:h-24 rounded-lg"
|
||||
src="/img/avatar.jpg"
|
||||
alt="Profile picture"
|
||||
integrity="sha386-uiNteVXosQ2+o/izp41L1G9VwuwYDYCOPxzFWks058DMUhW7KfQXcipM7WqgSgEZ" />
|
||||
<div class="ml-4 self-center">
|
||||
<a class="self-center text-2xl font-bold" href="/">PapaTutuWawa's Website</a>
|
||||
|
||||
<ul class="list-none">
|
||||
<li class="inline mr-8"><a href="https://blog.polynom.me">Blog</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/code/">Code</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/contact/">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="flex flex-col pt-8 mx-auto">
|
||||
<p class="prose text-white">
|
||||
If you have any questions about my projects or just want to talk, feel
|
||||
free to reach out to me.
|
||||
</p>
|
||||
|
||||
<div class="w-full pt-8">
|
||||
<table class="text-white w-full">
|
||||
<tr>
|
||||
<td>Fediverse</td>
|
||||
<td>
|
||||
<a class="text-indigo-400" href="https://social.polynom.me/papatutuwawa">@papatutuwawa@social.polynom.me</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>E-Mail</td>
|
||||
<td>papatutuwawa [a with a circle] polynom.me</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td />
|
||||
<td>
|
||||
Please use my <a class="text-indigo-400" href="https://pki.polynom.me/pubkeys/papatutuwawa.pub">GPG public key</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GitHub</td>
|
||||
<td><a class="text-indigo-400" href="https://github.com/PapaTutuWawa">PapaTutuWawa</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Codeberg</td>
|
||||
<td><a class="text-indigo-400" href="https://codeberg.org/PapaTutuWawa">PapaTutuWawa</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gitea</td>
|
||||
<td><a class="text-indigo-400" href="https://git.polynom.me/PapaTutuWawa">PapaTutuWawa</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,4 @@
|
||||
+++
|
||||
title = "PapaTutuWawa's Website"
|
||||
template = "index.html"
|
||||
+++
|
||||
@@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Code | polynom.me"
|
||||
description = "Alexander 'PapaTutuWawa' 's code repositories."
|
||||
template = "code.html"
|
||||
+++
|
||||
@@ -0,0 +1,5 @@
|
||||
+++
|
||||
title = "Contact | polynom.me"
|
||||
description = "Contact details for getting in touch with Alexander 'PapaTutuWawa'."
|
||||
template = "contact.html"
|
||||
+++
|
||||
@@ -1 +0,0 @@
|
||||
/*! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}body{background-color:#212121}html{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}a{--tw-text-opacity:1!important;color:rgb(129 140 248/var(--tw-text-opacity))!important}*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-left:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:uppLine truncated
|
||||
Generated
+62
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"nodes": {
|
||||
"assets": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1672838029,
|
||||
"narHash": "sha256-maczGnXL9zid6l742og7D0KC8LlZqmebWe23AhtWGZg=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "e490bf002efc9661b6312bc135f5e809cee8df18",
|
||||
"revCount": 20,
|
||||
"type": "git",
|
||||
"url": "https://git.polynom.me/polynom.me/shared-assets.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://git.polynom.me/polynom.me/shared-assets.git"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1638239011,
|
||||
"narHash": "sha256-AjhmbT4UBlJWqxY0ea8a6GU2C2HdKUREkG43oRr3TZg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a7ecde854aee5c4c7cd6177f54a99d2c1ff28a31",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "21.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1689449371,
|
||||
"narHash": "sha256-sK3Oi8uEFrFPL83wKPV6w0+96NrmwqIpw9YFffMifVg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "29bcead8405cfe4c00085843eb372cc43837bb9d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"assets": "assets",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
description = "The website hosted at https://polynom.me";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
assets.url = "git+https://git.polynom.me/polynom.me/shared-assets.git";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
assets
|
||||
}: let
|
||||
supportedSystems = [ "x86_64-linux" ];
|
||||
forAllSystems = nixpkgs.lib.attrsets.genAttrs supportedSystems;
|
||||
in {
|
||||
devShell = forAllSystems (system: let
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
tailwindWithTypography = pkgs.nodePackages.tailwindcss.overrideAttrs (old: {
|
||||
plugins = [
|
||||
pkgs.nodePackages."@tailwindcss/typography"
|
||||
];
|
||||
});
|
||||
|
||||
in pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
tailwindWithTypography zola
|
||||
];
|
||||
});
|
||||
};
|
||||
}
|
||||
-170
@@ -1,170 +0,0 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link href="https://polynom.me/css/index.css" rel="stylesheet" />
|
||||
<link href="https://polynom.me/css/extra.css" rel="stylesheet" />
|
||||
|
||||
|
||||
<meta property="og:title" content="PapaTutuWawa's Website" />
|
||||
<meta property="og:description" content="The personal website of Alexander 'PapaTutuWawa'." />
|
||||
<title>PapaTutuWawa's Website</title>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div class="flex flex-col p-2 md:p-8 items-start md:w-4/5 mx-auto">
|
||||
<!-- Header -->
|
||||
<div class="flex flex-row self-center">
|
||||
<img
|
||||
class="w-12 h-12 md:w-24 md:h-24 rounded-lg"
|
||||
src="/img/avatar.jpg"
|
||||
alt="Profile picture"
|
||||
integrity="sha386-uiNteVXosQ2+o/izp41L1G9VwuwYDYCOPxzFWks058DMUhW7KfQXcipM7WqgSgEZ" />
|
||||
<div class="ml-4 self-center">
|
||||
<a class="self-center text-2xl font-bold" href="/">PapaTutuWawa's Website</a>
|
||||
|
||||
<ul class="list-none">
|
||||
<li class="inline mr-8"><a href="https://blog.polynom.me">Blog</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/code/">Code</a></li>
|
||||
<li class="inline mr-8"><a href="https://polynom.me/contact/">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="flex flex-col mx-auto">
|
||||
<p class="text-white prose py-8 self-center">
|
||||
Hello! My online pseudonym is <i>PapaTutuWawa</i> and I am
|
||||
just some random person on the Internet who is passionate about
|
||||
topics like XMPP, federated Internet services and privacy. Linux system
|
||||
administration, Linux tinkering and programming are my favourite things to do.
|
||||
</p>
|
||||
|
||||
<h1 class="prose text-2xl text-indigo-400 self-start">Projects</h1>
|
||||
<p class="prose text-white text-left self-start">This is a small selection of my projects. More are available <a
|
||||
class="text-indigo-400" href="code.html">here.</a></p>
|
||||
|
||||
|
||||
<div class="flex flex-row self-start pt-8">
|
||||
|
||||
<div>
|
||||
<a href="https://moxxy.org" target="_blank">
|
||||
<img
|
||||
class="w-24 md:w-48 max-w-none rounded-lg clickable"
|
||||
src="img/moxxy.jpg"
|
||||
alt="Screenshot of Moxxy"
|
||||
integrity="sha386-c4aF6C3eQtEaAm9az1Sr70bxaIq5V9gdLUuvmZ/N9nVSzOLV/QdHs1s5axtvM7kp" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col pl-8">
|
||||
<h2 class="prose text-indigo-400 text-2xl">Moxxy</h2>
|
||||
<p class="prose text-white text-justify">A modern XMPP client written in Flutter. Licensed under GPLv3.</p>
|
||||
|
||||
<div class="pt-4">
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<a class="text-indigo-400" href="https://moxxy.org">Website</a>
|
||||
</li>
|
||||
|
||||
|
||||
<li><a class="prose text-indigo-400" href="https://codeberg.org/moxxy/moxxyv2">Code</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-row self-start pt-8">
|
||||
|
||||
<div>
|
||||
<a href="https://codeberg.org/PapaTutuWawa/anitrack" target="_blank">
|
||||
<img
|
||||
class="w-24 md:w-48 max-w-none rounded-lg clickable"
|
||||
src="img/anitrack.jpg"
|
||||
alt="Screenshot of AniTrack"
|
||||
integrity="sha386-GhIL0ONMvXK4XqjAIBz7ID0WSqzwIsjuyaLjNMPSJ+Zv7hQw+31FOMmRTONR6tt0" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col pl-8">
|
||||
<h2 class="prose text-indigo-400 text-2xl">AniTrack</h2>
|
||||
<p class="prose text-white text-justify">A simple Anime and Manga tracker written in Flutter. Licensed under MIT.</p>
|
||||
|
||||
<div class="pt-4">
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<a class="text-indigo-400" href="https://codeberg.org/PapaTutuWawa/anitrack">Website</a>
|
||||
</li>
|
||||
|
||||
|
||||
<li><a class="prose text-indigo-400" href="https://codeberg.org/PapaTutuWawa/anitrack">Code</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-row self-start pt-8">
|
||||
|
||||
<div class="flex justify-center md:w-48 md:h-48 w-24 h-24 rounded-lg clickable bg-indigo-950">
|
||||
<a class="prose text-white text-5xl" href="https://codeberg.org/PapaTutuWawa/xmpp-discord-bridge.git">
|
||||
<div class="md:w-48 md:h-48 w-24 h-24 flex flex-col justify-center">
|
||||
<span class="text-center">#</span>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col pl-8">
|
||||
<h2 class="prose text-indigo-400 text-2xl">xmpp-discord-bridge</h2>
|
||||
<p class="prose text-white text-justify">An XMPP to Discord bridge that attempts to feel as native as possible on each chat platform, written in Python. Licensed under GPLv3.</p>
|
||||
|
||||
<div class="pt-4">
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<a class="text-indigo-400" href="https://codeberg.org/PapaTutuWawa/xmpp-discord-bridge.git">Website</a>
|
||||
</li>
|
||||
|
||||
|
||||
<li><a class="prose text-indigo-400" href="https://codeberg.org/PapaTutuWawa/xmpp-discord-bridge.git">Code</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-row self-start pt-8">
|
||||
|
||||
<div class="flex justify-center md:w-48 md:h-48 w-24 h-24 rounded-lg clickable bg-indigo-950">
|
||||
<a class="prose text-white text-5xl" href="https://git.polynom.me/PapaTutuWawa/mira">
|
||||
<div class="md:w-48 md:h-48 w-24 h-24 flex flex-col justify-center">
|
||||
<span class="text-center">#</span>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col pl-8">
|
||||
<h2 class="prose text-indigo-400 text-2xl">mira</h2>
|
||||
<p class="prose text-white text-justify">An XMPP bot framework for persistent subscription services, written in Python. Licensed under GPLv3.</p>
|
||||
|
||||
<div class="pt-4">
|
||||
<ul>
|
||||
|
||||
<li>
|
||||
<a class="text-indigo-400" href="https://git.polynom.me/PapaTutuWawa/mira">Website</a>
|
||||
</li>
|
||||
|
||||
|
||||
<li><a class="prose text-indigo-400" href="https://git.polynom.me/PapaTutuWawa/mira">Code</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,17 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
@layer base {
|
||||
body {
|
||||
background-color: #212121;
|
||||
}
|
||||
|
||||
html {
|
||||
@apply text-white;
|
||||
}
|
||||
|
||||
a {
|
||||
@apply text-indigo-400 !important;
|
||||
}
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"CNAME": "polynom.me",
|
||||
"headers": {
|
||||
"Content-Security-Policy": "default-src 'self'; script-src 'self'; script-src-elem 'self'; script-src-attr 'none'; style-src * 'self'; img-src 'self' data:; font-src 'self'; connect-src 'none'; media-src 'self'; object-src 'none'; prefetch-src 'none'; child-src 'none'; frame-src 'none'; worker-src 'none'; frame-ancestors 'none'; form-action 'none'; upgrade-insecure-requests; block-all-mixed-content; disown-opener; sandbox; base-uri https://polynom.me; manifest-src 'none'",
|
||||
"X-Frame-Options": "DENY",
|
||||
"Referrer-Policy": "no-referrer, strict-origin-when-cross-origin"
|
||||
}
|
||||
}
|
||||
-12
@@ -1,12 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>https://polynom.me/</loc>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://polynom.me/code/</loc>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://polynom.me/contact/</loc>
|
||||
</url>
|
||||
</urlset>
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,10 @@
|
||||
module.exports = {
|
||||
content: [
|
||||
"./templates/*.html",
|
||||
],
|
||||
theme: {
|
||||
},
|
||||
plugins: [
|
||||
require('@tailwindcss/typography'),
|
||||
],
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<link href="{{ get_url(path="css/index.css") }}" rel="stylesheet" />
|
||||
<link href="{{ get_url(path="css/extra.css") }}" rel="stylesheet" />
|
||||
|
||||
{% if page %}
|
||||
<meta property="og:title" content="{{ page.title }}" />
|
||||
<meta property="og:description" content="{{ page.description }}" />
|
||||
<title>{{ page.title }}</title>
|
||||
{% else %}
|
||||
<meta property="og:title" content="{{ config.title }}" />
|
||||
<meta property="og:description" content="{{ config.description }}" />
|
||||
<title>{{ config.title }}</title>
|
||||
{% endif %}
|
||||
</head>
|
||||
<body>
|
||||
<div class="flex flex-col p-2 md:p-8 items-start md:w-4/5 mx-auto">
|
||||
<!-- Header -->
|
||||
<div class="flex flex-row self-center">
|
||||
<img
|
||||
class="w-12 h-12 md:w-24 md:h-24 rounded-lg"
|
||||
src="/img/avatar.jpg"
|
||||
alt="Profile picture"
|
||||
integrity="sha386-{{ get_hash(path="img/avatar.jpg", sha_type=384, base64=true) | safe }}" />
|
||||
<div class="ml-4 self-center">
|
||||
<a class="self-center text-2xl font-bold" href="/">PapaTutuWawa's Website</a>
|
||||
|
||||
<ul class="list-none">
|
||||
<li class="inline mr-8"><a href="https://blog.polynom.me">Blog</a></li>
|
||||
<li class="inline mr-8"><a href="{{ get_url(path="@/code.md" ) }}">Code</a></li>
|
||||
<li class="inline mr-8"><a href="{{ get_url(path="@/contact.md" ) }}">Contact</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,30 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<div class="flex flex-col pt-8 mx-auto">
|
||||
<p class="prose text-white">
|
||||
I keep my code mostly on my private Gitea instance <a class="text-indigo-400"
|
||||
href="https://{{ config.extra.gitea_url }}/{{ config.extra.gitea_username }}">here</a>.
|
||||
For purposes of allowing other people to also contribute
|
||||
I try to mirror my code on GitHub and codeberg.
|
||||
</p>
|
||||
|
||||
<div class="pt-8 w-full">
|
||||
<table class="text-white pt-8 w-full">
|
||||
<tr>
|
||||
<td>GitHub</td>
|
||||
<td><a class="text-indigo-400" href="https://github.com/{{ config.extra.github_username }}">{{ config.extra.github_username }}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Codeberg</td>
|
||||
<td><a class="text-indigo-400" href="https://codeberg.org/{{ config.extra.codeberg_username }}">{{ config.extra.codeberg_username }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gitea</td>
|
||||
<td><a class="text-indigo-400" href="https://{{ config.extra.gitea_url }}/{{ config.extra.gitea_username }}">{{ config.extra.gitea_username }}</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,45 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<div class="flex flex-col pt-8 mx-auto">
|
||||
<p class="prose text-white">
|
||||
If you have any questions about my projects or just want to talk, feel
|
||||
free to reach out to me.
|
||||
</p>
|
||||
|
||||
<div class="w-full pt-8">
|
||||
<table class="text-white w-full">
|
||||
<tr>
|
||||
<td>Fediverse</td>
|
||||
<td>
|
||||
<a class="text-indigo-400" href="https://{{ config.extra.fediverse_instance}}/{{ config.extra.fediverse_username }}">@{{ config.extra.fediverse_username }}@{{ config.extra.fediverse_instance }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>E-Mail</td>
|
||||
<td>{{ config.extra.email_user }} [a with a circle] {{ config.extra.email_domain }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td />
|
||||
<td>
|
||||
Please use my <a class="text-indigo-400" href="https://{{ config.extra.gpg_key_url }}">GPG public key</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>GitHub</td>
|
||||
<td><a class="text-indigo-400" href="https://github.com/{{ config.extra.github_username }}">{{ config.extra.github_username }}</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Codeberg</td>
|
||||
<td><a class="text-indigo-400" href="https://codeberg.org/{{ config.extra.codeberg_username }}">{{ config.extra.codeberg_username }}</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Gitea</td>
|
||||
<td><a class="text-indigo-400" href="https://{{ config.extra.gitea_url }}/{{ config.extra.gitea_username }}">{{ config.extra.gitea_username }}</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -0,0 +1,57 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<div class="flex flex-col mx-auto">
|
||||
<p class="text-white prose py-8 self-center">
|
||||
Hello! My online pseudonym is <i>PapaTutuWawa</i> and I am
|
||||
just some random person on the Internet who is passionate about
|
||||
topics like XMPP, federated Internet services and privacy. Linux system
|
||||
administration, Linux tinkering and programming are my favourite things to do.
|
||||
</p>
|
||||
|
||||
<h1 class="prose text-2xl text-indigo-400 self-start">Projects</h1>
|
||||
<p class="prose text-white text-left self-start">This is a small selection of my projects. More are available <a
|
||||
class="text-indigo-400" href="code.html">here.</a></p>
|
||||
|
||||
{% for project in config.extra.projects %}
|
||||
<div class="flex flex-row self-start pt-8">
|
||||
{% if project.screenshot != "" %}
|
||||
<div>
|
||||
<a href="https://{{ project.website }}" target="_blank">
|
||||
<img
|
||||
class="w-24 md:w-48 max-w-none rounded-lg clickable"
|
||||
src="{{ project.screenshot }}"
|
||||
alt="Screenshot of {{ project.title }}"
|
||||
integrity="sha386-{{ get_hash(path=project.screenshot, sha_type=384, base64=true) | safe }}" />
|
||||
</a>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="flex justify-center md:w-48 md:h-48 w-24 h-24 rounded-lg clickable bg-indigo-950">
|
||||
<a class="prose text-white text-5xl" href="https://{{ project.website }}">
|
||||
<div class="md:w-48 md:h-48 w-24 h-24 flex flex-col justify-center">
|
||||
<span class="text-center">#</span>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="flex flex-col pl-8">
|
||||
<h2 class="prose text-indigo-400 text-2xl">{{ project.title }}</h2>
|
||||
<p class="prose text-white text-justify">{{ project.description }}</p>
|
||||
|
||||
<div class="pt-4">
|
||||
<ul>
|
||||
{% if project.website != "" %}
|
||||
<li>
|
||||
<a class="text-indigo-400" href="https://{{ project.website }}">Website</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
<li><a class="prose text-indigo-400" href="https://{{ project.source_url }}">Code</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
</div>
|
||||
{% endblock content %}
|
||||
Reference in new issue
Block a user