First commit

This commit is contained in:
Dita Aji Pratama 2024-08-20 15:15:33 +07:00
parent 3619f54376
commit 54fd39617a
4 changed files with 204 additions and 1 deletions

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2024 CostaPyTemplates
Copyright (c) 2024 Dita Aji Pratama
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

105
index.html Normal file
View File

@ -0,0 +1,105 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Prime</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="style.css">
</head>
<body class="d-flex flex-column">
<!-- Navbar -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">Prime Dashboard</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item">
<a class="nav-link" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Customize</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Notification <sup class="badge bg-danger">1</sup> </a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle d-flex align-items-center" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
<img src="no-profile-donut.png" alt="Profile" class="profile-image me-2">
Dita Aji Pratama
</a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#">Profile</a></li>
<li><a class="dropdown-item" href="#">Settings</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#">Logout</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<!-- Sidebar -->
<div class="sidebar p-3" id="sidebar">
<!-- <h5>Sidebar</h5> -->
<ul class="nav flex-column pb-5">
<li class="nav-item">
<a class="nav-link text-white" href="#">Dashboard</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#">Users</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#">Items</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#">Analytics</a>
</li>
<li class="nav-item">
<a class="nav-link text-white" href="#">Reports</a>
</li>
<!-- Add more items to test scrolling -->
</ul>
</div>
<!-- Content -->
<div class="content flex-grow-1" id="content">
<h1>Main Content Area</h1>
<p>Welcome to the dashboard!</p>
<!-- Add more content here -->
</div>
<!-- Footer -->
<footer class="footer" id="footer">
<p>&copy; 2024 Dita Aji Pratama. All rights reserved.</p>
</footer>
<!-- Sidebar Toggle Button -->
<button class="sidebar-toggle" id="sidebarToggle">
&#9776;<span>Menu</span>
</button>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script>
document.getElementById('sidebarToggle').addEventListener('click', function() {
var sidebar = document.getElementById('sidebar');
var content = document.getElementById('content');
var footer = document.getElementById('footer');
if (window.innerWidth <= 768) {
sidebar.classList.toggle('show');
} else {
sidebar.classList.toggle('minimized');
content.classList.toggle('full-width');
footer.classList.toggle('full-width');
}
});
</script>
</body>
</html>

BIN
no-profile-donut.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 KiB

98
style.css Normal file
View File

@ -0,0 +1,98 @@
body {
min-height: 100vh;
}
.navbar {
z-index: 1030; /* Ensure the navbar is above other elements */
}
.sidebar {
height: calc(100vh - 56px); /* 56px is the height of the navbar */
position: fixed;
top: 56px; /* Offset by the navbar height */
left: 0;
width: 250px;
background-color: #343a40;
color: white;
z-index: 1020; /* Lower than navbar to stay behind it */
transition: transform 0.3s ease-in-out;
overflow-y: auto; /* Make sidebar scrollable */
}
.sidebar.minimized {
transform: translateX(-100%);
}
.content {
margin-left: 250px;
padding: 20px;
transition: margin-left 0.3s ease-in-out;
}
.content.full-width {
margin-left: 0;
}
.footer {
position: fixed;
bottom: 0;
width: calc(100% - 250px);
margin-left: 250px;
background-color: #f8f9fa;
padding: 10px;
text-align: center;
transition: margin-left 0.3s ease-in-out;
}
.footer.full-width {
width: 100%;
margin-left: 0;
}
.profile-image {
width: 30px;
height: 30px;
border-radius: 50%;
object-fit: cover;
}
.sidebar-toggle {
position: fixed;
bottom: 20px;
left: 20px;
background-color: #343a40;
color: white;
border: none;
width: 100px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
z-index: 1040; /* Above the sidebar and navbar */
padding: 5px;
border-radius: 8px; /* Rounded corners */
}
.sidebar-toggle span {
margin-left: 5px;
}
@media (max-width: 768px) {
.sidebar {
transform: translateX(-100%);
}
.sidebar.show {
transform: translateX(0);
}
.content {
margin-left: 0;
}
.footer {
width: 100%;
margin-left: 0;
}
}