diff --git a/src/App.tsx b/src/App.tsx index 8e5039d..5c4a5e4 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,5 +1,6 @@ import './App.css'; import Navbar from './components/Navbar'; +import TopBar from './components/TopBar'; import {BrowserRouter, Route, Routes} from 'react-router-dom'; import Feed from "./pages/Feed.tsx"; import DreamPage from "./pages/DreamPage.tsx"; @@ -23,7 +24,8 @@ function Profile() { export default function App() { return ( -
+
+
diff --git a/public/assets/logo.svg b/src/assets/logo.svg similarity index 59% rename from public/assets/logo.svg rename to src/assets/logo.svg index 050fe45..b38fb4c 100644 --- a/public/assets/logo.svg +++ b/src/assets/logo.svg @@ -1,13 +1,13 @@ - + - - + + - + diff --git a/public/assets/text.svg b/src/assets/text.svg similarity index 100% rename from public/assets/text.svg rename to src/assets/text.svg diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx index 88468ad..fd15d80 100644 --- a/src/components/Navbar.tsx +++ b/src/components/Navbar.tsx @@ -5,27 +5,27 @@ export default function Navbar() { return (<>
+
- + - + - + ); diff --git a/src/components/TopBar.tsx b/src/components/TopBar.tsx new file mode 100644 index 0000000..20cb6bd --- /dev/null +++ b/src/components/TopBar.tsx @@ -0,0 +1,42 @@ +import { useEffect, useState } from 'react'; +import logo from '../assets/logo.svg'; +import text from '../assets/text.svg'; + +export default function TopBar() { + const [visible, setVisible] = useState(true); + const [lastScrollY, setLastScrollY] = useState(0); + + useEffect(() => { + const handleScroll = () => { + const currentScrollY = window.scrollY; + + // Hide the topbar when scrolling down, show when scrolling up + if (currentScrollY > lastScrollY) { + setVisible(false); + } else { + setVisible(true); + } + + setLastScrollY(currentScrollY); + }; + + window.addEventListener('scroll', handleScroll, { passive: true }); + + return () => { + window.removeEventListener('scroll', handleScroll); + }; + }, [lastScrollY]); + + return ( +
+
+ REMind Logo + REMind Text +
+
+ ); +}