computer-scienceangular-roadmapbackend-roadmapblockchain-roadmapdba-roadmapdeveloper-roadmapdevops-roadmapfrontend-roadmapgo-roadmaphactoberfestjava-roadmapjavascript-roadmapnodejs-roadmappython-roadmapqa-roadmapreact-roadmaproadmapstudy-planvue-roadmapweb3-roadmap
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
138 lines
3.9 KiB
138 lines
3.9 KiB
--- |
|
import Icon from '../AstroIcon.astro'; |
|
import AccountDropdown from './AccountDropdown.astro'; |
|
--- |
|
|
|
<div class='bg-slate-900 py-5 text-white sm:py-8'> |
|
<nav class='container flex items-center justify-between'> |
|
<a class='flex items-center text-lg font-medium text-white' href='/'> |
|
<Icon icon='logo' /> |
|
<span class='ml-3 hidden md:block'>roadmap.sh</span> |
|
</a> |
|
|
|
<!-- Desktop navigation items --> |
|
<ul class='hidden space-x-5 sm:flex sm:items-center'> |
|
<li> |
|
<a href='/roadmaps' class='text-gray-400 hover:text-white'>Roadmaps</a> |
|
</li> |
|
<li> |
|
<a href='/best-practices' class='text-gray-400 hover:text-white' |
|
>Best Practices</a |
|
> |
|
</li> |
|
<li> |
|
<a href='/guides' class='text-gray-400 hover:text-white'>Guides</a> |
|
</li> |
|
<li> |
|
<a href='/videos' class='text-gray-400 hover:text-white'>Videos</a> |
|
</li> |
|
</ul> |
|
<ul class='hidden w-[172px] h-8 items-center gap-5 sm:flex justify-end'> |
|
<li data-guest-required class="hidden"> |
|
<a href='/login' class='text-gray-400 hover:text-white'>Login</a> |
|
</li> |
|
<li> |
|
<AccountDropdown /> |
|
|
|
<a |
|
data-guest-required |
|
class='hidden w-28 flex h-8 cursor-pointer items-center justify-center rounded-full bg-gradient-to-r from-blue-500 to-blue-700 px-4 py-2 text-sm font-medium text-white hover:from-blue-500 hover:to-blue-600' |
|
href='/signup' |
|
> |
|
<span>Sign Up</span> |
|
</a> |
|
</li> |
|
</ul> |
|
|
|
<!-- Mobile Navigation Button --> |
|
<button |
|
class='block cursor-pointer text-gray-400 hover:text-gray-50 sm:hidden' |
|
aria-label='Menu' |
|
data-show-mobile-nav |
|
> |
|
<Icon icon='hamburger' /> |
|
</button> |
|
|
|
<!-- Mobile Navigation Items --> |
|
<div |
|
class='fixed bottom-0 left-0 right-0 top-0 z-40 flex hidden items-center bg-slate-900' |
|
data-mobile-nav |
|
> |
|
<button |
|
data-close-mobile-nav |
|
class='absolute right-6 top-6 block cursor-pointer text-gray-400 hover:text-gray-50' |
|
aria-label='Close Menu' |
|
> |
|
<Icon icon='close' /> |
|
</button> |
|
<ul class='flex w-full flex-col items-center gap-2 md:gap-3'> |
|
<li> |
|
<a href='/roadmaps' class='text-xl hover:text-blue-300 md:text-lg'> |
|
Roadmaps |
|
</a> |
|
</li> |
|
<li> |
|
<a |
|
href='/best-practices' |
|
class='text-xl hover:text-blue-300 md:text-lg' |
|
> |
|
Best Practices |
|
</a> |
|
</li> |
|
<li> |
|
<a href='/guides' class='text-xl hover:text-blue-300 md:text-lg'> |
|
Guides |
|
</a> |
|
</li> |
|
<li> |
|
<a href='/videos' class='text-xl hover:text-blue-300 md:text-lg'> |
|
Videos |
|
</a> |
|
</li> |
|
|
|
<!-- Links for logged in users --> |
|
<li data-auth-required class='hidden'> |
|
<a href='/profile' class='text-xl hover:text-blue-300 md:text-lg'> |
|
Profile |
|
</a> |
|
</li> |
|
<li data-auth-required class='hidden'> |
|
<a |
|
href='/settings/profile' |
|
class='text-xl hover:text-blue-300 md:text-lg' |
|
> |
|
Settings |
|
</a> |
|
</li> |
|
<li data-auth-required class='hidden'> |
|
<button |
|
data-logout-button |
|
class='text-xl text-red-300 hover:text-red-400 md:text-lg' |
|
> |
|
Logout |
|
</button> |
|
</li> |
|
<li> |
|
<a |
|
data-guest-required |
|
href='/signup' |
|
class='text-xl text-white md:text-lg hidden' |
|
> |
|
Login |
|
</a> |
|
</li> |
|
<li> |
|
<a |
|
data-guest-required |
|
href='/signup' |
|
class='text-xl text-green-300 hover:text-green-400 md:text-lg hidden' |
|
> |
|
Sign Up |
|
</a> |
|
</li> |
|
</ul> |
|
</div> |
|
</nav> |
|
</div> |
|
|
|
<script src='./navigation.ts'></script>
|
|
|