Compare commits

..
21 Commits
Author SHA1 Message Date
PapaTutuWawa 0e1ed09bee feat: Bump Nix package's version 2023-07-22 21:09:45 +02:00
PapaTutuWawa 1dd95f2418 feat: Adjust to blog rework 2023-07-22 21:09:19 +02:00
PapaTutuWawa 2a06d6666e fix: Update AniTrack's screenshot 2023-07-17 17:04:06 +02:00
PapaTutuWawa 2d0c954a82 feat: Make prettier 2023-07-17 17:01:11 +02:00
PapaTutuWawa eac0b06afc feat: Change Mastodon to my own server 2023-05-13 12:06:19 +02:00
PapaTutuWawa 99aa4c47d4 Fix a typo again 2023-02-06 21:33:14 +01:00
PapaTutuWawa c85dd65ae7 Fix typo 2023-02-06 21:32:04 +01:00
PapaTutuWawa 71322bff07 Replace pub_repo with anitrack 2023-02-06 21:29:52 +01:00
PapaTutuWawa 299d47b580 Ignore direnv 2023-02-06 21:28:15 +01:00
PapaTutuWawa d063d9773c feat: Include well-known into the package 2023-01-21 15:11:44 +01:00
PapaTutuWawa 7dd4ca5cb3 feat: Include XMPP alt-connect data 2023-01-21 15:06:29 +01:00
PapaTutuWawa a99d8fbaba feat: Update shared assets 2023-01-04 14:14:35 +01:00
PapaTutuWawa b3af6f6905 feat: Update Moxxy's screenshot 2022-12-06 15:59:09 +01:00
PapaTutuWawa 10c1b26153 fix: Footer not respecting spaces 2022-06-01 12:42:18 +02:00
PapaTutuWawa 5b4e9eb0c7 fix: Fix HTML validation warnings 2022-06-01 12:33:24 +02:00
PapaTutuWawa 96186d3248 fix: Wrong url when clicking on the screenshot 2022-05-31 20:51:41 +02:00
PapaTutuWawa dd28d65164 fix: Pull the avatar from the shared assets 2022-05-31 20:28:01 +02:00
PapaTutuWawa 5cf8725e01 feat: Make more use of the shared assets 2022-05-31 20:17:47 +02:00
PapaTutuWawa 1e531f07b6 fix: Header too slim on mobile devices 2022-05-31 17:53:49 +02:00
PapaTutuWawa eb018b6717 feat: Expose website as a flake 2022-05-14 17:23:19 +02:00
PapaTutuWawa 110eea369b Initial commit 2022-05-12 15:29:25 +02:00
31 changed files with 403 additions and 340 deletions

No files matched your search

