A modern, responsive bundle builder interface that allows users to create product bundles with real-time pricing calculations and smooth animations.
- Interactive Product Selection: Browse and select products from a responsive grid layout
- Dynamic Bundle Management: Add and remove products with smooth animations
- Real-time Pricing: Automatic discount calculations and subtotal updates
- Modern UI/UX: Clean design with skeleton loading states and hover effects
- Responsive Design: Optimized for all screen sizes and devices
- Accessibility: Semantic HTML structure with proper ARIA labels
- HTML5: Semantic structure with accessibility features
- CSS3: Modern styling with Flexbox, animations, and custom properties
- Vanilla JavaScript: ES6+ class-based architecture with modular design
- Google Fonts: Instrument Sans typography for consistent styling
project-root/
├── index.html # Main HTML structure
├── style.css # Complete styling system
├── script.js # Bundle management logic
├── Readme.md # Project documentation
└── assets/ # Image assets
├── product-*.jpg # Product images
└── Icons/ # SVG icons
├── CaretRight.svg
├── Check.svg
└── Plus.svg
-
Clone the repository:
git clone https://github.com/VivekKumar2380/Bundle-Builder.git
-
Navigate to the project directory:
cd Bundle-Builder -
Open the project:
- Open
index.htmlin your web browser - No additional setup or build process required
- Open
- Browse Products: View the available products in the grid layout
- Add to Bundle: Click the "+" button on any product to add it to your bundle
- Remove from Bundle: Click the "✓" button on selected products to remove them
- View Summary: Check the bundle summary sidebar for pricing details
- Add to Cart: Click "Add X Items to Cart" to complete your bundle
- Semantic HTML5 elements for better accessibility
- Proper meta tags and viewport configuration
- Organized into main sections: header, product grid, and bundle sidebar
- Modular CSS with clear section headers
- Custom properties for consistent theming
- Responsive design with mobile-first approach
- Smooth animations and transitions
- Class-based architecture for better maintainability
- Event delegation for efficient event handling
- Dynamic DOM manipulation with proper state management
- Error handling and performance optimizations
This project works in all modern browsers that support:
- ES6+ JavaScript features
- CSS Flexbox and Grid
- CSS Custom Properties
- Modern DOM APIs
- Optimized images and assets
- Efficient event handling
- Smooth animations with CSS transforms
- Minimal JavaScript footprint
The codebase follows modern web development best practices:
- Clean, readable code structure
- Comprehensive documentation
- Separation of concerns
- Responsive and accessible design
This project was developed as part of a coding assessment to demonstrate modern web development skills and best practices.