Skip to content

mujehoxe/cristalux

Β 
Β 

Repository files navigation

Cristalux E-commerce Platform

πŸš€ Enhanced React E-commerce Platform with Modern UI, Animations, and Multi-language Support

Deploy Status Live Demo

✨ Recent Enhancements

🌍 Internationalization (i18n)

  • Multi-language Support: English, French, and Arabic
  • RTL Support: Full right-to-left layout for Arabic
  • Dynamic Language Switching: Smooth animated language switcher
  • Persistent Language: User preference saved in localStorage
  • Browser Detection: Automatically detects user's preferred language

🎨 Enhanced Animations

  • Page Transitions: Smooth route transitions with Framer Motion
  • Card Animations: Hover effects and entrance animations
  • Stagger Animations: Sequential animations for lists and grids
  • Loading States: Animated buttons with loading indicators
  • Custom Tailwind Animations: Extended animation library

πŸ”§ Improved Development & Deployment

  • Enhanced GitHub Actions: Automated deployment with backups
  • Production-Ready: Optimized build process
  • Error Handling: Better error boundaries and loading states
  • Performance: Code splitting and lazy loading

πŸ› οΈ Tech Stack

  • Frontend: React 18 + Vite
  • Styling: Tailwind CSS with custom animations
  • Animations: Framer Motion
  • State Management: Redux Toolkit
  • Routing: React Router v6
  • Internationalization: react-i18next
  • Icons: Font Awesome
  • Notifications: React Toastify
  • Carousel: Swiper.js

πŸš€ Quick Start

Prerequisites

  • Node.js 18 or higher
  • npm or yarn

Installation

# Clone the repository
git clone https://github.com/mujehoxe/cristalux.git
cd cristalux

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

🌐 Internationalization

Supported Languages

  • πŸ‡ΊπŸ‡Έ English (en) - Default
  • πŸ‡«πŸ‡· French (fr) - FranΓ§ais
  • πŸ‡©πŸ‡Ώ Arabic (ar) - Ψ§Ω„ΨΉΨ±Ψ¨ΩŠΨ© with RTL support

Usage in Components

import { useTranslation } from 'react-i18next';

function MyComponent() {
  const { t } = useTranslation();
  
  return (
    <h1>{t('hero.title')}</h1>
  );
}

🎨 Animation Components

PageTransition

import PageTransition from './components/framerMotion/PageTransition';

<PageTransition>
  <YourPageContent />
</PageTransition>

AnimatedCard

import AnimatedCard from './components/framerMotion/AnimatedCard';

<AnimatedCard delay={0.2} className="your-styles">
  <CardContent />
</AnimatedCard>

AnimatedButton

import AnimatedButton from './components/framerMotion/AnimatedButton';

<AnimatedButton 
  variant="primary" 
  loading={isLoading}
  icon={faShoppingCart}
>
  Add to Cart
</AnimatedButton>

πŸ“¦ Deployment

Automatic Deployment

The project uses GitHub Actions for automated deployment:

  • Triggers: Push to main or master branch
  • Process: Build β†’ Test β†’ Deploy to production server
  • Backup: Automatic backup before deployment
  • Rollback: Easy rollback capability

🎯 Features

  • βœ… Responsive Design: Mobile-first approach
  • βœ… Product Catalog: Browse and filter products
  • βœ… Shopping Cart: Add/remove items with animations
  • βœ… Checkout Process: Multi-step checkout form
  • βœ… Multi-language: Support for 3 languages
  • βœ… Smooth Animations: Enhanced user experience
  • βœ… SEO Optimized: Meta tags and structured data
  • βœ… Performance: Optimized images and code splitting

🀝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ™ Acknowledgments


Made with ❀️ and modern web technologies

About

πŸ’Ž E-commerce frontend for luxury products - Clean, responsive design with product showcases and modern shopping experience

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 94.3%
  • CSS 5.0%
  • HTML 0.7%