Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 27 additions & 10 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,40 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Tupperware Store Hyderabad | Authentic Tupperware Products</title>
<meta name="description" content="Best Tupperware Store in Hyderabad offering authentic food storage, kitchenware, serverware with amazing offers. Premium quality products at great prices." />
<title>Premium Tupperware Products Hyderabad | Kitchen Organization & All-India Delivery</title>
<meta name="description" content="Explore premium Tupperware kitchen solutions with trusted quality. View the full collection, enjoy great offers, and get free kitchen organization in Hyderabad. Quick delivery across Telangana and Pan India shipping available." />
<meta name="author" content="Tupperware Hyderabad" />
<link rel="canonical" href="https://tupperwarestore.co.in/" />

<meta property="og:title" content="Tupperware Store Hyderabad - Authentic Products & Amazing Offers" />
<meta property="og:description" content="Premium Tupperware products in Hyderabad. Food storage, kitchenware, lunch boxes with amazing discounts." />
<meta property="og:type" content="website" />
<meta property="og:image" content="https://tupperwarestore.co.in/og-image.jpg" />

<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:site" content="@tupperware" />
<meta name="twitter:image" content="https://tupperwarestore.co.in/og-image.jpg" />
<link rel="preconnect" href="https://fonts.googleapis.com">

<!-- favicons -->
<link rel="icon" href="public/favicon/favicon.ico"/>
<link rel="apple-touch-icon" sizes="180x180" href="public/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="public/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="public/favicon/favicon-16x16.png">
<link rel="manifest" href="public/favicon/site.webmanifest">

<meta name="msapplication-TileColor" content="#ffffff" />
<meta name="theme-color" content="#ffffff" />

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&family=Nunito+Sans:wght@300;400;600;700&display=swap" rel="stylesheet">

<meta property="og:title" content="Buy Original Tupperware in Hyderabad | Free Kitchen Organization & Pan India Delivery" />

<meta property="og:description" content="Explore original Tupperware products with exciting offers. Get free kitchen organization service with home visit in Hyderabad. Fast delivery across Telangana and Pan India within 2-4 days." />

<meta property="og:type" content="website" />
<meta property="og:url" content="https://tupperwarestore.co.in/" />
<meta property="og:site_name" content="Tupperware Store Hyderabad" />
<meta property="og:image" content="https://tupperwarestore.co.in/og-image.jpg" />

<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Original Tupperware Products | Fast Delivery Across India" />
<meta name="twitter:description" content="Buy premium Tupperware products with free kitchen organization in Hyderabad. Quick delivery across Telangana and Pan India shipping available." />
<meta name="twitter:image" content="https://tupperwarestore.co.in/og-image.jpg" />

</head>

<body>
Expand Down
File renamed without changes
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/assets/product-images/cubix/3-4.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/assets/product-images/cubix/3/1pc-size.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/assets/product-images/cubix/4/2pcs.avif
Binary file not shown.
Binary file added public/assets/product-images/cubix/small/4pcs.jpg
Binary file added public/assets/product-images/ice-tray/blue1.jpg
Binary file added public/assets/product-images/ice-tray/blue2.webp
Binary file added public/assets/product-images/ice-tray/blue3.avif
Binary file not shown.
Binary file added public/assets/product-images/rice-keeper/lid.jpg
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added public/assets/product-images/ultra-clear/all.jpg
Binary file added public/assets/product-images/umami/4pcs-food.webp
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Empty file added public/og-image.jpg
15 changes: 4 additions & 11 deletions public/robots.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

User-agent: Twitterbot
User-agent: *
Allow: /

User-agent: facebookexternalhit
Allow: /
Disallow: /cart
Disallow: /checkout

User-agent: *
Allow: /
Sitemap: https://tupperwarestore.co.in/sitemap.xml
34 changes: 34 additions & 0 deletions public/sitemap.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

<url>
<loc>https://tupperwarestore.co.in/</loc>
<priority>1.0</priority>
</url>

<url>
<loc>https://tupperwarestore.co.in/products</loc>
<priority>0.9</priority>
</url>

<url>
<loc>https://tupperwarestore.co.in/gallery</loc>
<priority>0.8</priority>
</url>

<url>
<loc>https://tupperwarestore.co.in/about</loc>
<priority>0.7</priority>
</url>

