diff --git a/src/lib/header.svelte b/src/lib/header.svelte index d28455e..fb5e792 100644 --- a/src/lib/header.svelte +++ b/src/lib/header.svelte @@ -7,8 +7,6 @@ » Projects // - Games - // About « diff --git a/src/lib/projects.ts b/src/lib/projects.ts index 718b854..6cf6d47 100644 --- a/src/lib/projects.ts +++ b/src/lib/projects.ts @@ -1,5 +1,6 @@ export interface Project { id: string; + type: string; // currently used types: game, app, hardware, music isActive: boolean; // whether the project is currently active (true) or a past project (false) banner: string; icon: string; @@ -18,6 +19,7 @@ export interface Link { export const projects: Project[] = [ { id: "projectn5", + type: "game", isActive: true, banner: "/projects/projectn5/banner.webp", icon: "", @@ -26,7 +28,7 @@ export const projects: Project[] = [ subtitle: "", paragraphs: [ "I'm currently working on a game developed using Godot, entitled Project N5! It's aiming to be an action-adventure 3D jump & run heavily inspired by games such as Ratchet & Clank.", - "I maintain a development log on this website, feel free to check it out if you're curious!", + "I maintain a development log on this website, feel free to check it out if you're curious! Or play some of the old builds available for download below.", ], links: [ { @@ -45,6 +47,7 @@ export const projects: Project[] = [ }, { id: "projektike", + type: "game", isActive: true, banner: "/projects/projektike/banner.webp", icon: "", @@ -63,6 +66,7 @@ export const projects: Project[] = [ }, { id: "daisyfm", + type: "hardware", isActive: false, banner: "/projects/daisyfm/banner.webp", icon: "", @@ -78,17 +82,18 @@ export const projects: Project[] = [ link: "/projects/daisyfm", }, { - text: "Get the PCB and STL files", + text: "Get the PCB and STL files", link: "//files.denizk0461.dev/daisyfm/", }, { - text: "View the repository", + text: "View the code files on Codeberg", link: "https://codeberg.org/denizk0461/daisy-fm-synth", }, ], }, { id: "weserplaner", + type: "app", isActive: false, banner: "/projects/weserplaner/banner.webp", icon: "/projects/weserplaner/icon.webp", @@ -113,6 +118,7 @@ export const projects: Project[] = [ }, { id: "textbasic", + type: "app", isActive: false, banner: "", icon: "/projects/textbasic/icon.webp", @@ -136,6 +142,7 @@ export const projects: Project[] = [ }, { id: "dreamworld", + type: "music", isActive: false, banner: "/projects/dreamworld/banner.webp", icon: "/projects/dreamworld/icon.webp", @@ -165,6 +172,7 @@ export const projects: Project[] = [ }, { id: "qwark", + type: "app", isActive: false, banner: "", icon: "/projects/qwark/icon.webp", @@ -185,6 +193,7 @@ export const projects: Project[] = [ }, { id: "avhplan", + type: "app", isActive: false, banner: "", date: "April 2019 – March 2020", @@ -210,6 +219,7 @@ export const projects: Project[] = [ }, { id: "anewbeginning", + type: "music", isActive: false, banner: "", icon: "/projects/anewbeginning/icon.webp", @@ -237,6 +247,7 @@ export const projects: Project[] = [ }, { id: "soundcloud", + type: "music", isActive: false, banner: "", icon: "/projects/soundcloud/icon.webp", @@ -257,13 +268,9 @@ export const projects: Project[] = [ }, ], }, -]; - - - -export const games: Project[] = [ { id: "magician", + type: "game", isActive: false, banner: "/projects/magician/banner.webp", icon: "", @@ -280,34 +287,9 @@ export const games: Project[] = [ }, ], }, - { - id: "projectn5", - isActive: false, - banner: "/projects/projectn5/banner.webp", - icon: "", - date: "September 2023 – June 2025", - title: "Project N5", - subtitle: "Action-Adventure Jump & Run", - paragraphs: [ - "Project N5 is the deprecated version of my current game. The old version is available to play in-browser, plus some downloads of several Windows builds.", - ], - links: [ - { - text: "View the development log", - link: "/projects/projectn5/devlog", - }, - { - text: "Play Project N5 (last build)", - link: "//apps.denizk0461.dev/projectn5", - }, - { - text: "Download the old Windows builds", - link: "//files.denizk0461.dev/projectn5", - }, - ], - }, { id: "swordsnstuff", + type: "game", isActive: false, banner: "/projects/swordsnstuff/banner.webp", icon: "", @@ -328,6 +310,7 @@ export const games: Project[] = [ }, { id: "tads", + type: "game", isActive: false, banner: "/projects/tads/banner.webp", icon: "/projects/tads/icon.webp", diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 8999db5..c851b2c 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -54,13 +54,6 @@ img: "projects/project-mix.webp", link: "projects", }, - { - title: "Games", - subtitle: "some small games I've made that are available online", - fullWidth: false, - img: "common/hypertext.webp", - link: "games", - }, { title: "Files", subtitle: "find things I've put for download on my copyparty instance", diff --git a/src/routes/games/+page.svelte b/src/routes/games/+page.svelte deleted file mode 100644 index e360e5b..0000000 --- a/src/routes/games/+page.svelte +++ /dev/null @@ -1,59 +0,0 @@ - - - - Games | denizk0461 - - - - - - - - -
-

Here you'll find all the game projects I've put online!

- {#each games as game} - {@render gameSummary({ game: game })} - {/each} -
- -
- -{#snippet gameSummary({ - game -}: { - game: Project; -})} -
-

{game.title}

- {#if game.subtitle} -

» {game.subtitle}

- {/if} - {#if game.banner} -
- - {#if game.date} -

{game.date}

- {/if} -
- {/if} - {#if game.icon} - - {/if} - {#each game.paragraphs as paragraph} -

{@html paragraph}

- {/each} - -
-{/snippet} \ No newline at end of file diff --git a/src/routes/projects/+page.svelte b/src/routes/projects/+page.svelte index 800dcc7..11176b9 100644 --- a/src/routes/projects/+page.svelte +++ b/src/routes/projects/+page.svelte @@ -30,14 +30,29 @@ -

Active Projects

- {#each getActiveProjects(projects, true) as activeProject} - {@render projectSummary({ project: activeProject })} +

Games

+ {#each projects as project} + {#if project.type == "game"} + {@render projectSummary({ project: project })} + {/if} {/each} - -

Past Projects

- {#each getActiveProjects(projects, false) as pastProject} - {@render projectSummary({ project: pastProject })} +

Hardware

+ {#each projects as project} + {#if project.type == "hardware"} + {@render projectSummary({ project: project })} + {/if} + {/each} +

Apps

+ {#each projects as project} + {#if project.type == "app"} + {@render projectSummary({ project: project })} + {/if} + {/each} +

Music

+ {#each projects as project} + {#if project.type == "music"} + {@render projectSummary({ project: project })} + {/if} {/each}