diff --git a/src/lib/components/Navbar.svelte b/src/lib/components/Navbar.svelte
new file mode 100644
index 0000000..c45f38f
--- /dev/null
+++ b/src/lib/components/Navbar.svelte
@@ -0,0 +1,141 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 994d54f..d33fd6b 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -2,6 +2,32 @@
import '../app.css';
import { onMount } from 'svelte';
import { page } from '$app/stores';
+ import Navbar from '$lib/components/Navbar.svelte';
+ import { browser } from '$app/environment';
+
+ let isAuthenticated = false;
+ let isLoginPage = false;
+
+ // Authentication state'ini kontrol et
+ function checkAuth() {
+ if (browser) {
+ const user = localStorage.getItem('user');
+ isAuthenticated = !!user;
+ isLoginPage = $page.url.pathname === '/';
+ }
+ }
+
+ // Page değiştiğinde ve component mount olduğında kontrol et
+ onMount(() => {
+ checkAuth();
+ });
+
+ $: {
+ checkAuth();
+ }
+
+ // Navbar'ı gösterme kararı
+ $: shouldShowNavbar = isAuthenticated && !isLoginPage;
@@ -9,7 +35,11 @@
-
+{#if shouldShowNavbar}
+
+{/if}
+
+
@@ -17,5 +47,23 @@
main {
min-height: 100vh;
width: 100%;
+ padding-top: 0;
+ }
+
+ main.navbar-visible {
+ min-height: calc(100vh - 70px);
+ padding-top: 0;
+ }
+
+ @media (max-width: 768px) {
+ main.navbar-visible {
+ min-height: calc(100vh - 60px);
+ }
+ }
+
+ @media (max-width: 480px) {
+ main.navbar-visible {
+ min-height: calc(100vh - 70px);
+ }
}
\ No newline at end of file
diff --git a/static/logo.png b/static/logo.png
new file mode 100644
index 0000000..c923b0a
Binary files /dev/null and b/static/logo.png differ