Base app architecture:
Route groups for customer, staff and owner.
* Reusable design system with around 20 UI components.
* Complete Prisma schema.
* Authentication with email/password and Google.
* Role and permission model.
* Protected routes.
* Clean separation between features, services, components and shared utilities.
95 lines
5.0 KiB
HTML
Executable File
95 lines
5.0 KiB
HTML
Executable File
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<script>
|
|
window.FontAwesomeConfig = {
|
|
autoReplaceSvg: 'nest'
|
|
};
|
|
</script>
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/js/all.min.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
|
<title>Team Management — TrimTime Admin</title>
|
|
<script src="https://cdn.tailwindcss.com"></script>
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
|
<script>
|
|
tailwind.config = {
|
|
theme: {
|
|
extend: {
|
|
colors: { ink: '#111b15', stone: '#f4f6f4', surface: '#ffffff', muted: '#6c7870', line: '#e1e7e2', accent: '#10b981' },
|
|
fontFamily: { sans: ['Inter', 'sans-serif'] },
|
|
borderRadius: { jumbo: '1rem', tile: '0.75rem' }
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
</head>
|
|
<body class="bg-stone text-ink min-h-screen pb-32">
|
|
|
|
<header class="fixed top-0 left-0 right-0 z-50 px-6 py-6 bg-white/80 backdrop-blur-md border-b border-line flex items-center justify-between">
|
|
<h1 class="text-xl font-bold tracking-tight">Our Team</h1>
|
|
<button class="w-10 h-10 bg-ink text-white rounded-full flex items-center justify-center">
|
|
<i class="fa-solid fa-plus text-sm"></i>
|
|
</button>
|
|
</header>
|
|
|
|
<main class="pt-24 px-6 space-y-4">
|
|
<!-- Staff Member -->
|
|
<div class="bg-white p-5 rounded-jumbo border border-line flex items-center gap-4 shadow-sm group">
|
|
<img src="https://storage.googleapis.com/uxpilot-auth.appspot.com/avatars/avatar-2.jpg" class="w-14 h-14 rounded-full border border-line" alt="Marcus">
|
|
<div class="flex-1">
|
|
<h3 class="text-sm font-bold">Marcus Reed</h3>
|
|
<p class="text-[10px] text-accent font-bold uppercase tracking-widest mt-0.5">Master Barber • Active</p>
|
|
</div>
|
|
<button class="w-10 h-10 border border-line rounded-full flex items-center justify-center text-muted group-hover:text-ink">
|
|
<i class="fa-solid fa-chevron-right text-xs"></i>
|
|
</button>
|
|
</div>
|
|
|
|
<!-- Staff Member -->
|
|
<div class="bg-white p-5 rounded-jumbo border border-line flex items-center gap-4 shadow-sm group">
|
|
<img src="https://storage.googleapis.com/uxpilot-auth.appspot.com/avatars/avatar-3.jpg" class="w-14 h-14 rounded-full border border-line" alt="Leo">
|
|
<div class="flex-1">
|
|
<h3 class="text-sm font-bold">Leo Vance</h3>
|
|
<p class="text-[10px] text-accent font-bold uppercase tracking-widest mt-0.5">Senior Specialist • Active</p>
|
|
</div>
|
|
<button class="w-10 h-10 border border-line rounded-full flex items-center justify-center text-muted group-hover:text-ink">
|
|
<i class="fa-solid fa-chevron-right text-xs"></i>
|
|
</button>
|
|
</div>
|
|
|
|
<!-- Staff Member -->
|
|
<div class="bg-white p-5 rounded-jumbo border border-line flex items-center gap-4 shadow-sm group opacity-60">
|
|
<img src="https://storage.googleapis.com/uxpilot-auth.appspot.com/avatars/avatar-4.jpg" class="w-14 h-14 rounded-full border border-line grayscale" alt="Sasha">
|
|
<div class="flex-1">
|
|
<h3 class="text-sm font-bold">Sasha Gray</h3>
|
|
<p class="text-[10px] text-muted font-bold uppercase tracking-widest mt-0.5">Expert Stylist • On Break</p>
|
|
</div>
|
|
<button class="w-10 h-10 border border-line rounded-full flex items-center justify-center text-muted group-hover:text-ink">
|
|
<i class="fa-solid fa-chevron-right text-xs"></i>
|
|
</button>
|
|
</div>
|
|
</main>
|
|
|
|
<!-- Admin Navigation -->
|
|
<nav class="fixed bottom-0 left-0 right-0 z-50 bg-[#0c0c0c] text-gray-400 py-4 px-10 border-t border-white/5 flex items-center justify-between">
|
|
<a href="OwnerDashboard__mobile.html" class="flex flex-col items-center gap-1 hover:text-white transition-colors">
|
|
<i class="fa-solid fa-chart-line text-xl"></i>
|
|
<span class="text-[10px] font-medium">Dashboard</span>
|
|
</a>
|
|
<a href="OwnerStaff__mobile.html" class="flex flex-col items-center gap-1 text-white">
|
|
<i class="fa-solid fa-users text-xl"></i>
|
|
<span class="text-[10px] font-medium">Staff</span>
|
|
</a>
|
|
<a href="StaffCalendar__mobile.html" class="flex flex-col items-center gap-1 hover:text-white transition-colors">
|
|
<i class="fa-solid fa-calendar-days text-xl"></i>
|
|
<span class="text-[10px] font-medium">Calendar</span>
|
|
</a>
|
|
<a href="OwnerSettings__mobile.html" class="flex flex-col items-center gap-1 hover:text-white transition-colors">
|
|
<i class="fa-solid fa-gear text-xl"></i>
|
|
<span class="text-[10px] font-medium">Admin</span>
|
|
</a>
|
|
</nav>
|
|
|
|
</body>
|
|
</html> |