more updates
All checks were successful
Build and push container image / build-and-push-image (push) Successful in 2m59s

This commit is contained in:
2025-08-06 22:39:06 +01:00
parent df59a2c097
commit a0562330a3
23 changed files with 94 additions and 23 deletions

View File

@@ -1,5 +1,5 @@
# Imports
from flask import Blueprint, render_template, request, abort, send_from_directory
from flask import Blueprint, render_template, request, abort, send_from_directory, send_file
from os import getenv as env
import logging
@@ -23,22 +23,31 @@ def index():
return render_template('index.html')
# Route for robots.txt, sitemap.xml, and favicon.ico
@bp.route('/robots.txt')
@bp.route('/sitemap.xml')
# Route for favicon
@bp.route('/favicon.ico')
def web_stuffs():
return send_from_directory(
env('STATIC_FOLDER', default='../static'),
request.path.lstrip('/')
)
def favicon():
return send_file('../static/content/other/favicon.ico')
# catch-all route for any other static pages (only in root path)
@bp.route('/<string:filename>')
def static_files(filename):
# Route for robots.txt
@bp.route('/robots.txt')
def robots():
return send_file('../static/content/other/robots.txt')
# Route for sitemap.xml
@bp.route('/sitemap.xml')
def sitemap():
return send_file('../static/content/other/sitemap.xml')
# Catch-all route for generic pages
@bp.route('/<path:filename>')
def catch_all(filename):
# try to find template in the pages directory and add .html extension
if not filename.endswith('.html'):
filename += '.html'
try:
return render_template(filename if filename.endswith('.html') else filename + '.html')
return render_template(f'pages/{filename}')
except Exception as e:
log.error(f"Error serving static file {filename}: {e}")
abort(404)
abort(404, f"Template '{filename}' not found: {e}")

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 MiB

View File

Before

Width:  |  Height:  |  Size: 743 KiB

After

Width:  |  Height:  |  Size: 743 KiB

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View File

Before

Width:  |  Height:  |  Size: 240 KiB

After

Width:  |  Height:  |  Size: 240 KiB

View File

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 2.7 MiB

View File

