From 30e4e403012ff10e814e0c072b3bb11b53dc31bd Mon Sep 17 00:00:00 2001
From: itsscb <dev@itsscb.de>
Date: Wed, 9 Apr 2025 22:31:08 +0200
Subject: [PATCH] feat: add basic functionality

---
 src/routes/+page.svelte | 55 +++++++++++++++++++++++++++++++++++++++--
 1 file changed, 53 insertions(+), 2 deletions(-)

diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index cc88df0..04c5fb6 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -1,2 +1,53 @@
-<h1>Welcome to SvelteKit</h1>
-<p>Visit <a href="https://svelte.dev/docs/kit">svelte.dev/docs/kit</a> to read the documentation</p>
+<script lang="ts">
+	import { onMount } from "svelte";
+	import type { WorkoutEntry } from "$lib/types";
+	import { getWorkouts, saveWorkouts } from "$lib/storage";
+
+	let workouts: WorkoutEntry[] = [];
+
+	let date = "";
+	let workout_type = "";
+	let duration_hours = 0;
+
+	onMount(() => {
+		const today = new Date();
+		date = today.toISOString().split("T")[0];
+		workouts = getWorkouts();
+	});
+
+	function on_save() {
+		const workout: WorkoutEntry = {
+			date: date,
+			workout_type: workout_type,
+			duration_hours: duration_hours,
+		};
+
+		workouts = [...workouts, workout];
+
+		saveWorkouts(workouts);
+		workout_type = "";
+		duration_hours = 0;
+	}
+</script>
+
+<h1>FitLog</h1>
+
+<input type="date" bind:value={date} placeholder="Enter date" />
+<input type="text" bind:value={workout_type} placeholder="Enter workout type" />
+<input
+	type="number"
+	bind:value={duration_hours}
+	placeholder="Enter duration in Hours"
+/>
+
+<button on:click={on_save}>Save</button>
+
+{#if workouts.length}
+	<ul>
+		{#each workouts as workout}
+			<li>
+				{workout.date} - {workout.workout_type} - {workout.duration_hours}
+			</li>
+		{/each}
+	</ul>
+{/if}