diff --git a/dev/brand-identity.png b/dev/brand-identity.png new file mode 100644 index 0000000..eaa5396 Binary files /dev/null and b/dev/brand-identity.png differ diff --git a/dev/brief.md b/dev/brief.md new file mode 100644 index 0000000..77ee00d --- /dev/null +++ b/dev/brief.md @@ -0,0 +1,559 @@ +# Kampüs Cadıları Website Design Brief +## Turkish Feminist Organization - Site Rebuild 2025 + +--- + +## Project Overview + +### Organization +**Kampüs Cadıları** (Campus Witches) is a Turkish feminist organization focused on campus activism, gender equality, and creating safe spaces for women and LGBTQ+ individuals in academic settings. The organization publishes feminist content, translations, and daily feminist news while building community through their platform. + +### Project Goals +- Rebuild the organization's web presence with a modern, accessible, and culturally resonant design +- Create a platform that empowers, informs, and mobilizes the feminist community +- Blend bold activism aesthetics with professional credibility and readability +- Support both Turkish and international audiences with multilingual content +- Facilitate content sharing, event coordination, and community building through compelling visual storytelling + +### Target Audience +- **Primary**: Turkish university students (18-25) interested in feminism and social justice +- **Secondary**: Activists, academics, and allies engaged in feminist discourse +- **Tertiary**: International audiences seeking Turkish feminist perspectives and translated content + +--- + +## Brand Identity + +### Logo & Symbol +The Kampüs Cadıları logo features a stylized witch figure positioned on a female symbol (♀) with a star accent, representing empowerment, magic, and feminist identity. The witch imagery reclaims historical persecution narratives while celebrating women's power. + +### Color Palette + +#### Primary Brand Colors +**Purple (Pantone 526 C)** +- CMYK: C67 / M98 / Y6 / K0 +- RGB: ~84, 25, 139 +- Hex: #54198B (approximate) +- Usage: Primary brand color, navigation, CTAs, headers + +**Red (Pantone 485 C)** +- CMYK: C5 / M100 / Y100 / K0 +- RGB: ~237, 28, 36 +- Hex: #ED1C24 (approximate) +- Usage: Accent color, alerts, important CTAs, emphasis elements + +#### Extended Palette +Based on existing style system, augmented with brand colors: + +**Neutrals** +- Background: `#0a0a0a` (near-black for hero sections) +- Surface: `#ffffff` (white for content areas) +- Text Primary: `#171717` (near-black) +- Text Secondary: `#737373` (gray) +- Border: `#e5e5e5` (light gray) + +**Purple Spectrum** (derived from Pantone 526 C) +- Primary: `#54198B` +- Light: `#8B4FB8` +- Lighter: `#B88BD4` +- Lightest: `#E8D4F0` + +**Red Spectrum** (derived from Pantone 485 C) +- Primary: `#ED1C24` +- Light: `#F25C61` +- Lighter: `#F89195` + +**Functional Colors** +- Success: `#22c55e` +- Warning: `#f59e0b` +- Error: `#ef4444` +- Info: `#3b82f6` + +### Typography + +#### Font Stack +**Primary**: Inter (body text, UI elements) +- Clean, modern, highly readable +- Excellent multilingual support for Turkish characters (ç, ğ, ı, ö, ş, ü) +- Variable font for performance + +**Display**: Oswald (headings, impact statements) +- Bold, condensed aesthetic for activist messaging +- Strong presence for hero sections and key statements +- Use sparingly for maximum impact + +**Backup Stack**: system-ui, -apple-system, sans-serif + +#### Type Scale +- Hero/H1: 56px / 3.5rem (Oswald, uppercase for impact) +- H2: 40px / 2.5rem (Oswald or Inter Bold) +- H3: 32px / 2rem (Inter Bold) +- H4: 24px / 1.5rem (Inter SemiBold) +- Body Large: 18px / 1.125rem (Inter Regular) +- Body: 16px / 1rem (Inter Regular) +- Body Small: 14px / 0.875rem (Inter Regular) +- Caption: 12px / 0.75rem (Inter Regular) + +#### Line Heights +- Headings: 1.2 +- Body text: 1.6 (for readability in article content) +- UI elements: 1.5 + +--- + +## Current Site Structure & Content DNA + +### Navigation Architecture +Based on current site analysis: + +**Primary Navigation** +1. **ANASAYFA** (Homepage) - Hero carousel + featured content +2. **CADI YAYINLARI** (Witch Publications) - Original content by the organization +3. **ÇEVİRİ** (Translations) - Translated feminist texts and articles +4. **FEMİNİST GÜNDEM** (Feminist Agenda) - Daily news and commentary +5. **TARIHÇEMIZ** (Our History) - About the organization and its journey + +**Utility Navigation** +- Search functionality (icon in header) +- Social media links (Instagram, Facebook, TikTok, YouTube) +- Language toggle (TR/EN consideration for rebuild) + +### Content Types + +#### Hero Section +- Large, impactful visual storytelling +- Rotating slider with multiple featured stories +- Dark background with high contrast text +- "KISA Bİ HİKAYE" (Short Story) as content marker +- Writer attribution with photo +- Strong CTA ("Read more") + +#### Article Cards +Current format to maintain: +- Article title +- Category tag (color-coded by content type) +- Author name ("By Kampüs Cadıları") +- Publication date +- Excerpt/preview text +- "Read More" CTA button (blue in current, to be adapted to purple) + +#### Content Categories +- **Kadınlardan Gelenler** (From Women) - Personal stories and testimonials +- **Feminist Gündem** (Feminist Agenda) - News and commentary +- **Çeviri** (Translations) - Translated works +- Custom categories as needed + +--- + +## Design System + +### Layout System + +#### Grid Structure +12-column grid system with Tailwind CSS spacing: +- Desktop: 1440px max-width container +- Tablet: 768px breakpoint +- Mobile: 375px base, full-width content + +#### Spacing Scale +``` +xs: 0.25rem / 4px +sm: 0.5rem / 8px +md: 1rem / 16px +lg: 1.5rem / 24px +xl: 2rem / 32px +2xl: 3rem / 48px +3xl: 4rem / 64px +4xl: 6rem / 96px +``` + +#### Section Spacing +- Section padding: `py-16 md:py-24` (64px mobile, 96px desktop) +- Component spacing: `space-y-8 md:space-y-12` +- Container padding: `px-4 md:px-6 lg:px-8` + +### Components + +#### Cards +```css +.article-card { + background: white; + border-radius: 12px; + padding: 24px; + box-shadow: 0 1px 3px rgba(0,0,0,0.1); + transition: all 0.3s ease; +} + +.article-card:hover { + box-shadow: 0 10px 40px rgba(84, 25, 139, 0.15); + transform: translateY(-4px); +} +``` + +#### Buttons + +**Primary CTA** (Purple brand color) +```css +.btn-primary { + background: #54198B; + color: white; + padding: 12px 32px; + border-radius: 999px; /* pill shape */ + font-weight: 600; + transition: all 0.3s ease; +} + +.btn-primary:hover { + background: #3D1265; + transform: scale(1.05); +} +``` + +**Secondary CTA** (Outlined) +```css +.btn-secondary { + background: transparent; + color: #54198B; + border: 2px solid #54198B; + padding: 12px 32px; + border-radius: 999px; + font-weight: 600; +} + +.btn-secondary:hover { + background: #54198B; + color: white; +} +``` + +**Load More** (Purple pill button) +```css +.btn-load-more { + background: #54198B; + color: white; + padding: 14px 40px; + border-radius: 999px; + font-weight: 600; + text-align: center; + display: inline-block; +} +``` + +#### Navigation + +**Header** +```css +.site-header { + background: white; + position: sticky; + top: 0; + z-index: 50; + border-bottom: 1px solid #e5e5e5; + backdrop-filter: blur(12px); + background: rgba(255,255,255,0.95); +} + +.nav-links { + display: flex; + gap: 32px; + font-weight: 500; + text-transform: uppercase; + letter-spacing: 0.5px; + font-size: 14px; +} + +.nav-link { + color: #171717; + transition: color 0.3s ease; +} + +.nav-link:hover, +.nav-link.active { + color: #54198B; +} +``` + +#### Hero Section + +**Full-bleed dark hero** +```css +.hero-section { + background: #0a0a0a; + min-height: 80vh; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + position: relative; + overflow: hidden; +} + +.hero-title { + font-family: 'Oswald', sans-serif; + font-size: clamp(32px, 5vw, 56px); + color: white; + text-transform: lowercase; /* matching "kelime kelime feminist bi kelime" */ + line-height: 1.2; + margin-bottom: 24px; +} + +.hero-subtitle { + font-size: 14px; + color: rgba(255,255,255,0.8); + text-transform: uppercase; + letter-spacing: 2px; + margin-bottom: 16px; +} +``` + +#### Category Tags +```css +.category-tag { + display: inline-block; + padding: 4px 12px; + border-radius: 4px; + font-size: 12px; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.5px; +} + +.category-tag.feminist-gundem { + background: #ED1C24; + color: white; +} + +.category-tag.ceviri { + background: #54198B; + color: white; +} + +.category-tag.kadinlardan-gelenler { + background: #B88BD4; + color: #3D1265; +} +``` + +### Animations + +#### Fade In +```css +@keyframes fadeIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} + +.fade-in { + animation: fadeIn 0.6s ease-out; +} +``` + +#### Slide In +```css +@keyframes slideIn { + from { + opacity: 0; + transform: translateY(20px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +.slide-in { + animation: slideIn 0.8s ease-out; +} +``` + +#### Stagger Children +```css +.stagger-children > * { + opacity: 0; + animation: slideIn 0.8s ease-out forwards; +} + +.stagger-children > *:nth-child(1) { animation-delay: 0.1s; } +.stagger-children > *:nth-child(2) { animation-delay: 0.2s; } +.stagger-children > *:nth-child(3) { animation-delay: 0.3s; } +``` + +### Visual Effects + +#### Shadows +```css +--shadow-sm: 0 1px 2px rgba(0,0,0,0.05); +--shadow-md: 0 4px 6px rgba(0,0,0,0.1); +--shadow-lg: 0 10px 15px rgba(0,0,0,0.1); +--shadow-xl: 0 20px 25px rgba(0,0,0,0.15); +--shadow-purple: 0 10px 40px rgba(84, 25, 139, 0.15); /* brand shadow */ +``` + +#### Backdrop Blur +```css +.backdrop-blur { + backdrop-filter: blur(12px); + background: rgba(255,255,255,0.95); +} + +.backdrop-blur-dark { + backdrop-filter: blur(12px); + background: rgba(10,10,10,0.9); +} +``` + +--- + +## Page Templates + +### Homepage +1. **Sticky Header** - Logo, navigation, search +2. **Hero Carousel** - Full-width rotating featured stories with dark background +3. **Welcome Section** - "KIZKARDEŞİM, SİTEMİZDE SENİ BEKLEYENLER..." (Sister, waiting for you on our site) +4. **Featured Articles Grid** - 3-column card layout +5. **Load More Button** - Purple pill CTA +6. **Footer** - Social links, copyright, contact info + +### Article/Blog Template +1. **Header** - Category tag, title, author, date +2. **Featured Image** - Full-width hero +3. **Article Content** - Rich text with proper typography +4. **Share Tools** - Social sharing buttons +5. **Related Articles** - Card grid of similar content +6. **Comments/Discussion** (if applicable) + +### Category/Archive Template +1. **Category Hero** - Brief description of category purpose +2. **Filter/Sort Options** - Date, relevance, author +3. **Article Grid** - Masonry or standard grid layout +4. **Pagination** - Load more or numbered pagination + +### About/History Page +1. **Hero Section** - Mission statement +2. **Timeline** - Visual history of the organization +3. **Team/Contributors** (if applicable) +4. **Values & Principles** - What Kampüs Cadıları stands for +5. **Get Involved** - CTA for participation + +--- + +## Content Strategy + +### Voice & Tone +- **Empowering** - Lift up voices, celebrate strength +- **Direct** - Clear, accessible language avoiding academic jargon where possible +- **Activist** - Unapologetically feminist, calling for action and change +- **Inclusive** - Welcoming to all who support gender equality +- **Authentic** - Genuine stories and perspectives from the community + +### Content Pillars +1. **Original Commentary** (Cadı Yayınları) - Organization's voice on current issues +2. **Translation** (Çeviri) - Making global feminist discourse accessible in Turkish +3. **Daily News** (Feminist Gündem) - Curated news with feminist analysis +4. **Community Stories** (Kadınlardan Gelenler) - Personal narratives from the community +5. **Educational Resources** - Guides, explainers, and learning materials + +### Multilingual Considerations +- **Primary Language**: Turkish +- **Secondary Language**: English (for select articles and UI) +- Language toggle in header +- Ensure proper Turkish character support (ç, ğ, ı, ö, ş, ü, Ç, Ğ, İ, Ö, Ş, Ü) +- RTL text support not needed (Turkish is LTR) + +--- + +## Accessibility Requirements + +### WCAG 2.1 AA Compliance +- Color contrast ratios minimum 4.5:1 for normal text +- All interactive elements keyboard accessible +- Proper heading hierarchy (h1 → h2 → h3, etc.) +- Alt text for all images +- ARIA labels for icon-only buttons +- Focus indicators visible and clear + +### Performance +- Core Web Vitals optimization + - LCP (Largest Contentful Paint) < 2.5s + - FID (First Input Delay) < 100ms + - CLS (Cumulative Layout Shift) < 0.1 +- Image optimization (WebP, lazy loading) +- Minimal JavaScript for fast page loads +- Progressive enhancement approach + +### Responsive Design +- Mobile-first approach +- Breakpoints: 375px (mobile), 768px (tablet), 1024px (desktop), 1440px (wide) +- Touch-friendly targets (minimum 44x44px) +- Readable text at all sizes (minimum 16px body text on mobile) + +--- + +### SEO & Analytics +- Semantic HTML structure +- Open Graph tags for social sharing +- JSON-LD structured data +- Google Analytics or privacy-focused alternative (Plausible) +- Search Console integration +- Sitemap generation + +--- + +## Design Principles + +### 1. Bold but Readable +Strike a balance between activist impact and content accessibility. Use dark hero sections for visual drama, but ensure article content is highly readable with excellent typography. + +### 2. Color as Meaning +Use the purple/red brand colors strategically: +- Purple for navigation, primary CTAs, and organizational identity +- Red for urgent actions, alerts, and emphasis +- Neutrals for reading comfort and professionalism + +### 3. Progressive Enhancement +Build a fast, accessible baseline that works everywhere, then enhance with animations and interactions for capable browsers. + +### 4. Content-First +The design should elevate and showcase the powerful stories and analysis the organization produces. Never let design obscure or compete with content. + +### 5. Community-Centered +Create spaces for community voices, user-generated content, and participation. The site should feel like a collective project, not a one-way broadcast. + +--- + +## Success Metrics + +### Engagement +- Time on page (target: 3+ minutes for articles) +- Pages per session (target: 3+) +- Bounce rate (target: <60%) +- Returning visitor rate (target: 30%+) + +### Growth +- Monthly unique visitors +- Social shares per article +- Newsletter signups +- Community contributions (if applicable) + +### Performance +- Mobile page load time (target: <3s) +- Desktop page load time (target: <2s) +- Core Web Vitals passing scores +- 95%+ accessibility audit score + +--- + +## Brand Essence + +Kampüs Cadıları reclaims the witch as a symbol of feminine power, wisdom, and resistance. The design should embody this spirit: bold, unapologetic, magical, and transformative. The purple witch on the female symbol isn't just a logo—it's a statement of identity, a rallying symbol for feminist activism on Turkish campuses and beyond. + +The website should feel like a gathering place, a library of resistance, and a megaphone for change—all while being beautiful, accessible, and technically excellent. + +--- + +**Design Brief Version**: 1.0 +**Last Updated**: December 27, 2025 diff --git a/dev/visual-design-analysis.md b/dev/visual-design-analysis.md new file mode 100644 index 0000000..6ed4269 --- /dev/null +++ b/dev/visual-design-analysis.md @@ -0,0 +1,237 @@ + +## Color Palette + +## Typography + +### Font Families + +#### Primary Fonts +- **Inter** - Body text, primary sans-serif (weights: 300, 400, 500, 600) +- **Oswald** - Headlines, brand font, uppercase display text (weights: 400, 500, 600) + +#### Extended Font Library (Available but not actively used) +The page loads 20+ Google Fonts for maximum flexibility: +- Sans-serif: Geist, Roboto, Montserrat, Poppins, Bricolage Grotesque, Plus Jakarta Sans, Manrope, Space Grotesk, Work Sans, DM Sans, Quicksand, Nunito, Google Sans Flex +- Serif: Playfair Display, Instrument Serif, Merriweather, PT Serif, Newsreader +- Monospace: Geist Mono, Space Mono + +### Type Scale +- **7xl-8xl** (`4.5rem` - `6rem`) - Hero headlines ("PLAY WONDER") +- **4xl-5xl** (`2.25rem` - `3rem`) - Section headings +- **3xl-4xl** (`1.875rem` - `2.25rem`) - Card titles, subsection headings +- **2xl** (`1.5rem`) - Secondary headings +- **xl** (`1.25rem`) - Large body text +- **lg** (`1.125rem`) - Emphasized body text +- **base** (`1rem`) - Standard body text +- **sm** (`0.875rem`) - Small text, labels +- **xs** (`0.75rem`) - Micro copy, metadata + +### Font Weights +- **Light (300)** - Subtle descriptive text +- **Regular (400)** - Body text +- **Medium (500)** - Emphasized text +- **Semibold (600)** - Strong emphasis +- **Bold (700)** - Headlines, CTAs + +### Typography Utilities +- **Tracking**: `tracking-tighter` (-0.05em), `tracking-tight` (-0.025em), `tracking-wide` (0.025em), `tracking-wider` (0.05em), `tracking-widest` (0.1em) +- **Leading**: `leading-tight` (1.25), `leading-[1.1]`, `leading-[0.85]`, `leading-none` (1), `leading-relaxed` (1.625) +- **Transform**: `uppercase` for labels and category tags + +## Layout System + +### Grid Structure +The page uses a 12-column responsive grid: +- **Hero Section**: `lg:grid-cols-12` split into 4-8 columns (sidebar + main visual) +- **Content Sections**: `md:grid-cols-2`, `lg:grid-cols-3`, `lg:grid-cols-4` +- **Bento Grid**: Asymmetric layout with `col-span-1`, `col-span-2`, `row-span-2` variations + +### Spacing Scale (Tailwind) +- **Small**: `gap-1` (0.25rem), `gap-2` (0.5rem), `gap-3` (0.75rem) +- **Medium**: `gap-4` (1rem), `gap-6` (1.5rem), `gap-8` (2rem) +- **Large**: `gap-12` (3rem), `gap-16` (4rem) +- **Padding**: Consistent use of `p-8`, `p-12`, `px-6`, `py-24` for sections + +### Container +- **Max Width**: `max-w-7xl` (80rem) centered with `mx-auto` +- **Horizontal Padding**: `px-6` mobile, `lg:px-12` desktop + +## Design Patterns + +### Navigation +- **Hamburger Menu**: Minimalist top-left icon with dropdown +- **Dropdown Menu**: Rounded corners (`rounded-2xl`), shadow (`shadow-[0_8px_30px_rgb(0,0,0,0.12)]`), clean white card +- **Menu Items**: Hover states with `hover:bg-blue-50/50`, icon + text layout + +### Cards & Components + +### Buttons + +#### Primary CTA +- Background: `bg-blue-700/50`, `hover:bg-blue-700` +- Shape: `rounded-full`, `px-6 py-3` +- Text: Uppercase, `tracking-wide`, white with arrow icon + +#### Icon Buttons +- Shape: `rounded-full`, `w-10 h-10` +- Border: `border border-blue-400` +- Hover: `hover:bg-blue-500` + +#### Secondary Links +- Style: Underlined text with `border-b` +- Hover: `hover:border-white`, `hover:opacity-75` + +### Decorative Elements + +#### Abstract Shapes +- **Blurred Blobs**: `blur-3xl`, `opacity-20`, `mix-blend-multiply`, animated +- **Background Patterns**: Radial gradient dots (`bg-[radial-gradient(circle,transparent_20%,#eff6ff_20%)]`) +- **Typography Overlay**: Giant "GAME" text with `mix-blend-multiply`, `opacity-10` + +#### Borders & Dividers +- **Subtle Lines**: `h-0.5 w-12`, `h-px`, `w-px` for accent lines +- **Border Colors**: `border-gray-100`, `border-blue-500/20`, `border-white/30` (with transparency) + +## Animations + +### Keyframe Animations +```css +@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } +@keyframes slideIn { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } +@keyframes blurIn { from { opacity: 0; filter: blur(12px); } to { opacity: 1; filter: blur(0); } } +``` + +### Animation Classes +- **Fade In**: `animate-fade-in` - 0.8s ease-out +- **Slide In**: `animate-slide-in` - 0.8s cubic-bezier(0.16, 1, 0.3, 1) +- **Blur In**: `animate-blur-in` - 1s ease-out + +### Delay Classes +- `delay-75` (75ms), `delay-100` (100ms), `delay-150` (150ms) +- `delay-200` (200ms), `delay-300` (300ms), `delay-500` (500ms), `delay-700` (700ms) + +### Transition Effects +- **All Properties**: `transition-all duration-500 ease-out` +- **Colors**: `transition-colors` +- **Transform**: `transition-transform` +- **Opacity**: `transition-opacity` + +### Hover Animations +- **Scale**: `hover:scale-110`, `group-hover:scale-105` +- **Translate**: `group-hover:translate-x-1` +- **Color Shift**: Text and background color changes on hover + +## Visual Effects + +### Shadows +- **Card Shadows**: `shadow-xl`, `shadow-2xl` +- **Custom Shadow**: `shadow-[0_8px_30px_rgb(0,0,0,0.12)]` +- **Inner Shadow**: `shadow-inner` for recessed elements + +### Backdrop Effects +- **Blur**: `backdrop-blur-sm`, `backdrop-blur-md` for glass morphism +- **Background Opacity**: `bg-white/40`, `bg-white/50`, `bg-gray-200/30` + +### Blend Modes +- **Multiply**: `mix-blend-multiply` for layered effects +- **Opacity Variations**: `opacity-10`, `opacity-20`, `opacity-50`, `opacity-80` + +### Border Radius +- **Small**: `rounded-md` (0.375rem), `rounded-lg` (0.5rem), `rounded-xl` (0.75rem) +- **Large**: `rounded-2xl` (1rem), `rounded-3xl` (1.5rem) +- **Custom**: `rounded-[2.5rem]`, `rounded-[3rem]` +- **Full**: `rounded-full` for circles and pills + +## Iconography + +### Icon Library +**Lucide Icons** - Consistent stroke-based icon system +- Stroke width: `1.5` +- Common sizes: `w-4 h-4` (small), `w-5 h-5` (medium), `w-6 h-6` (large), `w-8 h-8` (XL) + +### Icon Categories +- **Navigation**: menu, arrow-left, arrow-right, home +- **Gaming**: gamepad-2, zap, shapes, rocket, sword, shield +- **Shopping**: shopping-bag +- **UI**: settings, trophy, crown, layers + +## Section Breakdowns + +### 1. Hero Section +- **Layout**: Split-screen (4-8 column grid) +- **Left**: White sidebar with navigation, headline, category selector +- **Right**: Slate-50 background with abstract shapes and background image +- **Typography Overlay**: Massive "GAME" text at `text-[40rem]` +- **Animation**: Staggered fade-in and slide-in effects + +### 2. Section 2 +- **Background**: `bg-blue-600` +- **Container**: `bg-blue-700`, rounded top corners +- **Layout**: Asymmetric grid - 1 large (2x2), 4 medium (1x1) +- **Featured Card**: gradient background, icon, title, CTA +- **Image Cards**: Full-bleed background images with text overlay + +### 3. Featured Categories +- **Background**: `bg-gray-700` with animated gradient blobs +- **Cards**: Icon + text, hover scale effect +- **Decorative**: Purple and blue blurred circles with `mix-blend-multiply` + +### 4. Section 4 +- **Layout**: 1-3 column split (text + logo grid) +- **Logo Grid**: 4x2 grid with borders, hover states +- **Style**: Icons as placeholder logos, consistent spacing with gaps + +### 5. Section 5 +- **Layout**: 2-column (image + text) +- **Left**: Postage stamp effect with radial gradient pattern +- **Right**: `bg-blue-700` with metadata, title, navigation dots + +## Responsive Behavior + +### Breakpoints +- **Mobile**: Default styles (< 768px) +- **Tablet**: `md:` prefix (≥ 768px) +- **Desktop**: `lg:` prefix (≥ 1024px) + +### Mobile Adaptations +- Single column layouts (`grid-cols-1`) +- Smaller padding (`p-8` → `lg:p-12`) +- Reduced text sizes (`text-7xl` → `lg:text-8xl`) +- Stacked flex layouts (`flex-col` → `md:flex-row`) + +## Accessibility Features + +### Text Contrast +- White text on blue 600+ backgrounds +- Dark slate text on white/light backgrounds +- Semi-transparent overlays on images ensure readability + +### Interactive Elements +- Focus states: `focus:outline-none focus:ring-2 focus:ring-blue-100` +- Cursor indicators: `cursor-pointer` on interactive elements +- Clear hover states with color/opacity changes + +### Selection Styling +```css +selection:bg-pink-500 selection:text-white +``` + +## Design Philosophy + +The design follows modern web trends: +1. **Bold Typography**: Large, tight headlines with uppercase treatments +2. **Vibrant Colors**: Saturated blues and oranges with high contrast +3. **Smooth Animations**: Subtle entrance effects and hover states +4. **Card-Based Layout**: Bento grid asymmetry creates visual interest +5. **Glass Morphism**: Backdrop blur and transparency effects +6. **3D Touches**: Phone mockup rotation, layered shadows +7. **Minimalist UI**: Clean icons, simple buttons, generous whitespace + +## Technical Implementation + +- **Framework**: Astro with Tailwind CSS +- **CDN Resources**: Tailwind CDN, Google Fonts CDN, Lucide icons CDN +- **Image Hosting**: Supabase storage for background images +- **Optimization**: AVIF/WebP images, lazy loading implied +- **Responsive Images**: Multiple resolutions (800w, 1600w) + diff --git a/src/pages/index.astro b/src/pages/index.astro index e526733..8bae739 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -4,13 +4,692 @@ import { SITE_TITLE, SITE_DESCRIPTION } from '../consts'; --- -

