diff --git a/src/app/admin/page.tsx b/src/app/admin/page.tsx index f54cc9f..e73f85f 100644 --- a/src/app/admin/page.tsx +++ b/src/app/admin/page.tsx @@ -95,7 +95,7 @@ export default function AdminPage() { "PolyPOS transformed our minimart operations. Stock accuracy improved 99.9% and checkout speed doubled.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-photo/closeup-portrait-successful-happy-smiling-young-woman-beige-jacket-glasses-standing-lobby-office-reception-greeting-business-client-with-pleasant-grin-inviting-company_197531-30568.jpg", + "http://img.b2bpic.net/free-photo/closeup-portrait-successful-happy-smiling-young-woman-beige-jacket-glasses-standing-lobby-office-reception-greeting-business-client-with-pleasant-grin-inviting-company_197531-30568.jpg?_wi=2", imageAlt: "Budi Santoso", }, { @@ -105,7 +105,7 @@ export default function AdminPage() { "Best investment for our café. Real-time inventory syncing prevents stockouts and waste.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-photo/portrait-smiling-korean-barista-girl-counter-wears-blue-apron-works-coffee-shop-shows_1258-199427.jpg", + "http://img.b2bpic.net/free-photo/portrait-smiling-korean-barista-girl-counter-wears-blue-apron-works-coffee-shop-shows_1258-199427.jpg?_wi=2", imageAlt: "Siti Wijaya", }, { @@ -115,7 +115,7 @@ export default function AdminPage() { "Thermal receipt printing works perfectly. Customer satisfaction scores increased significantly.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-photo/supermarket-worker-measuring-selling-meat-customer_342744-1074.jpg", + "http://img.b2bpic.net/free-photo/supermarket-worker-measuring-selling-meat-customer_342744-1074.jpg?_wi=2", imageAlt: "Ahmad Rahman", }, { @@ -125,13 +125,13 @@ export default function AdminPage() { "Email receipts are a game-changer. Our customers love receiving digital records instantly.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-photo/young-smiling-businessman_1163-3871.jpg", + "http://img.b2bpic.net/free-photo/young-smiling-businessman_1163-3871.jpg?_wi=2", imageAlt: "Linda Kusuma", }, ]} testimonialRotationInterval={5000} useInvertedBackground={false} - imageSrc="http://img.b2bpic.net/free-vector/modern-ad-block-concept-with-flat-design_23-2147875121.jpg" + imageSrc="http://img.b2bpic.net/free-vector/modern-ad-block-concept-with-flat-design_23-2147875121.jpg?_wi=4" imageAlt="PolyPOS Cashier Dashboard Interface" mediaAnimation="slide-up" /> @@ -156,7 +156,7 @@ export default function AdminPage() { "Lightning-fast point-of-sale with barcode scanning, product search, quantity adjustments, discount application, and real-time cart updates.", media: { imageSrc: - "http://img.b2bpic.net/free-vector/travel-booking-app-screens_23-2148596420.jpg", + "http://img.b2bpic.net/free-vector/travel-booking-app-screens_23-2148596420.jpg?_wi=2", imageAlt: "Cashier System Interface", }, items: [ @@ -186,7 +186,7 @@ export default function AdminPage() { "Robust inventory management with real-time stock sync, corruption prevention, low-stock alerts, and detailed movement history tracking.", media: { imageSrc: - "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg", + "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg?_wi=4", imageAlt: "Inventory Management System", }, items: [ @@ -216,7 +216,7 @@ export default function AdminPage() { "Thermal printer ready (58mm/80mm) with beautiful formatting, email delivery, and comprehensive transaction records.", media: { imageSrc: - "http://img.b2bpic.net/free-photo/medium-shot-woman-working-desk_23-2149713655.jpg", + "http://img.b2bpic.net/free-photo/medium-shot-woman-working-desk_23-2149713655.jpg?_wi=2", imageAlt: "Receipt Template Design", }, items: [ @@ -262,7 +262,7 @@ export default function AdminPage() { price: "Point of Sale", variant: "Fast Checkout", imageSrc: - "http://img.b2bpic.net/free-vector/shopping-landing-page-template_23-2148114135.jpg", + "http://img.b2bpic.net/free-vector/shopping-landing-page-template_23-2148114135.jpg?_wi=2", imageAlt: "Cashier Point of Sale Module", }, { @@ -271,7 +271,7 @@ export default function AdminPage() { price: "Stock Control", variant: "Real-time Sync", imageSrc: - "http://img.b2bpic.net/free-photo/close-up-volunteers-managing-donations_23-2149196100.jpg", + "http://img.b2bpic.net/free-photo/close-up-volunteers-managing-donations_23-2149196100.jpg?_wi=3", imageAlt: "Inventory Management Module", }, { @@ -280,7 +280,7 @@ export default function AdminPage() { price: "Reports & Insights", variant: "Business Intelligence", imageSrc: - "http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg", + "http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg?_wi=6", imageAlt: "Analytics and Reports Module", }, ]} diff --git a/src/app/dashboard/page.tsx b/src/app/dashboard/page.tsx index 4995e9b..4255c9d 100644 --- a/src/app/dashboard/page.tsx +++ b/src/app/dashboard/page.tsx @@ -97,7 +97,7 @@ export default function DashboardPage() { "Your PolyPOS instance is ready for live transactions. All systems operational with real-time sync enabled.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-vector/modern-ad-block-concept-with-flat-design_23-2147875121.jpg", + "http://img.b2bpic.net/free-vector/modern-ad-block-concept-with-flat-design_23-2147875121.jpg?_wi=2", imageAlt: "Dashboard Overview", }, { @@ -107,7 +107,7 @@ export default function DashboardPage() { "Inventory sync active. Transaction processing enabled. Receipt printer connected and ready.", rating: 5, imageSrc: - "http://img.b2bpic.net/free-photo/close-up-digital-tablet-meeting_1098-487.jpg", + "http://img.b2bpic.net/free-photo/close-up-digital-tablet-meeting_1098-487.jpg?_wi=1", imageAlt: "System Status", }, { @@ -123,7 +123,7 @@ export default function DashboardPage() { ]} testimonialRotationInterval={5000} useInvertedBackground={false} - imageSrc="http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg" + imageSrc="http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg?_wi=2" imageAlt="PolyPOS Dashboard Interface" mediaAnimation="slide-up" /> diff --git a/src/app/inventory/page.tsx b/src/app/inventory/page.tsx index f7f1262..c1e6103 100644 --- a/src/app/inventory/page.tsx +++ b/src/app/inventory/page.tsx @@ -102,7 +102,7 @@ export default function InventoryPage() { title: "Real-Time Stock Synchronization", description: "Every transaction updates stock in real-time. No delays, no corruption. Atomic operations ensure data integrity.", media: { - imageSrc: "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg", + imageSrc: "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg?_wi=2", imageAlt: "warehouse inventory management system", }, items: [ @@ -118,7 +118,7 @@ export default function InventoryPage() { title: "Intelligent Stock Alerts", description: "Automatic low-stock and out-of-stock alerts prevent lost sales and stockouts. Customize thresholds per product.", media: { - imageSrc: "http://img.b2bpic.net/free-photo/close-up-digital-tablet-meeting_1098-487.jpg", + imageSrc: "http://img.b2bpic.net/free-photo/close-up-digital-tablet-meeting_1098-487.jpg?_wi=2", imageAlt: "business analytics dashboard charts", }, items: [ @@ -150,7 +150,7 @@ export default function InventoryPage() { name: "Stock Tracking", price: "Real-time Updates", variant: "Live Sync", - imageSrc: "http://img.b2bpic.net/free-photo/close-up-volunteers-managing-donations_23-2149196100.jpg", + imageSrc: "http://img.b2bpic.net/free-photo/close-up-volunteers-managing-donations_23-2149196100.jpg?_wi=2", imageAlt: "inventory management software", }, { @@ -158,7 +158,7 @@ export default function InventoryPage() { name: "Movement History", price: "Complete Audit Trail", variant: "Full Logging", - imageSrc: "http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg", + imageSrc: "http://img.b2bpic.net/free-vector/dashboard-user-panel-template_23-2148355297.jpg?_wi=3", imageAlt: "business reporting analytics platform", }, { @@ -166,7 +166,7 @@ export default function InventoryPage() { name: "Multi-Location", price: "Unified Control", variant: "Centralized", - imageSrc: "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg", + imageSrc: "http://img.b2bpic.net/free-photo/african-american-female-verifying-shipment-details-awb-labels-using-package-tracking-software_482257-132623.jpg?_wi=3", imageAlt: "warehouse inventory management system", }, ]} diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 6713378..1643315 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -6,18 +6,34 @@ import { ServiceWrapper } from "@/components/ServiceWrapper"; import Tag from "@/tag/Tag"; import { getVisualEditScript } from "@/utils/visual-edit-script"; - - -export const metadata: Metadata = { - title: "Webild components 2", - description: "Generated by create next app", -}; +const halant = Halant({ + variable: "--font-halant", + subsets: ["latin"], + weight: ["300", "400", "500", "600", "700"], +}); const inter = Inter({ variable: "--font-inter", subsets: ["latin"], }); +export const metadata: Metadata = { + title: "PolyPOS - Modern POS & Inventory System", + description: "Production-ready POS cashier system with integrated inventory management, receipt printing, email receipts, vouchers, analytics, and role-based access. Trusted by retail shops, minimarkets, and cafés.", + keywords: "POS system, cashier software, inventory management, point of sale, retail management, thermal printer, QRIS payment", + openGraph: { + title: "PolyPOS - Modern POS & Inventory System", + description: "Complete point-of-sale solution for retail businesses with zero stock corruption risk", + url: "https://polypos.app", + siteName: "PolyPOS", + type: "website", + }, + robots: { + index: true, + follow: true, + }, +}; + export default function RootLayout({ children, }: Readonly<{ @@ -26,7 +42,9 @@ export default function RootLayout({ return ( - + {children}