+4
View File
@@ -0,0 +1,4 @@
_site
result
.direnv
.envrc
-3
View File
@@ -1,3 +0,0 @@
<!doctype html>
<title>404 Not Found</title>
<h1>404 Not Found</h1>
-1
View File
@@ -1 +0,0 @@
polynom.me
+27
View File
@@ -0,0 +1,27 @@
BUILD_DATE := $(shell date '+%H:%M %d.%m.%Y')
serve:
python ../shared-assets/makesite.py \
-p params.json \
-v page_assets=/assets \
-v build_time="${BUILD_DATE}" \
--assets ../shared-assets/assets \
--assets ./assets \
--copy-assets \
--ignore ../shared-assets/assets/img \
--include robots.txt
# A workaround to making the fonts load without the CDN
mv _site/assets/fonts _site/fonts
cp -r well-known _site/.well-known
cd _site/ && python -m http.server 8080
build:
python ../shared-assets/makesite.py \
-p params.json \
-v page_assets=https://cdn.polynom.me \
-v build_time="${BUILD_DATE}" \
--assets ./assets \
--copy-assets \
--include robots.txt
cp -r well-known _site/.well-known
tar -czf blog.tar.gz _site
File renamed without changes.
File renamed without changes.
File renamed without changes.
-65
View File
@@ -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 &#x27;PapaTutuWawa&#x27; &#x27;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>
-80
View File
@@ -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 &#x27;PapaTutuWawa&#x27;." />
<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&#x2F;pubkeys&#x2F;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>
+30
View File
@@ -0,0 +1,30 @@
<!-- title: Code | polynom.me -->
<!-- description: Alexander 'PapaTutuWawa' 's code repositories. -->
<!-- render: yes -->
<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://{{ gitea_url }}/{{ 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/{{ github_username }}">{{ github_username }}</a></td>
</tr>
<tr>
<td>Codeberg</td>
<td><a class="text-indigo-400" href="https://codeberg.org/{{ codeberg_username }}">{{ codeberg_username }}</a>
</td>
</tr>
<tr>
<td>Gitea</td>
<td><a class="text-indigo-400" href="https://{{ gitea_url }}/{{ gitea_username }}">{{ gitea_username }}</a></td>
</tr>
</table>
</div>
</div>
+43
View File
@@ -0,0 +1,43 @@
<!-- title: Contact | polynom.me -->
<!-- description: Contact details for getting in touch with Alexander 'PapaTutuWawa'. -->
<!-- render: yes -->
<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://{{ fediverse_instance}}/{{ fediverse_username }}">@{{
fediverse_username }}@{{
fediverse_instance }}</a></td>
</tr>
<tr>
<td>E-Mail</td>
<td>{{ email_user }} [a with a circle] {{ email_domain }}</td>
</tr>
<tr>
<td />
<td>
Please use my <a class="text-indigo-400" href="https://{{ gpg_key_url }}">GPG public key</a>
</td>
</tr>
<tr>
<td>GitHub</td>
<td><a class="text-indigo-400" href="https://github.com/{{ github_username }}">{{ github_username }}</a></td>
</tr>
<tr>
<td>Codeberg</td>
<td><a class="text-indigo-400" href="https://codeberg.org/{{ codeberg_username }}">{{ codeberg_username }}</a>
</td>
</tr>
<tr>
<td>Gitea</td>
<td><a class="text-indigo-400" href="https://{{ gitea_url }}/{{ gitea_username }}">{{ gitea_username }}</a></td>
</tr>
</table>
</div>
</div>
+19
View File
@@ -0,0 +1,19 @@
<!-- title: Home | polynom.me -->
<!-- description: The personal website of Alexander 'PapaTutuWawa'. -->
<!-- render: yes -->
<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_each projects layout/templates/project.html }}
</div>
-1
View File
@@ -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
View File
@@ -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
}
+42
View File
@@ -0,0 +1,42 @@
{
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 {
packages = forAllSystems (system: let
pkgs = import nixpkgs { inherit system; };
tailwindWithTypography = pkgs.nodePackages.tailwindcss.overrideAttrs (old: {
plugins = [
pkgs.nodePackages."@tailwindcss/typography"
];
});
in {
default = pkgs.callPackage ./pkgs/website.nix {
shared-assets = assets.packages.${system}.default;
inherit tailwindWithTypography;
};
});
devShell = forAllSystems (system: let
pkgs = import nixpkgs { inherit system; };
pythonEnv = pkgs.python3.withPackages (ps: with ps; [ markdown ]);
in pkgs.mkShell {
buildInputs = with pkgs; [
pythonEnv
];
});
};
}
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

