From 29e812f80d1fd1212a5cda9974115d13ec123505 Mon Sep 17 00:00:00 2001 From: denizk0461 Date: Tue, 1 Apr 2025 13:55:54 +0200 Subject: [PATCH] basic set-up; started work on projects page --- src/lib/banner-title.svelte | 14 +++--- src/routes/+layout.svelte | 48 +++++++++++++++++++ src/routes/+page.svelte | 2 +- src/routes/projects/+page.svelte | 29 +++++++++++ .../projects/projectn5/devlog/+page.svelte | 26 +++++++++- src/routes/projects/projectn5/devlog/posts.ts | 23 +++++++++ src/routes/projects/projects.ts | 37 ++++++++++++++ 7 files changed, 170 insertions(+), 9 deletions(-) create mode 100644 src/routes/+layout.svelte create mode 100644 src/routes/projects/+page.svelte create mode 100644 src/routes/projects/projectn5/devlog/posts.ts create mode 100644 src/routes/projects/projects.ts diff --git a/src/lib/banner-title.svelte b/src/lib/banner-title.svelte index 02f4845..eed0079 100644 --- a/src/lib/banner-title.svelte +++ b/src/lib/banner-title.svelte @@ -1,14 +1,14 @@ diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte new file mode 100644 index 0000000..dbf3428 --- /dev/null +++ b/src/routes/+layout.svelte @@ -0,0 +1,48 @@ + + +{@render children()} + + \ No newline at end of file diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 94e265c..2b229ba 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -5,4 +5,4 @@

Moin! ~ welcome to my website :)

-

projects

+

projects

\ No newline at end of file diff --git a/src/routes/projects/+page.svelte b/src/routes/projects/+page.svelte new file mode 100644 index 0000000..cbe7f43 --- /dev/null +++ b/src/routes/projects/+page.svelte @@ -0,0 +1,29 @@ + + +
+ +{#each projects as project} + {@render projectSummary({ project })} +{/each} + +{#snippet projectSummary({ + project +}: { + project: Project; +})} +
+

{project.title}

+ {#each project.paragraphs as paragraph} +

{@html paragraph}

+ {/each} + +
+{/snippet} \ No newline at end of file diff --git a/src/routes/projects/projectn5/devlog/+page.svelte b/src/routes/projects/projectn5/devlog/+page.svelte index 6de3049..4e44385 100644 --- a/src/routes/projects/projectn5/devlog/+page.svelte +++ b/src/routes/projects/projectn5/devlog/+page.svelte @@ -1,5 +1,29 @@ -
\ No newline at end of file +
+ + +
+ {#each posts as post} + {@render devlogPost({ imgSrc: "", title: "{post.title}" })} +

{post.date}

+ {/each} +
+ +{#snippet devlogPost({ + imgSrc, + title, +}: { + imgSrc: string; + title: string; +})} +
+ +

{title}

+
+{/snippet} \ No newline at end of file diff --git a/src/routes/projects/projectn5/devlog/posts.ts b/src/routes/projects/projectn5/devlog/posts.ts new file mode 100644 index 0000000..b287de7 --- /dev/null +++ b/src/routes/projects/projectn5/devlog/posts.ts @@ -0,0 +1,23 @@ +export interface DevlogPost { + title: string; + date: Date; + imgSrc: string; +}; + +export const posts: DevlogPost[] = [ + { + title: "title", + date: new Date("2025-01-01"), + imgSrc: "", + }, + { + title: "titasdfle", + date: new Date("2025-02-03"), + imgSrc: "", + }, + { + title: "titl435345e", + date: new Date("2025-01-01"), + imgSrc: "", + }, +]; \ No newline at end of file diff --git a/src/routes/projects/projects.ts b/src/routes/projects/projects.ts new file mode 100644 index 0000000..ee98029 --- /dev/null +++ b/src/routes/projects/projects.ts @@ -0,0 +1,37 @@ +export interface Project { + id: string; + bannerImg: string; + iconImg: string; + title: string; + paragraphs: string[]; + links: Link[]; +}; + +export interface Link { + text: string; + link: string; +} + +export const projects: Project[] = [ + { + id: "weserplaner", + bannerImg: "", + iconImg: "", + title: "WeserPlaner", + paragraphs: [ + "WeserPlaner is an app I developed to more easily view relevant information during my studies at the University of Bremen. It can download the user's timetable from the university's learning platform Stud.IP, and it can download the menus for all canteens managed by the Studierendenwerk Bremen, allowing the user to filter for dietary preferences as well as hiding items containing substances they are allergic against.", + "In developing this app, I took heavy inspiration from an earlier project of mine, AvH-Vertretungsplan, which was an app I developed for a school I used to attend, in order to view the substitution plan as well as the canteen offers more easily. Quite similar!", + "I stopped work on the app in favour of other projects, notably because I had no significant plans for it. The app was taken down from the Google Play Store after I refused to comply with their new developer guidelines, requiring me to publish my home address (what the actual fuck Google?), and after the Studierendenwerk Bremen updated their page around the start of 2025, the app became nonfunctional.", + ], + links: [ + { + text: "View on Codeberg", + link: "https://codeberg.org/denizk0461/weserplaner/", + }, + { + text: "View on Google Play (outdated)", + link: "https://play.google.com/store/apps/details?id=com.denizk0461.weserplaner", + }, + ], + }, +]; \ No newline at end of file