{SITE_TITLE}

-

{SITE_DESCRIPTION}

- -
+ + +Play Wonder - iPhone Games + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + +
+

+ Play +
+ Wonder +

+
+ +
+
+ + Top iPhone Games +
+ +
+ + + Brain Teasers + + +
+
+
+ + +
+ +
+ + + + +
+ + +
+ + GAME + +
+
+
+ + +
+
+
+
+ + + App Store Hits + +
+

+ Trending Games +

+
+ + +
+
+ + +
+ +
+
+
+
+ +
+

+ Cyber Quest 3D +

+

Immersive AR RPG

+
+ + Play Now + + +
+ +
+
+ + +
+
+
+
+
+ TURBO +
+
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ + +
+
+ +
+
+ + Editor's Choice + +

+ Galaxy Raider X +

+ + Get App + + +
+
+ + +
+ + +
+ + Fantasy RPG + +

+ Kingdom Defense +

+ + Play Free + + +
+
+ + +
+
+
+
+
+
+ +
+
+ FASTLANE +
+
+
+
+

+ Asphalt Drifters +

+
+
+ + +
+
+ + Building Blocks + +

+ Block Master Pro +

+
+
+
+
+
+
+ +
+
+ +
+ +
+
+ + Discover More + +

+ Featured Categories +

+

+ Discover the most addictive iPhone games designed to spark + creativity, logic, and endless hours of fun. +

+
+ + View All Genres + + +
+ + + + + + +
+
+ + +
+
+
+

+ Top Studios +

+

+ Featuring hits from the world's best mobile game developers. +

+ + See All Studios + + +
+ +
+ +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+ + +
+
+
+
+ +
+ +
+
+
+
+
+ +
+
+
+
+
+ + +
+
+ + +
+ +
+ + Ages 3-5 + + + + Best Sellers + +
+ +

+ Game of the Year: Unwrap the Magic +

+ +
+ + + + +
+ + + Read Guide + + +
+
+
+
+
+ + + + + + + + +