-170
View File
@@ -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&#x27;s Website" />
<meta property="og:description" content="The personal website of Alexander &#x27;PapaTutuWawa&#x27;." />
<title>PapaTutuWawa&#x27;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&#x2F;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&#x2F;moxxy&#x2F;moxxyv2">Code</a></li>
</ul>
</div>
</div>
</div>
<div class="flex flex-row self-start pt-8">
<div>
<a href="https://codeberg.org&#x2F;PapaTutuWawa&#x2F;anitrack" target="_blank">
<img
class="w-24 md:w-48 max-w-none rounded-lg clickable"
src="img&#x2F;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&#x2F;PapaTutuWawa&#x2F;anitrack">Website</a>
</li>
<li><a class="prose text-indigo-400" href="https://codeberg.org&#x2F;PapaTutuWawa&#x2F;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&#x2F;PapaTutuWawa&#x2F;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&#x2F;PapaTutuWawa&#x2F;xmpp-discord-bridge.git">Website</a>
</li>
<li><a class="prose text-indigo-400" href="https://codeberg.org&#x2F;PapaTutuWawa&#x2F;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&#x2F;PapaTutuWawa&#x2F;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&#x2F;PapaTutuWawa&#x2F;mira">Website</a>
</li>
<li><a class="prose text-indigo-400" href="https://git.polynom.me&#x2F;PapaTutuWawa&#x2F;mira">Code</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
+17
View File
@@ -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;
}
}
+34
View File
@@ -0,0 +1,34 @@
<!doctype html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link href="/assets/css/index.css" rel="stylesheet" />
<link rel="shortcut icon" href="/assets/img/favicon.ico" sizes="32x32" />
<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Moxxy Blog" />
<meta property="og:title" content="{{ title }}" />
<meta property="og:description" content="{{ description }}" />
<title>{{ title }}</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="{{ page_assets }}/img/avatar.jpg" alt="Profile picture"/>
<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="/code.html">Code</a></li>
<li class="inline mr-8"><a href="/contact.html">Contact</a></li>
</ul>
</div>
</div>
{{ content }}
</div>
</body>
</html>
File renamed without changes.
+7
View File
@@ -0,0 +1,7 @@
<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://{{ item.source_url }}">
<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>
+14
View File
@@ -0,0 +1,14 @@
<div class="flex flex-row self-start pt-8">
{{ template_if_empty item.screenshot layout/templates/no_screenshot.html layout/templates/screenshot.html }}
<div class="flex flex-col pl-8">
<h2 class="prose text-indigo-400 text-2xl">{{ item.title }}</h2>
<p class="prose text-white text-justify">{{ item.description }}</p>
<div class="pt-4">
<ul>
{{ template_if_empty item.website layout/templates/empty.html layout/templates/project_website.html }}
<li><a class="prose text-indigo-400" href="https://{{ item.source_url }}">Code</a></li>
</ul>
</div>
</div>
</div>
+1
View File
@@ -0,0 +1 @@
<li><a class="text-indigo-400" href="https://{{ item.website }}">Website</a></li>
+5
View File
@@ -0,0 +1,5 @@
<div>
<a href="https://{{ item.source_url }}" target="_blank">
<img class="w-24 md:w-48 max-w-none rounded-lg clickable" src="{{ item.screenshot }}" alt="Screenshot of {{ item.title }}" />
</a>
</div>
+42
View File
@@ -0,0 +1,42 @@
{
"author_name": "Alexander \"PapaTutuWawa\"",
"blog_url": "blog.polynom.me",
"fediverse_instance": "social.polynom.me",
"fediverse_username": "papatutuwawa",
"email_domain": "polynom.me",
"email_user": "papatutuwawa",
"gpg_key_url": "pki.polynom.me/pubkeys/papatutuwawa.pub",
"github_username": "PapaTutuWawa",
"codeberg_username": "PapaTutuWawa",
"gitea_username": "PapaTutuWawa",
"gitea_url": "git.polynom.me",
"projects": [{
"title": "Moxxy",
"description": "A modern XMPP client written in Flutter. Licensed under GPLv3.",
"screenshot": "assets/img/moxxy.jpg",
"source_url": "codeberg.org/moxxy/moxxyv2",
"website": "codeberg.org/moxxy/moxxyv2"
}, {
"title": "AniTrack",
"description": "A simple Anime and Manga tracker written in Flutter. Licensed under MIT.",
"screenshot": "assets/img/anitrack.jpg",
"source_url": "codeberg.org/PapaTutuWawa/anitrack",
"website": "codeberg.org/PapaTutuWawa/anitrack"
}, {
"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"
}, {
"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"
}]
}
+44
View File
@@ -0,0 +1,44 @@
{
lib, stdenv
, python3
, shared-assets
, tailwindWithTypography
}: let
pythonEnv = python3.withPackages (ps: with ps; [
markdown pygments
]);
in stdenv.mkDerivation {
pname = "website";
version = "20230722";
src = ../.;
buildInputs = [ shared-assets python3 ];
buildPhase = ''
${pythonEnv}/bin/python ${shared-assets}/bin/makesite.py \
-v page_assets=https://cdn.polynom.me \
--assets ./assets \
--copy-assets \
--include robots.txt \
-p params.json
# Build Tailwind CSS data
${tailwindWithTypography}/bin/tailwindcss --input ./input.css --output _site/assets/css/index.css
'';
installPhase = ''
mkdir -p $out/srv/www/website
cp -vr _site/* $out/srv/www/website
cp -vr well-known $out/srv/www/website/.well-known
'';
doCheck = false;
meta = with lib; {
description = "The website hosted at https://polynom.me";
homepage = "https://git.polynom.me/polynom.me/website";
maintainers = [];
license = licenses.gpl3;
};
}
-8
View File
@@ -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
View File
@@ -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>
+12
View File
@@ -0,0 +1,12 @@
module.exports = {
content: [
"./content/*.html",
"./layout/*.html",
"./layout/templates/*.html",
],
theme: {
},
plugins: [
require('@tailwindcss/typography'),
],
}
File renamed without changes.
File renamed without changes.