Skip to content

lord-Ace/Brew-Bytes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Brew & Bytes CafΓ© - Official Website

A fully responsive, accessibility-first website for Brew & Bytes CafΓ©, a modern coffee shop catering to developers, designers, and digital creators.

πŸ“‹ Project Overview

Brew & Bytes CafΓ© is a complete two-page website featuring a home page and detailed menu page. The site is built with modern web standards, semantic HTML5, responsive CSS, and vanilla JavaScript, prioritizing accessibility, performance, and user experience across all devices.

🎯 Features

Core Functionality

  • Fully Responsive Design: Seamlessly adapts from mobile (320px) to large desktop (1400px+)
  • Fixed Navigation Header: Persistent navigation with smooth scroll behavior
  • Mobile-First Architecture: Optimized for touch devices with hamburger menu
  • Accessible Design: WCAG-compliant with semantic HTML and keyboard navigation
  • Interactive Elements: Smooth transitions, hover states, and user feedback
  • Performance Optimized: Minimal dependencies, fast load times, efficient CSS

Home Page Features

  • Hero section with call-to-action
  • Featured menu preview with product cards
  • Why Choose Us section with feature highlights
  • Newsletter subscription form
  • Special offers and promotions
  • Comprehensive footer with contact information

Menu Page Features

  • Full product catalog with 22 menu items
  • Category filtering system (All Items, Hot Coffee, Cold Drinks, Espresso, Pastries, Breakfast)
  • Special offers section with promotional cards
  • Product cards with:
    • High-quality placeholder images
    • Pricing information
    • Detailed descriptions
    • Caffeine content and dietary information
    • Add to Order functionality with visual confirmation
    • Details modal trigger
  • Grid layout that adapts from 1 to 4 columns based on screen size

πŸ› οΈ Technology Stack

Frontend

  • HTML5: Semantic markup for accessibility and SEO
  • CSS3: Modern layout techniques (Flexbox, Grid, clamp() for fluid typography)
  • Vanilla JavaScript: No frameworks or libraries, pure ES5+ JavaScript

Design Principles

  • Mobile-first responsive design
  • Progressive enhancement
  • Graceful degradation
  • Accessibility-first approach
  • Performance optimization

🎨 Design System

Color Palette

Primary Brown:    #6B4423
Dark Brown:       #3E2723
Accent Orange:    #FF6F00
Burnt Orange:     #E65100
Light Background: #f5f5f5
Card Background:  #ffffff
Text Dark:        #3E2723
Text Medium:      #666666
Text Light:       #999999
Footer Dark:      #212121

Typography

  • Font Stack: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif
  • Fluid Typography: CSS clamp() for responsive text sizing
  • Font Weights:
    • Regular (400): Body text
    • Semi-bold (600): Buttons, card titles, tab labels
    • Bold (700): Headings, prices, logos

Spacing System

  • Base unit: 1rem (16px)
  • Consistent use of rem units for scalability
  • Fluid spacing using clamp() where appropriate
  • Vertical rhythm maintained throughout

Border Radius

  • Small elements (badges): 15px
  • Medium elements (buttons): 8px
  • Large elements (cards, sections): 12px
  • Pill shapes (tabs): 25px

Shadows

  • Subtle elevation: 0 2px 8px rgba(0, 0, 0, 0.1)
  • Medium elevation: 0 4px 16px rgba(0, 0, 0, 0.15)
  • Header shadow: 0 2px 10px rgba(0, 0, 0, 0.1)

πŸ“± Responsive Breakpoints

Mobile (Default)

  • Range: 320px - 767px
  • Layout: Single column, stacked navigation
  • Navigation: Hamburger menu with slide-down animation
  • Cards: 1 column (or 2 on wider phones)
  • Typography: Minimum clamp() values

Tablet

  • Range: 768px - 1024px
  • Layout: 2-3 column grids
  • Navigation: Horizontal menu bar
  • Cards: 2-3 columns depending on content
  • Typography: Mid-range clamp() values

Desktop

  • Range: 1025px - 1399px
  • Layout: 3 column grids, centered max-width container
  • Navigation: Full horizontal menu with optimal spacing
  • Cards: 3 columns
  • Typography: Maximum clamp() values

Large Desktop

  • Range: 1400px+
  • Layout: 4 column grids
  • Cards: Fixed 4-column layout
  • Container: 1200px max-width, centered

🎭 Interactive Elements

