simplified page routing logic for devlog; restored year/date structure
@@ -40,6 +40,7 @@
|
|||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
<title>denizk0461's website</title>
|
<title>denizk0461's website</title>
|
||||||
|
<meta name="description" content="my personal website">
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<Content>
|
<Content>
|
||||||
|
|||||||
@@ -12,14 +12,6 @@
|
|||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDevlogPosts(): DevlogPost[] {
|
|
||||||
let posts: DevlogPost[] = [];
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return posts;
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
@@ -29,7 +21,7 @@
|
|||||||
|
|
||||||
<BannerTitleAlt
|
<BannerTitleAlt
|
||||||
title="Project N5; Development Log"
|
title="Project N5; Development Log"
|
||||||
banner="/projects/projectn5/devlog/20240323/unity_overview.webp"
|
banner="/projects/projectn5/devlog/2024/0323/unity_overview.webp"
|
||||||
wide
|
wide
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@@ -39,17 +31,17 @@
|
|||||||
<p>2023 progress updates summarise an entire month's work, respectively. Progress updates thereafter denote noteworthy developments in a more collected format.</p>
|
<p>2023 progress updates summarise an entire month's work, respectively. Progress updates thereafter denote noteworthy developments in a more collected format.</p>
|
||||||
|
|
||||||
<div class="post-container">
|
<div class="post-container">
|
||||||
{#each posts.values() as post, index}
|
{#each posts.entries() as [key, post], index}
|
||||||
{@render devlogPost({post, index})}
|
{@render devlogPost({key, post, index})}
|
||||||
{/each}
|
{/each}
|
||||||
</div>
|
</div>
|
||||||
</Content>
|
</Content>
|
||||||
|
|
||||||
{#snippet devlogPost({post, index}: {post: DevlogPost, index: number})}
|
{#snippet devlogPost({key, post, index}: {key: string, post: DevlogPost, index: number})}
|
||||||
<div class="post-supercontainer">
|
<div class="post-supercontainer">
|
||||||
<a href="/projects/projectn5/devlog/{post.id}/" class="post">
|
<a href="/projects/projectn5/devlog/{key}/" class="post">
|
||||||
<div class="post-img-container">
|
<div class="post-img-container">
|
||||||
<img class="post-img" src="/projects/projectn5/devlog/{post.id}/preview.webp" alt="Preview image for devlog {post.title}">
|
<img class="post-img" src="/projects/projectn5/devlog/{key}/preview.webp" alt="Preview image for devlog {post.title}">
|
||||||
</div>
|
</div>
|
||||||
<div class="post-text-container">
|
<div class="post-text-container">
|
||||||
<p class="post-date">#{posts.size - index} // {post.date}</p>
|
<p class="post-date">#{posts.size - index} // {post.date}</p>
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
<title>{data.title} | denizk0461</title>
|
<title>{data.title} | denizk0461</title>
|
||||||
|
<meta name="description" content="{data.description}">
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<BannerTitleAlt
|
<BannerTitleAlt
|
||||||
@@ -1,14 +1,15 @@
|
|||||||
import { posts, type DevlogPost } from '../posts';
|
import { posts, type DevlogPost } from '../../posts';
|
||||||
|
|
||||||
export async function load({ params }) {
|
export async function load({ params }) {
|
||||||
const post = await import(`../${params.slug}.md`);
|
const post = await import(`../../${params.year}/${params.date}.md`);
|
||||||
|
|
||||||
const tag: string = params.slug;
|
const tag: string = `${params.year}/${params.date}`;
|
||||||
const postValues = posts.get(tag);
|
const postValues = posts.get(tag);
|
||||||
const content = post.default;
|
const content = post.default;
|
||||||
const title: string = postValues?.title ?? "";
|
const title: string = postValues?.title ?? "";
|
||||||
const date: string = postValues?.date ?? "";
|
const date: string = postValues?.date ?? "";
|
||||||
const bannerAlt: string = postValues?.bannerAlt ?? "";
|
const bannerAlt: string = postValues?.bannerAlt ?? "";
|
||||||
|
const description: string = postValues?.description ?? "";
|
||||||
|
|
||||||
return {
|
return {
|
||||||
content,
|
content,
|
||||||
@@ -16,5 +17,6 @@ export async function load({ params }) {
|
|||||||
date,
|
date,
|
||||||
tag,
|
tag,
|
||||||
bannerAlt,
|
bannerAlt,
|
||||||
|
description,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -1,147 +1,147 @@
|
|||||||
export interface DevlogPost {
|
export interface DevlogPost {
|
||||||
title: string;
|
title: string;
|
||||||
date: string;
|
date: string;
|
||||||
id: string;
|
|
||||||
bannerAlt: string;
|
bannerAlt: string;
|
||||||
|
description: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const posts = new Map<string, DevlogPost>([
|
export const posts = new Map<string, DevlogPost>([
|
||||||
["20251207", {
|
["2025/1207", {
|
||||||
title: "Playing Games",
|
title: "Playing Games",
|
||||||
date: "2025-12-07",
|
date: "2025-12-07",
|
||||||
id: "20251207",
|
|
||||||
bannerAlt: "An establishing shot of tall towers in front of Laura",
|
bannerAlt: "An establishing shot of tall towers in front of Laura",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20251022", {
|
["2025/1022", {
|
||||||
title: "Growing Pains",
|
title: "Growing Pains",
|
||||||
date: "2025-10-22",
|
date: "2025-10-22",
|
||||||
id: "20251022",
|
|
||||||
bannerAlt: "Close-up of Laura blinking",
|
bannerAlt: "Close-up of Laura blinking",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20251011", {
|
["2025/1011", {
|
||||||
title: "She's Here",
|
title: "She's Here",
|
||||||
date: "2025-10-11",
|
date: "2025-10-11",
|
||||||
id: "20251011",
|
|
||||||
bannerAlt: "Laura idle posing",
|
bannerAlt: "Laura idle posing",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250816", {
|
["2025/0816", {
|
||||||
title: "Freeing the Past",
|
title: "Freeing the Past",
|
||||||
date: "2025-08-16",
|
date: "2025-08-16",
|
||||||
id: "20250816",
|
|
||||||
bannerAlt: "Bottom-up view at Laura v1 in front of a blue sky",
|
bannerAlt: "Bottom-up view at Laura v1 in front of a blue sky",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250713", {
|
["2025/0713", {
|
||||||
title: "Remeshing and Recolouring",
|
title: "Remeshing and Recolouring",
|
||||||
date: "2025-07-13",
|
date: "2025-07-13",
|
||||||
id: "20250713",
|
|
||||||
bannerAlt: "Close-up of Laura at face height",
|
bannerAlt: "Close-up of Laura at face height",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250523", {
|
["2025/0523", {
|
||||||
title: "Reboot",
|
title: "Reboot",
|
||||||
date: "2025-05-23",
|
date: "2025-05-23",
|
||||||
id: "20250523",
|
|
||||||
bannerAlt: "Untextured Laura in a new purple level looking at two cubes",
|
bannerAlt: "Untextured Laura in a new purple level looking at two cubes",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250427", {
|
["2025/0427", {
|
||||||
title: "The Making of a Protagonist, Part IV",
|
title: "The Making of a Protagonist, Part IV",
|
||||||
date: "2025-04-27",
|
date: "2025-04-27",
|
||||||
id: "20250427",
|
|
||||||
bannerAlt: "Sketches of Laura's new clothes",
|
bannerAlt: "Sketches of Laura's new clothes",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250316", {
|
["2025/0316", {
|
||||||
title: "Refactoring",
|
title: "Refactoring",
|
||||||
date: "2025-03-16",
|
date: "2025-03-16",
|
||||||
id: "20250316",
|
|
||||||
bannerAlt: "Laura t-posing in front of a smiling water tower",
|
bannerAlt: "Laura t-posing in front of a smiling water tower",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20250203", {
|
["2025/0203", {
|
||||||
title: "The Making of a Protagonist, Part III",
|
title: "The Making of a Protagonist, Part III",
|
||||||
date: "2025-02-03",
|
date: "2025-02-03",
|
||||||
id: "20250203",
|
|
||||||
bannerAlt: "Three t-posing untextured Lauras",
|
bannerAlt: "Three t-posing untextured Lauras",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20241222", {
|
["2024/1222", {
|
||||||
title: "The Making of a Protagonist, Part II",
|
title: "The Making of a Protagonist, Part II",
|
||||||
date: "2024-12-22",
|
date: "2024-12-22",
|
||||||
id: "20241222",
|
|
||||||
bannerAlt: "Laura a-posing and wearing green and brown clothes",
|
bannerAlt: "Laura a-posing and wearing green and brown clothes",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20241127", {
|
["2024/1127", {
|
||||||
title: "The Making of a Protagonist, Part I",
|
title: "The Making of a Protagonist, Part I",
|
||||||
date: "2024-11-27",
|
date: "2024-11-27",
|
||||||
id: "20241127",
|
|
||||||
bannerAlt: "Multiple iterations of untextured hand 3D models",
|
bannerAlt: "Multiple iterations of untextured hand 3D models",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20241103", {
|
["2024/1103", {
|
||||||
title: "Visual Update",
|
title: "Visual Update",
|
||||||
date: "2024-11-03",
|
date: "2024-11-03",
|
||||||
id: "20241103",
|
|
||||||
bannerAlt: "Two N5 Blaster side-to-side",
|
bannerAlt: "Two N5 Blaster side-to-side",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20241012", {
|
["2024/1012", {
|
||||||
title: "Returnal Update",
|
title: "Returnal Update",
|
||||||
date: "2024-10-12",
|
date: "2024-10-12",
|
||||||
id: "20241012",
|
|
||||||
bannerAlt: "Protagonist aiming at two monkeys",
|
bannerAlt: "Protagonist aiming at two monkeys",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240713", {
|
["2024/0713", {
|
||||||
title: "WHERE HAVE I BEEN?? Update",
|
title: "WHERE HAVE I BEEN?? Update",
|
||||||
date: "2024-07-13",
|
date: "2024-07-13",
|
||||||
id: "20240713",
|
|
||||||
bannerAlt: "Protagonist staring longingly into the distance, pointing the N5 Blaster thereto",
|
bannerAlt: "Protagonist staring longingly into the distance, pointing the N5 Blaster thereto",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240401", {
|
["2024/0401", {
|
||||||
title: "Behind-The-Scenes Update",
|
title: "Behind-The-Scenes Update",
|
||||||
date: "2024-04-01",
|
date: "2024-04-01",
|
||||||
id: "20240401",
|
|
||||||
bannerAlt: "N5 Blaster with its lights turned off",
|
bannerAlt: "N5 Blaster with its lights turned off",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240324", {
|
["2024/0324", {
|
||||||
title: "Arena Update",
|
title: "Arena Update",
|
||||||
date: "2024-03-24",
|
date: "2024-03-24",
|
||||||
id: "20240324",
|
|
||||||
bannerAlt: "Protagonist being swamped by many monkey enemies",
|
bannerAlt: "Protagonist being swamped by many monkey enemies",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240323", {
|
["2024/0323", {
|
||||||
title: "Progress Update #7",
|
title: "Progress Update #7",
|
||||||
date: "2024-03-23",
|
date: "2024-03-23",
|
||||||
id: "20240323",
|
|
||||||
bannerAlt: "A red enemy being blown up by an incoming rocket",
|
bannerAlt: "A red enemy being blown up by an incoming rocket",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240312", {
|
["2024/0312", {
|
||||||
title: "Progress Update #6",
|
title: "Progress Update #6",
|
||||||
date: "2024-03-12",
|
date: "2024-03-12",
|
||||||
id: "20240312",
|
|
||||||
bannerAlt: "Protagonist pointing the N5 Blaster into the sky",
|
bannerAlt: "Protagonist pointing the N5 Blaster into the sky",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["20240210", {
|
["2024/0210", {
|
||||||
title: "Progress Update #5",
|
title: "Progress Update #5",
|
||||||
date: "2024-02-10",
|
date: "2024-02-10",
|
||||||
id: "20240210",
|
|
||||||
bannerAlt: "Panorama of the environment",
|
bannerAlt: "Panorama of the environment",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["202312", {
|
["2023/12", {
|
||||||
title: "Progress Update #4",
|
title: "Progress Update #4",
|
||||||
date: "2023-12",
|
date: "2023-12",
|
||||||
id: "202312",
|
|
||||||
bannerAlt: "White protagonist holding the N5 Blaster",
|
bannerAlt: "White protagonist holding the N5 Blaster",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["202311", {
|
["2023/11", {
|
||||||
title: "Progress Update #3",
|
title: "Progress Update #3",
|
||||||
date: "2023-11",
|
date: "2023-11",
|
||||||
id: "202311",
|
|
||||||
bannerAlt: "A side view of the N5 Blaster",
|
bannerAlt: "A side view of the N5 Blaster",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["202310", {
|
["2023/10", {
|
||||||
title: "Progress Update #2",
|
title: "Progress Update #2",
|
||||||
date: "2023-10",
|
date: "2023-10",
|
||||||
id: "202310",
|
|
||||||
bannerAlt: "Red protagonist lying on the floor, holding a purple blaster",
|
bannerAlt: "Red protagonist lying on the floor, holding a purple blaster",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
["202309", {
|
["2023/09", {
|
||||||
title: "Progress Update #1",
|
title: "Progress Update #1",
|
||||||
date: "2023-09",
|
date: "2023-09",
|
||||||
id: "202309",
|
|
||||||
bannerAlt: "Ratchet from Ratchet: Gladiator and Sans from Undertale t-posing",
|
bannerAlt: "Ratchet from Ratchet: Gladiator and Sans from Undertale t-posing",
|
||||||
|
description: "",
|
||||||
}],
|
}],
|
||||||
])
|
])
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ export const projects: Project[] = [
|
|||||||
{
|
{
|
||||||
id: "projektike",
|
id: "projektike",
|
||||||
type: "game",
|
type: "game",
|
||||||
isActive: true,
|
isActive: false,
|
||||||
banner: "/projects/projektike/banner.webp",
|
banner: "/projects/projektike/banner.webp",
|
||||||
icon: "",
|
icon: "",
|
||||||
date: "August 2024 – May 2025",
|
date: "August 2024 – May 2025",
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 185 KiB After Width: | Height: | Size: 185 KiB |
|
Before Width: | Height: | Size: 168 KiB After Width: | Height: | Size: 168 KiB |
|
Before Width: | Height: | Size: 167 KiB After Width: | Height: | Size: 167 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |