
A modern, multilingual e-commerce platform specifically designed for the Algerian market
Demo β’ Documentation β’ Report Bug β’ Request Feature
- ποΈ Local Payment Methods: CIB Bank, Eddahabia, Flexy, Cash on Delivery
- π Algeria-Wide Delivery: Yalidina, Aramex, and local courier services
- π° Algerian Dinar (DZD): Native currency support with proper formatting
- πΊοΈ 48 Wilayas Coverage: Complete address system with wilaya and commune support
- π Enhanced Security: SMS verification, 2FA, and PCI DSS compliant payments
- Ψ§ΩΨΉΨ±Ψ¨ΩΨ© (Arabic): Full RTL support with native Arabic interface
- FranΓ§ais (French): Complete French localization
- English: International English support
- Dynamic Language Switching: Real-time language changes with user preferences
- AI-Powered Recommendations: Smart product suggestions
- Advanced Search & Filters: Category-based filtering with smart search
- Product Comparison: Side-by-side product comparison tool
- Wishlist Management: Save and organize favorite products
- Shopping Cart: Persistent cart with quantity management
- Responsive Design: Optimized for mobile, tablet, and desktop
- Beautiful Animations: Framer Motion powered smooth transitions
- Dark/Light Mode: System preference aware theme switching
- Professional Design: Modern gradient-based design system
- Accessibility: WCAG 2.1 compliant with screen reader support
- Fast Performance: Optimized bundle size and lazy loading
- TypeScript: Full type safety throughout the application
- Zustand State Management: Lightweight and efficient state management
- Component Library: Reusable UI components with Radix UI
- Responsive Images: Optimized image loading with fallbacks
- SEO Optimized: Meta tags and structured data
- PWA Ready: Service worker and offline capabilities
- Node.js 18.0 or higher
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/username/shopsage.git cd shopsage
-
Install dependencies
npm install # or yarn install
-
Start the development server
npm run dev # or yarn dev
-
Open your browser
http://localhost:5173
npm run build
# or
yarn build
shopsage/
βββ client/ # Frontend React application
β βββ components/ # Reusable UI components
β β βββ home/ # Homepage specific components
β β βββ layout/ # Layout components (Header, Footer)
β β βββ products/ # Product-related components
β β βββ search/ # Search functionality
β β βββ security/ # Security verification components
β β βββ ui/ # Base UI components
β βββ lib/ # Utilities and configurations
β β βββ data/ # Static data and product information
β β βββ i18n/ # Internationalization system
β β βββ stores/ # Zustand state stores
β βββ pages/ # Page components (routing)
β βββ global.css # Global styles and Tailwind imports
βββ server/ # Backend API (optional)
βββ public/ # Static assets
βββ docs/ # Documentation files
cart-store.ts
: Shopping cart functionality with persistenceauth-store.ts
: User authentication and profile managementpayment-store.ts
: Payment methods and transaction handlingshipping-store.ts
: Delivery options and address managementwishlist-store.ts
: Product wishlist functionalitycomparison-store.ts
: Product comparison features
// Algerian payment methods
const paymentMethods = [
'cib', // CIB Bank cards
'eddahabia', // Algeria Post cards
'flexy', // Mobile money
'goldcard', // Premium bank cards
'cod', // Cash on delivery
'bankTransfer' // Direct bank transfer
];
// Multi-language support
const languages = {
ar: 'Ψ§ΩΨΉΨ±Ψ¨ΩΨ©', // Arabic (RTL)
fr: 'FranΓ§ais', // French
en: 'English' // English
};
Create a .env
file in the root directory:
# API Configuration
VITE_API_URL=http://localhost:3000/api
VITE_APP_NAME=ShopSage
# Payment Configuration
VITE_CIB_API_KEY=your_cib_api_key
VITE_EDDAHABIA_MERCHANT_ID=your_merchant_id
# Analytics
VITE_GOOGLE_ANALYTICS_ID=GA_TRACKING_ID
The project uses a custom Tailwind configuration with:
- Custom colors: Purple-based primary palette
- Algerian flag colors: Green, white, red accents
- RTL support: Automatic RTL layout for Arabic
- Custom animations: Smooth transitions and micro-interactions
ShopSage is fully responsive and optimized for mobile devices:
- Touch-friendly interfaces: Large touch targets and gesture support
- Mobile-first design: Optimized for smaller screens
- Fast loading: Optimized bundle size for mobile networks
- Offline support: PWA capabilities for offline browsing
- SSL Encryption: 256-bit SSL encryption for all transactions
- PCI DSS Compliance: Secure payment processing standards
- 2FA Authentication: SMS and email verification
- Transaction Monitoring: Real-time fraud detection
- GDPR Compliant: European data protection standards
- Data Encryption: Sensitive data encryption at rest
- Secure Sessions: JWT-based authentication
- Privacy Controls: User data management controls
- CIB Bank: Secure bank card payments
- Eddahabia: Algeria Post electronic payments
- Flexy: Mobile money transfers
- Cash on Delivery: Pay when you receive your order
- Yalidina: National delivery service (48 wilayas)
- Aramex: Express delivery for major cities
- Local Couriers: Same-day delivery in Algiers, Oran, Constantine
- 48 Wilayas: Complete Algerian administrative divisions
- Commune Support: Local area specification
- Landmarks: Cultural landmark references for better delivery
- Postal Codes: Algerian postal code validation
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run lint # Run ESLint
npm run type-check # TypeScript type checking
The project maintains high code quality through:
- TypeScript: Static type checking
- ESLint: Code linting and formatting
- Prettier: Code formatting
- Husky: Pre-commit hooks
- Testing: Unit and integration tests
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
ShopSage is optimized for performance:
- Core Web Vitals: Optimized LCP, FID, and CLS scores
- Lighthouse Score: 95+ performance score
- Bundle Size: Optimized JavaScript bundles
- Image Optimization: WebP format with fallbacks
- Caching Strategy: Efficient browser and CDN caching
npm install -g vercel
vercel --prod
npm run build
# Upload dist/ folder to Netlify
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "run", "preview"]
This project is licensed under the MIT License - see the LICENSE file for details.
For enterprise support and custom development:
- Email: stylebenderkh@gmail.com
- Website: www.shopsage.com
- AI Chatbot: Customer support chatbot in Arabic and French
- Vendor Portal: Multi-vendor marketplace support
- Mobile App: Native iOS and Android applications
- Advanced Analytics: Sales and customer analytics dashboard
- Social Commerce: Social media integration and sharing
- Cryptocurrency Payments: Bitcoin and Ethereum support
- AR Product Preview: Augmented reality product visualization
- Voice Search: Voice-activated search in Arabic and French
- Subscription Commerce: Recurring product subscriptions
- Design Inspiration: Modern e-commerce platforms
- Icons: Lucide React icons
- Images: Unsplash for demo product images
- Fonts: Inter font family
- Community: Open source contributors
Built with β€οΈ for the Algerian market
β Star this repository if you found it helpful!