A modern, single-vendor gaming store built with SvelteKit and TailwindCSS, featuring a dark gaming theme and Indonesian localization. Designed for deployment on GitHub Pages without any external dependencies.
š® Features
Core Features
- Gaming-Focused Design: Dark theme with cyan/purple gradients and gaming aesthetics
- Indonesian Localization: IDR currency, Indonesian addresses, and local payment methods
- Responsive Design: Mobile-first approach optimized for all devices
- Static Site Generation: Optimized for GitHub Pages deployment
- No Database Required: All data is hardcoded for portfolio demonstration
- UUID-based Products: Professional product identification with SEO-friendly slugs
- Real Product Images: High-quality gaming product photography
Customer Features ā
- Homepage: Hero section with featured gaming products and company stats
- Shop Page: Complete product catalog with search, filtering, and sorting
- Product Detail Pages: Image galleries with thumbnail selection and detailed specs
- Shopping Cart: Full cart functionality with localStorage persistence
- Checkout Process: 3-step checkout (Customer Info ā Shipping ā Payment)
- Payment System: Indonesian bank transfer with BCA, Mandiri, and BNI
- Toast Notifications: Professional notifications for cart actions
- Legal Pages: Terms, Privacy, Shipping, and Returns policies
Admin Features ā
- Dashboard: Real-time analytics with sales metrics and order tracking
- Product Management: Complete CRUD operations with 8 gaming products
- Order Management: Invoice tracking with Indonesian customer data
- User Management: Admin user management with role-based access
- Authentication: Secure admin panel with session persistence
Gaming Product Catalog ā
- PlayStation 5 Console - Rp 7,500,000
- NVIDIA GeForce RTX 4090 - Rp 24,000,000
- Xbox Series X Console - Rp 7,500,000
- Logitech G PRO X Gaming Headset - Rp 1,950,000
- Cyberpunk 2077: Ultimate Edition - Rp 1,200,000
- Razer DeathAdder V3 Gaming Mouse - Rp 1,350,000
- Intel Core i9-13900K Processor - Rp 8,850,000
- Steam Deck OLED 512GB - Rp 8,250,000
š Technology Stack
- Framework: SvelteKit with TypeScript
- Styling: TailwindCSS with gaming theme
- Icons: Lucide Svelte
- Charts: Chart.js for admin analytics
- State Management: Svelte stores (auth, cart, toast)
- Currency: Indonesian Rupiah (IDR) formatting
- Images: Product image management system
- Build Tool: Vite
- Deployment: GitHub Pages (static)
š Project Structure
gametech-store/
āāā src/
ā āāā lib/
ā ā āāā components/ # Reusable components
ā ā ā āāā ui/ # Basic UI components
ā ā ā āāā Toast.svelte # Notification system
ā ā āāā stores/ # Svelte stores
ā ā ā āāā auth.ts # Authentication state
ā ā ā āāā cart.ts # Shopping cart state
ā ā ā āāā toast.ts # Toast notifications
ā ā āāā utils/ # Utility functions
ā ā ā āāā index.ts # IDR formatting, etc.
ā ā āāā data/ # Gaming product data
ā ā ā āāā products.ts # 8 gaming products
ā ā ā āāā orders.ts # Indonesian order data
ā ā āāā types/ # TypeScript definitions
ā āāā routes/ # SvelteKit routes
ā ā āāā admin/ # Complete admin panel
ā ā ā āāā +page.svelte # Dashboard
ā ā ā āāā products/ # Product management
ā ā ā āāā orders/ # Order management
ā ā ā āāā users/ # User management
ā ā ā āāā settings/ # Store settings
ā ā ā āāā login/ # Admin login
ā ā āāā shop/ # Shop page
ā ā āāā product/[slug]/ # Product detail pages
ā ā āāā cart/ # Shopping cart
ā ā āāā checkout/ # Checkout process
ā ā āāā payment/ # Payment page
ā ā āāā about/ # About page
ā ā āāā contact/ # Contact page
ā ā āāā legal/ # Terms, Privacy, etc.
ā āāā app.css # Global gaming theme
āāā static/images/ # Product images
ā āāā products/ # 40 product images (8Ć5 each)
ā āāā categories/ # 4 category images
š Getting Started
Prerequisites
- Node.js 18+ or compatible package manager (pnpm, yarn, npm)
Installation
Clone the repository
git clone <repository-url>
cd gametech-store
Install dependencies
pnpm install
# or
npm install
Start development server
pnpm dev
# or
npm run dev
Open your browser
Navigate to http://localhost:5173
Demo Credentials
Admin Login:
- Username:
admin
- Password:
admin123
š® Live Demo
Customer Journey
- Browse Products: Visit homepage and shop page
- View Details: Click any product for detailed view with image gallery
- Add to Cart: Use quantity selector and get toast notifications
- Checkout: Complete 3-step checkout process
- Payment: Indonesian bank transfer instructions
Admin Panel
- Login: Use admin credentials at
/admin/login
- Dashboard: View sales analytics and order summaries
- Manage Products: CRUD operations on gaming products
- Track Orders: Monitor Indonesian customer orders
- Settings: Configure store preferences
š Development
Available Scripts
pnpm dev
- Start development server
pnpm build
- Build for production
pnpm preview
- Preview production build
pnpm check
- Run type checking
pnpm lint
- Run ESLint
pnpm format
- Format code with Prettier
Code Quality
The project follows strict code quality standards:
- TypeScript for type safety
- ESLint for code linting
- Prettier for code formatting
- Component-based architecture
- Mobile-first responsive design
š± Pages & Routes
Public Pages ā
/
- Homepage with featured gaming products
/shop
- Complete product catalog with filtering
/product/[slug]
- Product detail pages with image galleries
/cart
- Shopping cart with quantity management
/checkout
- 3-step checkout process
/payment
- Indonesian bank transfer payment
/about
- Gaming company story and team
/contact
- Contact form with Indonesian validation
/legal/terms
- Terms of service
/legal/privacy
- Privacy policy
/legal/shipping
- Shipping information
/legal/returns
- Return policy
Admin Pages ā
(Protected)
/admin/login
- Admin login
/admin
- Dashboard with analytics
/admin/products
- Product management
/admin/orders
- Order management
/admin/users
- User management
/admin/settings
- Store settings
šØ Design System
Gaming Theme
- Colors: Dark gray backgrounds with cyan/purple gradients
- Typography: Bold headings with gradient text effects
- Components: Rounded corners, backdrop blur, hover animations
- Gaming Elements: Console/PC gaming aesthetics
- Mobile Responsive: Optimized layouts for all screen sizes
Indonesian Localization
- Currency: Indonesian Rupiah (IDR) formatting
- Addresses: Indonesian postal format with provinces
- Phone: +62 format validation
- Payment: BCA, Mandiri, BNI bank transfer
- Shipping: Indonesian logistics (JNE, TIKI, Pos Indonesia)
š Data Models
Product
- UUID-based identification with SEO slugs
- Gaming hardware specifications
- Indonesian Rupiah pricing with 11% PPN tax
- High-quality product images (featured + 4 thumbnails)
- Gaming categories and tags
- Inventory tracking
Order
- Indonesian customer information
- Gaming product line items
- IDR pricing with tax calculations
- Bank transfer payment methods
- Order tracking with GameTech numbering (GT-2024-XXX)
Cart
- localStorage persistence
- Real-time quantity management
- Indonesian tax and shipping calculations
- Toast notification integration
š Deployment
GitHub Pages Setup
Configure repository
- Enable GitHub Pages in repository settings
- Set source to "GitHub Actions"
Build and deploy
pnpm build
Custom domain (optional)
BASE_PATH=/your-repo-name pnpm build
The build output in the build/
directory can be deployed to any static hosting service.
š¼ļø Image Management
Product Images
- Featured Images: 1200x1200px for main product display
- Thumbnails: 4 per product for gallery view
- Categories: 800x600px for category headers
- Format: JPG optimized for web
- Fallbacks: Graceful emoji fallbacks for missing images
Adding New Images
- Add images to
static/images/products/
- Follow naming convention:
product-slug.jpg
, product-slug-1.jpg
, etc.
- Update product data in
src/lib/data/products.ts
- Images automatically display across all pages
šÆ Features Completed
ā
Phase 1: Foundation
ā
Phase 2: Admin Panel
ā
Phase 3: Public Store
ā
Phase 4: Enhancement
š Key Highlights
- Complete E-commerce Solution: Fully functional online store
- Gaming Market Focus: Authentic gaming hardware catalog
- Indonesian Market Ready: Full localization for Indonesian customers
- Professional Design: Modern dark gaming theme
- Mobile Optimized: Perfect experience on all devices
- Portfolio Ready: Demonstrates full-stack development skills
š License
This project is for demonstration and portfolio purposes.
š Support
For questions about this project:
- Review the type definitions in
src/lib/types/
- Look at existing components for patterns
Status: ā
Complete Gaming E-commerce Platform
Market: Indonesian Gaming Hardware Store
Theme: Dark Gaming Aesthetics with Cyan/Purple Gradients
Features: Fully functional admin panel, customer store, and checkout system