483 lines
16 KiB
HTML
483 lines
16 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="fr">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Aperonight Design System</title>
|
|
<link rel="stylesheet" href="aperonight_design_system.css">
|
|
<script src="https://unpkg.com/lucide@latest/dist/umd/lucide.min.js"></script>
|
|
<style>
|
|
/* Additional showcase styles */
|
|
.showcase-section {
|
|
padding: 3rem 0;
|
|
border-bottom: 1px solid var(--color-gray-200);
|
|
}
|
|
|
|
.showcase-grid {
|
|
display: grid;
|
|
gap: 2rem;
|
|
margin-top: 2rem;
|
|
}
|
|
|
|
.color-swatch {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 1rem;
|
|
padding: 1rem;
|
|
border-radius: var(--radius-lg);
|
|
border: 1px solid var(--color-gray-200);
|
|
}
|
|
|
|
.color-circle {
|
|
width: 3rem;
|
|
height: 3rem;
|
|
border-radius: 50%;
|
|
border: 2px solid var(--color-gray-300);
|
|
}
|
|
|
|
.component-demo {
|
|
padding: 2rem;
|
|
background: var(--color-gray-50);
|
|
border-radius: var(--radius-xl);
|
|
margin: 1rem 0;
|
|
}
|
|
|
|
.navbar {
|
|
background: var(--color-white);
|
|
padding: 1rem 0;
|
|
border-bottom: 1px solid var(--color-gray-200);
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 100;
|
|
}
|
|
|
|
.navbar-content {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.nav-links {
|
|
display: flex;
|
|
gap: 2rem;
|
|
list-style: none;
|
|
}
|
|
|
|
.nav-link {
|
|
color: var(--color-gray-600);
|
|
text-decoration: none;
|
|
font-weight: var(--font-medium);
|
|
transition: var(--transition-fast);
|
|
}
|
|
|
|
.nav-link:hover {
|
|
color: var(--color-purple-600);
|
|
}
|
|
|
|
.logo {
|
|
font-size: var(--text-xl);
|
|
font-weight: var(--font-bold);
|
|
color: var(--color-gray-900);
|
|
}
|
|
|
|
/* Fixed secondary button for light backgrounds */
|
|
.btn-secondary-alt {
|
|
background-color: transparent;
|
|
color: var(--color-gray-700);
|
|
border: 2px solid var(--color-gray-300);
|
|
}
|
|
|
|
.btn-secondary-alt:hover {
|
|
background-color: var(--color-gray-100);
|
|
color: var(--color-gray-900);
|
|
border-color: var(--color-gray-400);
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<!-- Navigation -->
|
|
<nav class="navbar">
|
|
<div class="container navbar-content">
|
|
<div class="logo">Aperonight Design System</div>
|
|
<ul class="nav-links">
|
|
<li><a href="#colors" class="nav-link">Couleurs</a></li>
|
|
<li><a href="#typography" class="nav-link">Typographie</a></li>
|
|
<li><a href="#buttons" class="nav-link">Boutons</a></li>
|
|
<li><a href="#cards" class="nav-link">Cartes</a></li>
|
|
<li><a href="#components" class="nav-link">Composants</a></li>
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
|
|
<!-- Hero Section -->
|
|
<section class="hero">
|
|
<div class="hero-content">
|
|
<div class="container">
|
|
<div class="text-center">
|
|
<h1 class="hero-title">
|
|
Système de Design
|
|
<span class="hero-accent">Aperonight</span>
|
|
</h1>
|
|
<p class="hero-subtitle">
|
|
Un système de design moderne et cohérent pour créer des expériences exceptionnelles dans le domaine des événements après-travail.
|
|
</p>
|
|
<div class="flex gap-4 justify-center">
|
|
<a href="#colors" class="btn btn-primary btn-lg">
|
|
<i data-lucide="palette" class="w-5 h-5"></i>
|
|
Explorer les Composants
|
|
</a>
|
|
<a href="#" class="btn btn-secondary btn-lg">
|
|
<i data-lucide="download" class="w-5 h-5"></i>
|
|
Télécharger
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Color Palette -->
|
|
<section id="colors" class="showcase-section">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Palette de Couleurs</h2>
|
|
<p class="section-description">
|
|
Les couleurs de base du système Aperonight, conçues pour transmettre professionnalisme et modernité.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="showcase-grid">
|
|
<div>
|
|
<h3 class="text-2xl font-semibold mb-4">Couleurs de Marque</h3>
|
|
<div class="grid grid-1 gap-4">
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #667eea;"></div>
|
|
<div>
|
|
<div class="font-semibold">Primary Blue</div>
|
|
<div class="text-sm text-gray-600">#667eea</div>
|
|
</div>
|
|
</div>
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #764ba2;"></div>
|
|
<div>
|
|
<div class="font-semibold">Secondary Purple</div>
|
|
<div class="text-sm text-gray-600">#764ba2</div>
|
|
</div>
|
|
</div>
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #facc15;"></div>
|
|
<div>
|
|
<div class="font-semibold">Accent Yellow</div>
|
|
<div class="text-sm text-gray-600">#facc15</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div>
|
|
<h3 class="text-2xl font-semibold mb-4">Couleurs Neutres</h3>
|
|
<div class="grid grid-1 gap-4">
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #ffffff; border: 2px solid #e5e7eb;"></div>
|
|
<div>
|
|
<div class="font-semibold">White</div>
|
|
<div class="text-sm text-gray-600">#ffffff</div>
|
|
</div>
|
|
</div>
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #f3f4f6;"></div>
|
|
<div>
|
|
<div class="font-semibold">Gray 100</div>
|
|
<div class="text-sm text-gray-600">#f3f4f6</div>
|
|
</div>
|
|
</div>
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #4b5563;"></div>
|
|
<div>
|
|
<div class="font-semibold">Gray 600</div>
|
|
<div class="text-sm text-gray-600">#4b5563</div>
|
|
</div>
|
|
</div>
|
|
<div class="color-swatch">
|
|
<div class="color-circle" style="background: #111827;"></div>
|
|
<div>
|
|
<div class="font-semibold">Gray 900</div>
|
|
<div class="text-sm text-gray-600">#111827</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Typography -->
|
|
<section id="typography" class="showcase-section bg-gray-50">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Typographie</h2>
|
|
<p class="section-description">
|
|
Une hiérarchie typographique claire et lisible pour tous les contenus.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="component-demo bg-white">
|
|
<h1 class="text-6xl font-bold mb-4">Hero Title - 60px Bold</h1>
|
|
<h2 class="text-4xl font-bold mb-4">Section Title - 36px Bold</h2>
|
|
<h3 class="text-2xl font-semibold mb-4">Card Title - 24px Semibold</h3>
|
|
<p class="text-xl mb-4">Large Text - 20px Regular</p>
|
|
<p class="text-base mb-4">Body Text - 16px Regular</p>
|
|
<p class="text-sm text-gray-600">Small Text - 14px Regular</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Buttons -->
|
|
<section id="buttons" class="showcase-section">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Système de Boutons</h2>
|
|
<p class="section-description">
|
|
Différents styles de boutons pour diverses actions et hiérarchies.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="component-demo">
|
|
<div class="grid grid-md-2 gap-8">
|
|
<div>
|
|
<h3 class="text-xl font-semibold mb-4">Styles Principaux</h3>
|
|
<div class="flex flex-col gap-4">
|
|
<button class="btn btn-primary">
|
|
<i data-lucide="calendar"></i>
|
|
Bouton Principal
|
|
</button>
|
|
<button class="btn btn-secondary-alt">
|
|
<i data-lucide="user-plus"></i>
|
|
Bouton Secondaire
|
|
</button>
|
|
<button class="btn btn-accent">
|
|
<i data-lucide="star"></i>
|
|
Bouton Accent
|
|
</button>
|
|
<button class="btn btn-dark">
|
|
<i data-lucide="arrow-right"></i>
|
|
Bouton Sombre
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div>
|
|
<h3 class="text-xl font-semibold mb-4">Tailles</h3>
|
|
<div class="flex flex-col gap-4">
|
|
<button class="btn btn-primary btn-sm">
|
|
<i data-lucide="eye"></i>
|
|
Petit Bouton
|
|
</button>
|
|
<button class="btn btn-primary">
|
|
<i data-lucide="calendar"></i>
|
|
Bouton Normal
|
|
</button>
|
|
<button class="btn btn-primary btn-lg">
|
|
<i data-lucide="search"></i>
|
|
Grand Bouton
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Cards -->
|
|
<section id="cards" class="showcase-section bg-gray-50">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Système de Cartes</h2>
|
|
<p class="section-description">
|
|
Cartes événements et composants modulaires.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="grid grid-md-2 lg:grid-lg-3 gap-8">
|
|
<!-- Event Card Example -->
|
|
<div class="card card-event">
|
|
<div class="card-event-image">
|
|
<img src="https://images.unsplash.com/photo-1511578314322-379afb476865?w=600&h=400&fit=crop" alt="Événement exemple">
|
|
<div class="card-event-badge">★ En vedette</div>
|
|
<div class="card-event-price">À partir de €25</div>
|
|
</div>
|
|
<div class="card-event-content">
|
|
<h3 class="card-event-title">AFTERWORK ROOFTOP</h3>
|
|
<div class="card-event-meta mb-4">
|
|
<div class="flex items-center justify-center gap-2 text-sm mb-2">
|
|
<i data-lucide="calendar" class="w-4 h-4"></i>
|
|
Vendredi 15 Décembre • 18:30
|
|
</div>
|
|
<div class="flex items-center justify-center gap-2 text-sm">
|
|
<i data-lucide="map-pin" class="w-4 h-4"></i>
|
|
Rooftop Bar Paris
|
|
</div>
|
|
</div>
|
|
<p class="card-event-description">
|
|
Rejoignez-nous pour un afterwork exclusif avec vue panoramique sur Paris.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Simple Card -->
|
|
<div class="card p-6">
|
|
<h3 class="text-xl font-semibold mb-2">Carte Simple</h3>
|
|
<p class="text-gray-600">
|
|
Une carte basique pour du contenu général avec hover effects.
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Metric Card -->
|
|
<div class="card p-6 text-center">
|
|
<div class="metric-number">2.5k+</div>
|
|
<div class="metric-label">Membres Actifs</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Components -->
|
|
<section id="components" class="showcase-section">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Composants UI</h2>
|
|
<p class="section-description">
|
|
Éléments d'interface réutilisables pour construire des expériences cohérentes.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="showcase-grid">
|
|
<!-- Hero Component -->
|
|
<div class="component-demo">
|
|
<h3 class="text-xl font-semibold mb-4">Section Hero</h3>
|
|
<div class="hero" style="min-height: 300px; border-radius: var(--radius-2xl);">
|
|
<div class="hero-content">
|
|
<div class="container text-center">
|
|
<h2 class="hero-title" style="font-size: var(--text-3xl);">
|
|
Titre <span class="hero-accent">Héro</span>
|
|
</h2>
|
|
<p class="hero-subtitle" style="font-size: var(--text-base); max-width: 24rem; margin: 0 auto var(--space-6);">
|
|
Description du héro avec gradient de fond
|
|
</p>
|
|
<button class="btn btn-primary">Action Principale</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Metrics Grid -->
|
|
<div class="component-demo">
|
|
<h3 class="text-xl font-semibold mb-4">Grille de Métriques</h3>
|
|
<div class="metrics-grid">
|
|
<div class="metric-item">
|
|
<div class="metric-number">50+</div>
|
|
<div class="metric-label">Événements</div>
|
|
</div>
|
|
<div class="metric-item">
|
|
<div class="metric-number">2.5k</div>
|
|
<div class="metric-label">Membres</div>
|
|
</div>
|
|
<div class="metric-item">
|
|
<div class="metric-number">12</div>
|
|
<div class="metric-label">Ce mois-ci</div>
|
|
</div>
|
|
<div class="metric-item">
|
|
<div class="metric-number">98%</div>
|
|
<div class="metric-label">Satisfaction</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Usage Guidelines -->
|
|
<section class="showcase-section bg-gray-50">
|
|
<div class="container">
|
|
<div class="section-header">
|
|
<h2 class="section-title">Guide d'Utilisation</h2>
|
|
<p class="section-description">
|
|
Principes et bonnes pratiques pour utiliser ce système de design.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="grid grid-md-2 gap-8">
|
|
<div class="card p-6">
|
|
<h3 class="text-xl font-semibold mb-4">✨ Principes de Design</h3>
|
|
<ul class="space-y-3 text-gray-600">
|
|
<li><strong>Cohérence</strong> - Utilisez les composants de manière uniforme</li>
|
|
<li><strong>Accessibilité</strong> - Respectez les contrastes et la lisibilité</li>
|
|
<li><strong>Responsive</strong> - Adaptez à tous les écrans</li>
|
|
<li><strong>Performance</strong> - Optimisez les animations et interactions</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="card p-6">
|
|
<h3 class="text-xl font-semibold mb-4">🎨 Utilisation des Couleurs</h3>
|
|
<ul class="space-y-3 text-gray-600">
|
|
<li><strong>Primary</strong> - Actions principales et navigation</li>
|
|
<li><strong>Accent</strong> - Éléments mis en évidence (badges, etc.)</li>
|
|
<li><strong>Gray</strong> - Textes, bordures et arrière-plans</li>
|
|
<li><strong>Purple</strong> - Métriques et éléments spéciaux</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Footer -->
|
|
<footer class="bg-gray-900 text-white py-16">
|
|
<div class="container text-center">
|
|
<h3 class="text-2xl font-bold mb-4">Système de Design Aperonight</h3>
|
|
<p class="text-gray-400 mb-8 max-w-2xl mx-auto">
|
|
Créé pour maintenir une expérience utilisateur cohérente et professionnelle à travers tous les points de contact Aperonight.
|
|
</p>
|
|
<div class="flex gap-4 justify-center">
|
|
<button class="btn btn-primary">
|
|
<i data-lucide="download"></i>
|
|
Télécharger le CSS
|
|
</button>
|
|
<button class="btn btn-secondary">
|
|
<i data-lucide="github"></i>
|
|
Voir sur GitHub
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
<script>
|
|
// Initialize Lucide icons
|
|
lucide.createIcons();
|
|
|
|
// Smooth scrolling for navigation links
|
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
|
anchor.addEventListener('click', function (e) {
|
|
e.preventDefault();
|
|
const target = document.querySelector(this.getAttribute('href'));
|
|
if (target) {
|
|
target.scrollIntoView({
|
|
behavior: 'smooth',
|
|
block: 'start'
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
// Add interaction effects
|
|
document.querySelectorAll('.card').forEach(card => {
|
|
card.addEventListener('mouseenter', function() {
|
|
this.style.transform = 'translateY(-4px)';
|
|
});
|
|
|
|
card.addEventListener('mouseleave', function() {
|
|
this.style.transform = 'translateY(0)';
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |