Files
tripz-llc/docs/stitch_screens/splash_screen.html
T

198 lines
8.6 KiB
HTML

<!-- Splash Screen - Updated Animation -->
<!DOCTYPE html>
<html class="light" dir="rtl" lang="ar"><head>
<meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport"/>
<title>Tripz - Splash</title>
<script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script>
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;600;700&amp;family=Inter:wght@500&amp;family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&amp;display=swap" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&amp;display=swap" rel="stylesheet"/>
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@100..900&amp;family=Inter:wght@100..900&amp;display=swap" rel="stylesheet"/>
<script id="tailwind-config">
tailwind.config = {
darkMode: "class",
theme: {
extend: {
"colors": {
"surface-raised-dark": "#2D2D2D",
"on-secondary": "#ffffff",
"on-primary-container": "#ffffff",
"secondary-fixed": "#dfe3e8",
"surface-dim": "#d8d9e3",
"surface-variant": "#e0e2ec",
"info": "#4285F4",
"warning": "#FBBC04",
"surface": "#f9f9ff",
"inverse-surface": "#2d3038",
"surface-bright": "#f9f9ff",
"tertiary-container": "#c55500",
"surface-container": "#ecedf7",
"on-tertiary-fixed-variant": "#783100",
"on-primary": "#ffffff",
"on-surface-variant": "#414754",
"surface-container-low": "#f2f3fd",
"on-secondary-container": "#5f6368",
"surface-tint": "#005bc0",
"error": "#ba1a1a",
"outline-variant": "#c1c6d6",
"secondary-container": "#dde0e6",
"outline": "#727785",
"on-tertiary-container": "#0e0200",
"background": "#f9f9ff",
"danger": "#EA4335",
"tertiary": "#9e4300",
"on-tertiary-fixed": "#341100",
"on-tertiary": "#ffffff",
"on-secondary-fixed-variant": "#43474c",
"on-background": "#191c23",
"on-primary-fixed-variant": "#004493",
"inverse-on-surface": "#eff0fa",
"tertiary-fixed-dim": "#ffb691",
"sidebar-dark": "#1A1A2E",
"error-container": "#ffdad6",
"surface-container-high": "#e6e8f2",
"inverse-primary": "#adc7ff",
"success": "#34A853",
"primary-container": "#1a73e8",
"primary": "#005bbf",
"on-error-container": "#93000a",
"secondary": "#5b5f64",
"on-surface": "#191c23",
"on-error": "#ffffff",
"on-primary-fixed": "#001a41",
"surface-container-highest": "#e0e2ec",
"on-secondary-fixed": "#181c20",
"secondary-fixed-dim": "#c3c7cc",
"primary-fixed-dim": "#adc7ff",
"primary-fixed": "#d8e2ff",
"surface-container-lowest": "#ffffff",
"tertiary-fixed": "#ffdbcb"
},
"borderRadius": {
"DEFAULT": "0.25rem",
"lg": "0.5rem",
"xl": "0.75rem",
"full": "9999px"
},
"spacing": {
"md": "12px",
"xxl": "48px",
"xl": "32px",
"sm": "8px",
"xs": "4px",
"base": "16px",
"lg": "24px"
},
"fontFamily": {
"body": ["IBM Plex Sans Arabic"],
"body-lg": ["IBM Plex Sans Arabic"],
"headline-lg-mobile": ["IBM Plex Sans Arabic"],
"label": ["Inter"],
"display": ["IBM Plex Sans Arabic"],
"title": ["IBM Plex Sans Arabic"],
"headline": ["IBM Plex Sans Arabic"],
"caption": ["IBM Plex Sans Arabic"]
},
"fontSize": {
"body": ["14px", {"lineHeight": "1.4", "fontWeight": "400"}],
"body-lg": ["16px", {"lineHeight": "1.4", "fontWeight": "400"}],
"headline-lg-mobile": ["28px", {"lineHeight": "1.2", "fontWeight": "700"}],
"label": ["12px", {"lineHeight": "1.2", "fontWeight": "500"}],
"display": ["32px", {"lineHeight": "1.2", "fontWeight": "700"}],
"title": ["20px", {"lineHeight": "1.2", "fontWeight": "600"}],
"headline": ["24px", {"lineHeight": "1.2", "fontWeight": "600"}],
"caption": ["12px", {"lineHeight": "1.2", "fontWeight": "400"}]
}
},
},
}
</script>
<style>
body {
margin: 0;
padding: 0;
overflow: hidden;
background-color: #ffffff;
height: 100vh;
width: 100vw;
display: flex;
align-items: center;
justify-content: center;
font-family: 'IBM Plex Sans Arabic', sans-serif;
}
.splash-container {
width: 390px;
height: 844px;
max-width: 100%;
max-height: 100%;
background-color: #ffffff;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
@keyframes revealAnimation {
0% {
opacity: 0;
transform: scale(0.8) translateY(10px);
filter: blur(8px);
}
100% {
opacity: 1;
transform: scale(1.0) translateY(0);
filter: blur(0);
}
}
.animate-splash {
animation: revealAnimation 1.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
.material-symbols-outlined {
font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
</style>
</head>
<body class="bg-white">
<!-- Mobile Splash Canvas (390x844 Reference) -->
<main class="splash-container">
<!-- Animated Logo Centerpiece -->
<div class="flex items-center justify-center animate-splash w-full px-xxl">
<img alt="Tripz Logo" class="w-full max-w-[240px] h-auto object-contain" src="https://lh3.googleusercontent.com/aida-public/AB6AXuAExRzebgvE1A_vRyvWI9vwUbV-49_ZAe0-djzocc9gddYtdfRxhkqkiZ61HkwvKFU9EVea1E7gfNq1HIZWIaiSBCEgTtJMaPccHMrCpRBF3yCl2P8LYWAh8CoIgOL2FqqNZzeClIMtCg5EH3zoPhdTho-OVf0zmI1a0ZsHWRe0B0EbZjDdAwK2KPsB5jAP1djzi8LlPVEU2V1IerOkXjo64GzMDWPD5WQv8ZqbNBfMCFrq1PJproDnOj2_oA9khgUhPsQqirxDSog"/>
</div>
<!-- Subtle loading indicator (Optional based on "minimal" but adds to UX) -->
<div class="absolute bottom-16 left-1/2 -translate-x-1/2 opacity-0 animate-[fadeIn_0.5s_ease_1s_forwards]">
<div class="flex gap-2">
<div class="w-1.5 h-1.5 rounded-full bg-primary/20 animate-bounce [animation-delay:-0.3s]"></div>
<div class="w-1.5 h-1.5 rounded-full bg-primary/20 animate-bounce [animation-delay:-0.15s]"></div>
<div class="w-1.5 h-1.5 rounded-full bg-primary/20 animate-bounce"></div>
</div>
</div>
</main>
<script>
// Micro-interaction: Dynamic background subtle shift on mouse move (desktop preview)
// Kept very subtle to maintain minimal white background directive
document.addEventListener('mousemove', (e) => {
const container = document.querySelector('.splash-container');
if (window.innerWidth > 600) {
const xAxis = (window.innerWidth / 2 - e.pageX) / 100;
const yAxis = (window.innerHeight / 2 - e.pageY) / 100;
const logo = container.querySelector('img');
logo.style.transform = `translate(${xAxis}px, ${yAxis}px)`;
}
});
// Simple Fade out simulation (for demonstration purposes if this was a real flow)
// window.addEventListener('load', () => {
// setTimeout(() => {
// console.log('Splash finished, navigating to home...');
// }, 2500);
// });
</script>
</body></html>
<!-- Onboarding 1 - Request with one tap -->