@@ -1,7 +1,7 @@
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wdth,wght@125,700&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@font-face {
font-family:"Irken";
src:url("/static/content/Irken-Like-AllCaps.woff") format("woff");
src:url("/static/content/fonts/Irken-Like-AllCaps.woff") format("woff");
font-weight:normal;
font-style:normal;
}
@@ -227,7 +227,7 @@ main section a {
right: 0;
bottom: 0;
opacity: 0.1;
background-image: url('/static/content/background.png');
background-image: url('/static/content/general_images/background.png');
background-repeat: no-repeat;
background-position: 50% 0;
background-size: cover;

View File

@@ -34,6 +34,35 @@ ul#toaster-specs li {
height: 100%;
}
.fur-meet-gallery-small {
display: flex;
flex-wrap: wrap;
gap: 5px;
}
.fur-meet-gallery-small img {
width: 150px;
height: 150px;
object-fit: cover;
border-radius: 10px;
border: 2px solid var(--secondary-background-color);
}
.fur-meet-gallery-small img:hover {
transform: scale(1.05);
transition: transform 0.2s ease-in-out;
cursor: pointer;
}
#fur-meets {
list-style: none;
padding: 0;
margin: 10px;
display: flex;
flex-direction: column;
gap: 10px;
}
@media screen and (max-width: 740px) {
.flex-row {
flex-direction: column;

View File

@@ -118,7 +118,7 @@ if (document.getElementById('spotify')) {
// load buttons
function loadButtons() {
fetch('/static/content/buttons.txt').then(response => {
fetch('/static/content/other/buttons.txt').then(response => {
return response.text();
}).then(data => {
container = document.getElementById('button-collection');

View File

@@ -7,7 +7,7 @@
<link rel="icon" href="/static/content/icon.webp">
<link rel="stylesheet" href="/static/css/base.css">
<meta name="description" content="{% block description %}server backend survivor{% endblock %}">
<meta name="keywords" content="Alfie King, Alfie, King, Alfieking, Alfieking.dev, dev, server">
<meta name="keywords" content="{% block keywords %}Alfie King, Alfie, King, Alfieking, Alfieking.dev, dev, server, developer, backend, selfhost, homelab{% endblock %}">
<meta name="author" content="Alfie King">
<meta name="robots" content="all">
<meta name="theme-color" content="#63de90" data-react-helmet="true">
@@ -15,7 +15,7 @@
<meta property="og:url" content="https://alfieking.dev/">
<meta property="og:title" content="{{ self.title() }}">
<meta property="og:description" content="{{ self.description() }}">
<meta property="og:image" content="{% block og_image %}/static/content/icon.webp{% endblock %}">
<meta property="og:image" content="{% block og_image %}/static/content/general_images/icon.webp{% endblock %}">
{% block head %}
{% endblock %}
</head>
@@ -62,12 +62,12 @@
<section>
<pre class="vsmoltext"> |\ _,,,---,,_<br>ZZZzz /,`.-'`' -. ;-;;,_<br> |,4- ) )-,_. ,\ ( `'-'<br> '---''(_/--' `-'\_)</pre>
</section>
<img src="/static/content/haj.gif" alt="haj" class="haj">
<img src="/static/content/general_images/haj.gif" alt="haj" class="haj">
</div>
<main id="main">
<header id="home">
<div class="row">
<img src="/static/content/icon.webp">
<img src="/static/content/general_images/icon.webp">
<div>
<h1>Alfie King</h1>
<h2 id="typing">server backend survivor</h2>

View File

@@ -3,6 +3,12 @@
{% block title %}Toaster - Alfie's basement{% endblock %}
{% block description %}furry corner{% endblock %}
{% block og_image %}/static/content/Toaster_v1.0_Dark.png{% endblock %}
{% block keywords %}
Alfie King, Alfie, King, Alfieking, Alfieking.dev, dev, server, developer, backend, selfhost, homelab, furry, protogen, toaster,
fursona, fur, furmeet, fursuit, persona, character, protogen fursona, protogen character, protogen fursona design,
protogen character design, critters mk, critters cmk, paws n pistons, paws'n'pistons, paws n pistons furry meet, paws'n'pistons furry meet,
protogen v1.0, toaster v1.0
{% endblock %}
{% block head %}
<link rel="stylesheet" href="/static/css/toaster.css">
@@ -45,7 +51,7 @@
</ul>
</section>
<div class="flex-col">
<img src="/static/content/Toaster_v1.0_Dark.png" alt="toaster" id="toaster-img">
<img src="/static/content/toaster/Toaster_v1.0_Dark.png" alt="toaster" id="toaster-img">
<section class="fill-height">
<p>
NEW AND IMPROVED! Toaster v1.0 is here!
@@ -70,4 +76,31 @@
If I end up making a fursuit, I will probably make a post about it on my site and maybe even make a video of it (but dont hold me to that).
</p>
</section>
<section>
<h1>Events</h1>
<p>
There are a few events that ive been to, however I plan on trying to go to more in the future.
<br>
</p>
<ul id="fur-meets">
<li>
<a href="https://x.com/cmkfurmeet"><b>CrittersCMK</b></a> - A furmeet in Milton Keynes.
<div class="fur-meet-gallery-small">
<img src="/static/content/fur_meets/26-08-2025_critters_mk/PXL_20250726_152110445.jpg" alt="CrittersCMK">
<img src="/static/content/fur_meets/26-08-2025_critters_mk/PXL_20250726_155134418.jpg" alt="CrittersCMK">
<img src="/static/content/fur_meets/26-08-2025_critters_mk/PXL_20250726_155226274.jpg" alt="CrittersCMK">
<img src="/static/content/fur_meets/26-08-2025_critters_mk/PXL_20250726_155434701.jpg" alt="CrittersCMK">
</div>
</li>
<li>
<a href="https://www.instagram.com/paws_n_pistons/"><b>Paws'N'Pistons</b></a> - A furry car meet around the UK.
<div class="fur-meet-gallery-small">
<img src="/static/content/fur_meets/03-08-2025_paws_n_pistons/PXL_20250803_141943558.jpg" alt="Paws'N'Pistons">
<img src="/static/content/fur_meets/03-08-2025_paws_n_pistons/PXL_20250803_150138054.jpg" alt="Paws'N'Pistons">
<img src="/static/content/fur_meets/03-08-2025_paws_n_pistons/PXL_20250803_150249916.jpg" alt="Paws'N'Pistons">
<img src="/static/content/fur_meets/03-08-2025_paws_n_pistons/PXL_20250803_183614897.jpg" alt="Paws'N'Pistons">
</div>
</li>
</ul>
</section>
{% endblock %}