<url>
<loc>https://tupperwarestore.co.in/contact</loc>
<priority>0.8</priority>
</url>

<url>
<loc>https://tupperwarestore.co.in/visit-store</loc>
<priority>0.8</priority>
</url>

</urlset>
Diff not rendered.
Binary file removed src/assets/product-images/ice-tray-purple1.webp
Diff not rendered.
Binary file removed src/assets/product-images/ice-tray-purple3.avif
Binary file not shown.
6 changes: 4 additions & 2 deletions src/components/CollectionsSection.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\CollectionsSection.tsx

import { categories } from "@/data/products";
import { Link } from "react-router-dom";
import { Card, CardContent } from "./ui/card";
Expand All @@ -6,8 +8,8 @@ export const CollectionsSection = () => {
return (
<section className="container mx-auto px-4 py-12">
<div className="text-center mb-8">
<h2 className="text-3xl md:text-4xl font-bold text-primary mb-4">Explore Our Collections</h2>
<p className="text-muted-foreground">Discover our premium range of authentic Tupperware products</p>
<h2 className="text-3xl md:text-4xl font-bold text-primary mb-4">Explore Our Tupperware Product Collections</h2>
<p className="text-muted-foreground">Explore original Tupperware products including storage containers, bottles, lunch boxes, and essential kitchen solutions built for everyday use.</p>
</div>

<div className="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-4">
Expand Down
13 changes: 10 additions & 3 deletions src/components/Footer.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\Footer.tsx

import { MapPin, Phone, Instagram, Mail, Clock } from "lucide-react";
import { Link } from "react-router-dom";
import { Button } from "./ui/button";
Expand All @@ -21,12 +23,12 @@ export const Footer = () => {
<div className="col-span-2 md:col-span-1">
<Link to="/" className="flex items-center flex-shrink-0">
<img
src="src/logos/footer-logo.png"
alt="Tupperware Hyderabad"
src="/logos//footer-logo.png"
alt="Original Tupperware Products and Kitchen Organization in Hyderabad"
className=" h-16 sm:h-20 md:h-24 w-auto object-contain mb-4"/>
</Link>
<p className="text-sm text-white/70 leading-relaxed mb-4">
Serving authentic Tupperware products in Hyderabad for over 15 years — premium kitchenware, storage, and organizational solutions you can trust.
Serving authentic Tupperware products in Hyderabad for over 15 years. We provide free kitchen organization service with home visit and offer fast delivery across Telangana and Pan India.
</p>

{/* Social Links */}
Expand Down Expand Up @@ -117,13 +119,15 @@ export const Footer = () => {
<div className="space-y-3">
<a
href="tel:+918919357003"
aria-label="Call for Tupperware products and kitchen organization service"
className="flex items-center gap-2 text-sm text-white/70 hover:text-[#e92063] transition-colors"
>
<Phone className="h-4 w-4 flex-shrink-0" />
<span>+91 89193 57003</span>
</a>
<a
href={`https://wa.me/918919357003`}
aria-label="WhatsApp for Tupperware orders and free kitchen organization service"
target="_blank"
rel="noopener noreferrer"
className="flex items-center gap-2 text-sm text-white/70 hover:text-[#25D366] transition-colors"
Expand Down Expand Up @@ -163,6 +167,9 @@ export const Footer = () => {
<div className="flex flex-col sm:flex-row justify-between items-center gap-2 text-xs text-white/50">
<p>© {new Date().getFullYear()} Tupperware Hyderabad. All rights reserved.</p>
<p>15+ Years of Authentic Tupperware Service</p>
<p className="text-[12px] text-white/40 text-center mt-1">
Independent Tupperware consultant. This website is not an official Tupperware India website.</p>

</div>
</div>
</div>
Expand Down
13 changes: 9 additions & 4 deletions src/components/Header.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\Header.tsx

import { ShoppingCart, Phone, Menu, X, Search, Instagram } from "lucide-react";
import { Link } from "react-router-dom";
import { Button } from "./ui/button";
Expand Down Expand Up @@ -53,7 +55,7 @@ export const Header = () => {
<header className="sticky top-0 z-50 w-full border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/60">
{/* Top announcement bar */}
<div className="bg-gradient-primary text-primary-foreground py-2 px-4 text-center text-xs sm:text-sm font-medium">
<p>🎉 Limited Time Offer: Buy ₹2500 & Get ₹1000 Off! | Free Shipping on ₹3500+ 🎉</p>
<p>Limited Time Offers on all the Products | Fast Delivery Across Pan India</p>
</div>

{/* Main header */}
Expand All @@ -63,8 +65,8 @@ export const Header = () => {

<Link to="/" className="flex items-center flex-shrink-0">
<img
src="src/logos/header-logo.png"
alt="Tupperware Hyderabad"
src="/logos//header-logo.png"
alt="Original Tupperware Products Hyderabad"
className="h-8 sm:h-20 w-auto object-contain"/>
</Link>

Expand Down Expand Up @@ -113,7 +115,9 @@ export const Header = () => {
</a>

{/* Call Button */}
<a href="tel:+918919357003" className="hidden sm:flex items-center">
<a href="tel:+918919357003"
aria-label="Call for Tupperware products and kitchen organization service"
className="hidden sm:flex items-center">
<Button variant="ghost" size="sm" className="gap-2 h-9">
<Phone className="h-4 w-4" />
<span className="hidden xl:inline">Call Us</span>
Expand Down Expand Up @@ -204,6 +208,7 @@ export const Header = () => {

<a
href="https://wa.me/918919357003"
aria-label="WhatsApp for Tupperware orders and free kitchen organization service"
target="_blank"
rel="noopener noreferrer"
className="flex items-center gap-3 px-4 py-3 text-base font-medium bg-[#25D366]/10 text-[#25D366] hover:bg-[#25D366]/20 rounded-lg transition-colors"
Expand Down
9 changes: 8 additions & 1 deletion src/components/HeroSection.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\HeroSection.tsx

import { useState, useEffect, useRef } from "react";
import { ChevronLeft, ChevronRight } from "lucide-react";
import { Button } from "./ui/button";
Expand Down Expand Up @@ -126,7 +128,9 @@ export const HeroSection = () => {
{slide.highlight}
</span>
)}
<h1 className="text-2xl sm:text-3xl md:text-5xl font-bold text-foreground mb-3 animate-fade-in">{slide.title}</h1>
<h2 className="text-2xl sm:text-3xl md:text-5xl font-bold text-foreground mb-3 animate-fade-in">
{slide.title}</h2>

<p className="text-lg sm:text-xl md:text-2xl text-[#e92063] font-semibold mb-6 animate-slide-up">{slide.subtitle}</p>
<Button variant="offer" size="lg" className="shadow-lg hover:shadow-xl transition-shadow">
Shop Now
Expand Down Expand Up @@ -156,6 +160,9 @@ export const HeroSection = () => {

{/* Dots Indicator */}
<div className="absolute bottom-4 left-1/2 -translate-x-1/2 flex space-x-2">
<h1 className="sr-only">
Original Tupperware Products & Free Kitchen Organization in Hyderabad</h1>

{heroSlides.map((_, index) => (
<button
key={index}
Expand Down
12 changes: 9 additions & 3 deletions src/components/KitchenGallery.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\KitchenGallery.tsx

import { useState, useRef } from "react";
import { ChevronLeft, ChevronRight, X, ZoomIn } from "lucide-react";
import { Button } from "./ui/button";
Expand Down Expand Up @@ -77,8 +79,8 @@ interface KitchenGalleryProps {
export const KitchenGallery = ({
images = sampleGalleryImages,
showDetails = false,
title = "Real Customer Transformations",
subtitle = "See how we've helped families organize their kitchens",
title = "Customer Kitchen Organization and free Transformations Service in Hyderabad",
subtitle = "Expert home visit, personalized planning, and complete kitchen setup using Tupperware solutions",
compact = false,
showCustomizeMessage = false,
}: KitchenGalleryProps) => {
Expand Down Expand Up @@ -142,7 +144,7 @@ export const KitchenGallery = ({
if (scrollContainerRef.current) {
scrollContainerRef.current.style.cursor = "grab";
}
setStartX(0);
setStartX(0)
};

return (
Expand All @@ -157,7 +159,11 @@ export const KitchenGallery = ({
</h2>
)}
{subtitle && <p className="text-muted-foreground text-sm md:text-base">{subtitle}</p>}
<p className="text-muted-foreground max-w-3xl mx-auto mt-3 text-sm md:text-base">
We provide a free kitchen organization service across Hyderabad and nearby areas. Our team visits your home, understands your storage needs, and helps organize your kitchen using customized Tupperware solutions for better space utilization and everyday convenience.</p>

</div>

)}

{/* Customize Message Block */}
Expand Down
7 changes: 5 additions & 2 deletions src/components/OfferProductsSection.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\OfferProductsSection.tsx

import { useRef } from "react";
import { offerProducts } from "@/data/products";
import { ProductCard } from "./ProductCard";
Expand All @@ -21,8 +23,9 @@ export const OfferProductsSection = () => {
<div className="inline-block bg-primary text-primary-foreground px-4 py-1 rounded-full font-semibold text-xs mb-3">
LIMITED TIME OFFERS
</div>
<h2 className="text-xl md:text-2xl font-bold text-foreground mb-1">Special Offer Products</h2>
<p className="text-muted-foreground text-xs md:text-sm">Up to 50% off on selected items</p>
<h2 className="text-xl md:text-2xl font-bold text-foreground mb-1">Save 10% to 50% on selected products</h2>
<p className="text-muted-foreground text-xs md:text-sm mt-1"> Special deals available across popular kitchen and storage collections.</p>

</div>

{/* Scrollable Products Container */}
Expand Down
12 changes: 9 additions & 3 deletions src/components/ProductCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ export const ProductCard = ({ product, compact = false }: ProductCardProps) => {
>
<img
src={product.image}
alt={product.name}
alt={`${product.name} - kitchen storage solution`}
className="w-full h-full object-cover group-hover:scale-105 transition-transform duration-300"
/>
{/* Zoom indicator on hover */}
Expand Down Expand Up @@ -100,7 +100,7 @@ export const ProductCard = ({ product, compact = false }: ProductCardProps) => {

return (
<>
<Card className="overflow-hidden hover:shadow-lg transition-all duration-300 hover:-translate-y-1 flex flex-col h-full">
<Card className="overflow-hidden hover:shadow-lg transition-all duration-300 hover:-translate-y-1 flex flex-col h-full min-h-[420px] md:min-h-[460px]">
<div className="relative">
{product.isOffer && product.discount && (
<Badge className="absolute top-1.5 right-1.5 bg-primary text-primary-foreground z-10 text-xs px-2 py-0.5">
Expand Down Expand Up @@ -128,8 +128,14 @@ export const ProductCard = ({ product, compact = false }: ProductCardProps) => {
{product.size && (
<p className="text-xs text-foreground/70 mb-0.5">Size: {product.size}</p>
)}
{product.colors && product.colors.length > 0 && (
<p className="text-xs text-foreground/70 mb-0.5">
Available Colors: {product.colors.join(", ")}
</p>
)}

{product.quantity && (
<p className="text-xs text-foreground/70 mb-1">Qty: {product.quantity}</p>
<p className="text-xs text-foreground/70 mb-1">Quantity: {product.quantity}</p>
)}
<p className="text-xs text-foreground/60 mb-2 line-clamp-2 hidden md:block">{product.description}</p>

Expand Down
6 changes: 4 additions & 2 deletions src/components/PromoBanner.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//src\components\PromoBanner.tsx

import { X } from "lucide-react";
import { useState, useEffect } from "react";
import { Button } from "./ui/button";
Expand Down Expand Up @@ -27,8 +29,8 @@ export const PromoBanner = () => {
<X className="h-4 w-4" />
</Button>
<div className="pr-6">
<h3 className="text-base md:text-lg font-bold mb-1.5">🎉 Limited Time Offer!</h3>
<p className="text-xs md:text-sm mb-2.5 opacity-95">Buy ₹2500 worth of products and get ₹1000 OFF instantly!</p>
<h3 className="text-base md:text-lg font-bold mb-1.5">Limited-Time Offer</h3>
<p className="text-xs md:text-sm mb-2.5 opacity-95">Shop for ₹2500 and enjoy ₹1000 instant savings.</p>
<a href="/products">
<Button variant="outline" size="sm" className="bg-white text-primary hover:bg-white/90 text-xs md:text-sm h-8">
Shop Now
Expand Down
Loading
Loading