Navigation

  • Desktop: Horizontal menu with hover color transitions (0.3s)
  • Mobile: Hamburger menu that slides down with max-height animation
  • States: Default, hover, focus, active
  • Color Change: White β†’ Orange (#FF6F00) on hover
  • Smooth Scroll: Anchor links trigger smooth scrolling to sections

Buttons

Primary Button (Add to Order)

  • Default: Orange background (#FF6F00), white text
  • Hover: Darker orange (#E65100)
  • Click: Changes to green (#4CAF50) with "βœ“ Added!" text for 1.5 seconds
  • Transition: 0.3s for all states

Secondary Button (Details)

  • Default: White background, brown text (#6B4423), 2px brown border
  • Hover: Brown background, white text (inverted)
  • Transition: 0.3s for all states

Category Tabs

  • Default: White background, brown border and text
  • Hover: Inverted (brown background, white text)
  • Active: Permanently inverted state
  • Transition: 0.3s smooth
  • Behavior: Clicking tabs changes active state

Cards (Menu Items)

  • Default: Subtle shadow, white background
  • Hover: Translates upward 5px, enhanced shadow
  • Transition: 0.3s for transform and shadow
  • Content: Flexbox layout ensuring consistent heights

β™Ώ Accessibility Features

Semantic HTML

  • Proper use of <header>, <nav>, <main>, <section>, <footer>
  • Heading hierarchy (h1, h2, h3) for screen readers
  • Lists (<ul>, <li>) for navigation and grouped content
  • Button elements for interactive actions

Keyboard Navigation

  • All interactive elements are keyboard accessible
  • Tab order follows logical reading order
  • Focus indicators (browser defaults respected)
  • Enter/Space activation for buttons

Screen Reader Support

  • Descriptive link text (no "click here")
  • Alt attributes on images (when real images used)
  • ARIA labels on menu toggle button
  • Semantic structure for content hierarchy

Color Contrast

  • Text contrast ratios meet WCAG AA standards
  • Primary text: #3E2723 on #f5f5f5 (sufficient contrast)
  • White text on orange/brown gradients (tested for readability)
  • Link colors provide sufficient contrast in all states

Touch Targets

  • Minimum 44x44px touch targets on mobile
  • Adequate spacing between interactive elements
  • Large, easy-to-tap buttons and links

πŸš€ Performance Optimizations

CSS

  • Single embedded stylesheet (no external HTTP requests)
  • Efficient selectors (class-based, low specificity)
  • Hardware-accelerated transforms (translateY)
  • Minimal use of expensive properties (box-shadow optimized)

JavaScript

  • Minimal DOM manipulation
  • Event delegation where appropriate
  • No external library dependencies
  • Efficient event handlers

Images

  • SVG gradients for placeholder backgrounds (scalable, small file size)
  • Emoji icons (no image requests)
  • Future-ready for lazy loading implementation

Loading

  • Above-the-fold content prioritized
  • Inline CSS and JS (no render-blocking resources)
  • Efficient grid layouts (CSS Grid auto-fill)

πŸ“‚ File Structure

brew-and-bytes/
β”‚
β”œβ”€β”€ index.html              # Home page (future implementation)
β”œβ”€β”€ menu.html               # Menu page (fully implemented)
└── README.md               # This file

πŸ”§ Installation & Usage

Running Locally

  1. Clone or download the repository
  2. Open menu.html directly in a modern web browser
  3. No build process or server required

Browser Support

  • Chrome: 90+
  • Firefox: 88+
  • Safari: 14+
  • Edge: 90+
  • Mobile Safari: iOS 14+
  • Chrome Mobile: Latest

Requirements

  • No dependencies or package installations needed
  • Modern browser with CSS Grid and Flexbox support
  • JavaScript enabled for interactive features

πŸŽͺ Component Inventory

Header Component

  • Fixed positioning with z-index layering
  • Responsive logo with fluid sizing
  • Navigation menu (horizontal desktop, vertical mobile)
  • Hamburger toggle button (mobile only)
  • Gradient background with shadow

Page Header Banner

  • Full-width gradient background
  • Centered content with fluid padding
  • Large heading with descriptive tagline
  • Maximum width constraint on tagline

Special Offers Section

  • Vibrant gradient background
  • 3-column responsive grid (stacks on mobile)
  • Semi-transparent frosted glass cards
  • Emoji-enhanced headings

Category Tabs

  • Horizontal scrolling on mobile (overflow-x)
  • Custom scrollbar styling
  • 6 category options
  • Active state management
  • Pill-shaped button design

Menu Item Card

  • Gradient placeholder image area
  • Optional badge overlay (Popular, New, Fresh Daily, Strong)
  • Structured content area:
    • Item name and price header
    • Description paragraph
    • Metadata tags with emojis
    • Dual action buttons
  • Consistent height with flexbox
  • Hover elevation effect

Footer Component

  • Dark background (#212121)
  • 4-column responsive grid (stacks on mobile)
  • Organized sections:
    • About
    • Quick Links
    • Connect (Social)
    • Contact Information
  • Copyright bar with top border

πŸ“Š Content Structure

Menu Categories & Items

Hot Coffee (4 items)

  1. Classic Drip Coffee - $2.50 (Popular)
  2. Pour Over - $4.50
  3. French Press - $4.00
  4. CafΓ© Au Lait - $3.75 (New)

Espresso Drinks (6 items)

  1. Developer's Latte - $4.75 (Popular)
  2. Cappuccino - $4.25
  3. Americano - $3.50
  4. Flat White - $4.50
  5. Macchiato - $3.75 (Strong)
  6. Mocha - $5.25

Cold Drinks (4 items)

  1. Coder's Cold Brew - $5.25 (Popular)
  2. Iced Latte - $4.75
  3. Nitro Cold Brew - $6.00 (New)
  4. Iced Americano - $3.75

Pastries & Treats (4 items)

  1. Butter Croissant - $3.50 (Fresh Daily)
  2. Chocolate Chip Cookie - $2.75
  3. Blueberry Muffin - $3.25
  4. Lemon Loaf - $4.00 (Popular)

Breakfast (4 items)

  1. Bacon & Egg Sandwich - $6.50 (Popular)
  2. Avocado Toast - $7.50
  3. Overnight Oats - $5.75
  4. Bagel with Cream Cheese - $4.25

Special Offers (3 promotions)

  1. Happy Hour: 50% off all espresso drinks, 3-5 PM daily
  2. Student Discount: 20% off with valid student ID, all day
  3. Loyalty Rewards: Buy 10 drinks, get 1 free

πŸ”„ JavaScript Functionality

Mobile Menu Toggle

- Click hamburger β†’ nav slides down (max-height animation)
- Icon changes: ☰ β†’ βœ•
- Click again β†’ nav slides up, icon reverts
- Click nav link β†’ menu closes automatically

Category Tab Switching

- Click any tab β†’ removes 'active' class from all tabs
- Adds 'active' class to clicked tab
- Visual state changes (background/text color inversion)

Add to Order Confirmation

- Click "Add to Order" button
- Text changes to "βœ“ Added!"
- Background changes to green (#4CAF50)
- After 1.5 seconds β†’ reverts to original state
- Provides visual confirmation of action

Details Modal Trigger

- Click "Details" button
- Alert dialog displays item name
- Placeholder for future modal implementation
- Accessible via keyboard (Enter/Space)

Smooth Scroll Navigation

- Click anchor link β†’ prevent default jump
- Smooth scroll to target section
- On mobile β†’ closes menu after navigation
- Behavior: 'smooth', block: 'start'

🎯 User Experience Features

Visual Feedback

  • Hover states on all interactive elements
  • Color transitions (0.3s) for smooth interactions
  • Transform animations for card elevation
  • Loading confirmation on button clicks

Mobile Optimizations

  • Touch-friendly button sizes
  • Horizontal scrolling for category tabs
  • Hamburger menu for navigation
  • Optimized font sizes for readability
  • Adequate spacing between tap targets

Content Organization

  • Logical section hierarchy
  • Consistent card layouts
  • Clear visual groupings
  • Scannable information architecture

Error Prevention

  • Clear button labels
  • Visual confirmation of actions
  • Consistent interaction patterns
  • Predictable navigation behavior

πŸ“ˆ Future Enhancements

Planned Features

  • Shopping cart functionality
  • Order history tracking
  • User accounts and authentication
  • Real product images
  • Nutritional information modals
  • Search and filter functionality
  • Customization options (size, milk alternatives, etc.)
  • Online ordering and payment integration
  • Location-based services
  • Loyalty program integration

Technical Improvements

  • Service Worker for offline functionality
  • Image lazy loading for real photos
  • LocalStorage for cart persistence
  • API integration for real-time inventory
  • Progressive Web App (PWA) capabilities
  • Analytics integration
  • A/B testing framework
  • Internationalization (i18n)

πŸ› Known Limitations

Current Implementation

  • No backend or database (static HTML)
  • Alert dialogs instead of custom modals
  • Placeholder images (gradients and emojis)
  • No actual cart or checkout process
  • Category filtering is visual only (doesn't hide items)
  • No form validation on newsletter signup

Browser Compatibility

  • CSS clamp() requires modern browsers (2020+)
  • CSS Grid may have limited support in older browsers
  • Backdrop filter not supported in all browsers

🀝 Contributing

Code Style

  • Use semantic HTML5 elements
  • Follow BEM-like naming for CSS classes (.component-element)
  • Use rem units for spacing and sizing
  • Maintain consistent indentation (4 spaces)
  • Comment complex logic in JavaScript
  • Keep accessibility in mind for all changes

Testing Checklist

  • Test on mobile (320px - 767px)
  • Test on tablet (768px - 1024px)
  • Test on desktop (1025px+)
  • Verify keyboard navigation
  • Check color contrast ratios
  • Validate HTML5 markup
  • Test all interactive elements
  • Cross-browser compatibility check

πŸ“ License

This project is created for educational and demonstration purposes.

πŸ“ž Contact

Brew & Bytes CafΓ©

πŸ™ Acknowledgments

  • Design inspired by modern coffee shop aesthetics
  • Built with accessibility and performance in mind
  • Responsive design following mobile-first principles
  • Semantic HTML structure for better SEO and accessibility

Version: 1.0.0
Last Updated: December 2024
Status: Menu Page Complete, Home Page In Development

About

Fantasy coffee shop

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors