A modern, responsive flower shop website built with pure frontend technologies
Live Demo β’ Report Bug β’ Request Feature
Floriva is a beautifully crafted flower shop website that showcases an exquisite collection of floral arrangements, bouquets, and gift sets. Built as a portfolio project, it demonstrates modern frontend development skills with a focus on user experience and e-commerce functionality.
- ποΈ Product Catalog - Filter bouquets, arrangements, and gift sets
- β€οΈ Wishlist System - Save favorite products for later
- π Shopping Cart - Add items with quantity management
- π± Responsive Design - Perfect on all devices
- π Contact Form - Integrated order system with validation
- πΎ Local Storage - Persistent cart and wishlist data
- Frontend: HTML5, CSS3, JavaScript (ES6+)
- Framework: Bootstrap 5.3.8
- Icons: Bootstrap Icons
- Storage: Browser LocalStorage
- Design: Custom CSS with CSS Variables
This project has been analyzed with SonarQube to ensure production-ready code:
- β Quality Gate: PASSED - Meets industry standards
- β Security Rating: A - No critical vulnerabilities
- β Secure Validation - Fixed ReDoS regex vulnerabilities
- β Mobile Optimized - Touch-friendly buttons
-
Clone the repository
git clone https://github.com/ZahirawDW/floriva.git cd floriva -
Open in browser
# No build process required - open index.html directly open index.htmlOr use a local server:
python -m http.server 8000 # Visit http://localhost:8000
floriva/
βββ index.html # Main HTML file
βββ style.css # Custom styles
βββ script.js # All JavaScript functionality
βββ images/ # Product images and assets
β βββ logo.png
β βββ home.png
β βββ aboutimg1-8.jpg
β βββ bouquet1-8.jpg
β βββ arrangement1-8.jpg
β βββ giftset1-8.jpg
βββ README.md # Project documentation
- Dynamic product filtering by category
- Real-time cart calculations
- Wishlist with duplicate prevention
- Product cards with hover effects
- Add to cart/wishlist functionality
- Quantity controls with +/- buttons
- Persistent storage across sessions
- Order summary with total pricing
- Smooth animations and transitions
- Mobile-first responsive design
- Bootstrap modals for cart/wishlist
- Form validation with error handling
- Browse Products: Use category filters to explore floral arrangements
- Add to Cart: Click "Add to Cart" on any product
- Manage Quantities: Use +/- buttons in cart modal
- Save Favorites: Add items to wishlist for later
- Place Order: Fill out contact form with delivery details
- Pure JavaScript - No external dependencies beyond Bootstrap
- CSS Custom Properties - Consistent theming with variables
- Event Delegation - Efficient DOM event handling
- Local Storage API - Data persistence without backend
- Responsive Grid - Bootstrap layout system
- Form Validation - Client-side validation with regex
- Accessibility - ARIA labels for screen readers
- SonarQube Tested - Code quality and security validated
- External Data Management - Migrated product catalog from hardcoded array to external JSON file
- Async Data Loading - Implemented modern fetch API for dynamic content loading
- Smart Product Shuffling - Random mix in "All" view for better browsing experience
- Optimized Initial Load - Faster page rendering with asynchronous data fetching
- β Chrome (recommended)
- β Firefox
- β Brave
- β Opera
- β Edge
- Mobile: Optimized for 320px+ screens
- Tablet: Adaptive layout for 768px+ screens
- Desktop: Full experience for 1024px+ screens
Modify CSS variables in :root:
:root {
--bs-body-color: #5d0c23; /* Primary dark pink */
--light-pink: #d41f68; /* Accent pink */
}Add new products to data.json:
{
"products": [
{
"id": 25,
"category": "bouquets",
"name": "New Bouquet",
"image": "images/new-bouquet.jpg",
"description": "Beautiful new arrangement",
"price": "$55.00"
}
]
}- Payment gateway integration
- User authentication system
- Product search functionality
- Image zoom capabilities
- Newsletter subscription
- Admin dashboard
- Server-side API integration
- Database backend for dynamic content
- Load more / infinite scroll feature
EL-MAHJOUR Zahira
- Email: [zahirael-mahjour] (zahiraelmahjour06@gmail.com)
- GitHub: @ZahirawDW
- LinkedIn: Zahira El-Mahjour
This project is licensed under the MIT License - see the LICENSE.md file for details.
- Bootstrap team for the excellent framework
- Bootstrap Icons for beautiful icons
- LocalStorage API for data persistence
- Modern CSS features for animations
Built with β€οΈ for floral enthusiasts and modern web development
For questions about this project or potential collaborations:
- Email:zahiraelmahjour06@gmail.com
- LinkedIn: https://www.linkedin.com/in/zahira-el-mahjour
- GitHub: https://github.com/ZahirawDW
Note: This is a frontend demonstration project. For a production environment, consider adding backend integration, payment processing, and user authentication.
Happy Coding! πΈ
Last updated: March 2026