Rocks/ ├── .git/ # Git repository ├── .env # Environment configuration ├── .gitignore # Git ignore file ├── README.md # Project documentation ├── Dockerfile # Main Dockerfile ├── docker-compose.yml # Docker Compose configuration ├── nginx.conf # Nginx configuration ├── setup-frontend.sh # Frontend setup script ├── package.json # Project dependencies ├── index.html # Main HTML entry point ├── frontend/ │ ├── node_modules/ # Node.js dependencies │ ├── public/ # Static public assets │ └── src/ │ ├── assets/ # Static assets │ ├── components/ │ │ ├── EmailDialog.jsx # Email dialog component │ │ ├── Footer.jsx # Footer component │ │ ├── ImageUploader.jsx # Image upload component │ │ ├── Notifications.jsx # Notifications component │ │ ├── ProductImage.jsx # Product image component │ │ └── ProtectedRoute.jsx # Auth route protection │ ├── features/ │ │ ├── ui/ │ │ │ └── uiSlice.js # UI state management │ │ ├── cart/ │ │ │ └── cartSlice.js # Cart state management │ │ ├── auth/ │ │ │ └── authSlice.js # Auth state management │ │ └── store/ │ │ └── index.js # Redux store configuration │ ├── hooks/ │ │ ├── reduxHooks.js # Redux related hooks │ │ ├── apiHooks.js # API related hooks │ │ └── settingsAdminHooks.js # Admin settings hooks │ ├── layouts/ │ │ ├── AdminLayout.jsx # Admin area layout │ │ ├── MainLayout.jsx # Main site layout │ │ └── AuthLayout.jsx # Authentication layout │ ├── pages/ │ │ ├── Admin/ │ │ │ ├── DashboardPage.jsx # Admin dashboard │ │ │ ├── ProductsPage.jsx # Products management │ │ │ ├── ProductEditPage.jsx # Product editing │ │ │ ├── OrdersPage.jsx # Orders management │ │ │ ├── CategoriesPage.jsx # Categories management │ │ │ ├── CustomersPage.jsx # Customer management │ │ │ └── SettingsPage.jsx # Site settings │ │ ├── HomePage.jsx # Home page │ │ ├── ProductsPage.jsx # Products listing │ │ ├── ProductDetailPage.jsx # Product details │ │ ├── CartPage.jsx # Shopping cart │ │ ├── CheckoutPage.jsx # Checkout process │ │ ├── LoginPage.jsx # Login page │ │ ├── RegisterPage.jsx # Registration page │ │ ├── VerifyPage.jsx # Email verification │ │ └── NotFoundPage.jsx # 404 page │ ├── services/ │ │ ├── api.js # API client │ │ ├── authService.js # Authentication service │ │ ├── cartService.js # Cart management service │ │ ├── productService.js # Products service │ │ ├── settingsAdminService.js # Settings service │ │ ├── adminService.js # Admin service │ │ ├── categoryAdminService.js # Category service │ │ └── imageService.js # Image handling service │ ├── theme/ │ │ ├── index.js # Theme configuration │ │ └── ThemeProvider.jsx # Theme provider component │ ├── utils/ │ │ └── imageUtils.js # Image handling utilities │ ├── App.jsx # Main application component │ ├── main.jsx # Application entry point │ ├── config.js # Frontend configuration │ └── vite.config.js # Vite bundler configuration ├── backend/ │ ├── node_modules/ # Node.js dependencies │ ├── public/ │ │ └── uploads/ │ │ └── products/ # Product images storage │ ├── src/ │ │ ├── routes/ │ │ │ ├── auth.js # Authentication routes │ │ │ ├── userAdmin.js # User administration │ │ │ ├── products.js # Product routes │ │ │ ├── productAdmin.js # Product administration │ │ │ ├── cart.js # Shopping cart routes │ │ │ ├── settingsAdmin.js # Settings administration │ │ │ ├── images.js # Image handling routes │ │ │ ├── categoryAdmin.js # Category administration │ │ │ └── orderAdmin.js # Order administration │ │ ├── middleware/ │ │ │ ├── auth.js # Authentication middleware │ │ │ ├── adminAuth.js # Admin authentication │ │ │ └── upload.js # File upload middleware │ │ ├── models/ │ │ │ └── SystemSettings.js # System settings model │ │ ├── db/ │ │ │ └── index.js # Database setup │ │ ├── config.js # Backend configuration │ │ └── index.js # Server entry point │ ├── .env # Backend environment variables │ ├── Dockerfile # Backend Dockerfile │ └── package.json # Backend dependencies └── db/ ├── init/ │ ├── 01-schema.sql # Main database schema │ ├── 02-seed.sql # Initial seed data │ ├── 03-api-key.sql # API key setup │ ├── 04-product-images.sql # Product images schema │ ├── 05-admin-role.sql # Admin role definition │ ├── 06-product-categories.sql # Product categories │ ├── 07-user-keys.sql # User API keys │ ├── 08-create-email.sql # Email templates │ └── 09-system-settings.sql # System settings └── test/ # Test database scripts