shubraVeil/README.md
2024-12-25 14:31:31 +02:00

110 lines
3.2 KiB
Markdown

# ShubraVeil Essential Oils Website
A modern, responsive website for ShubraVeil Essential Oils company, showcasing their premium quality essential oils sourced from the fertile lands of Shubra Balloula.
## المميزات
- نظام تسجيل دخول وإدارة للمستخدمين
- نظام إدارة المنتجات مع الصور
- نظام للطلبات والمبيعات
- لوحة تحكم للمشرفين
- نظام النسخ الاحتياطي التلقائي
- دعم متعدد اللغات (العربية والإنجليزية)
- تصميم متجاوب يعمل على جميع الأجهزة
## المتطلبات التقنية
- PHP 7.4 أو أحدث
- MySQL 5.7 أو أحدث
- Composer
- Node.js و npm
- خادم ويب (Apache/Nginx)
- امتدادات PHP المطلوبة:
- GD
- MySQLi
- ZIP
- JSON
- OpenSSL
## التثبيت
1. استنساخ المستودع:
```bash
git clone https://github.com/yourusername/shubraveil.git
cd shubraveil
```
2. تثبيت اعتماديات PHP:
```bash
composer install
```
3. إنشاء وتكوين ملف .env:
```bash
cp .env.example .env
```
قم بتحديث المتغيرات في ملف .env بالقيم المناسبة.
4. إعداد قاعدة البيانات:
```bash
mysql -u root -p
CREATE DATABASE shubraveil_db;
mysql -u root -p shubraveil_db < database/schema.sql
```
5. تهيئة المجلدات وضبط الصلاحيات:
```bash
mkdir -p uploads/products cache backups
chmod -R 755 uploads cache backups
```
## الأمان
- تم تفعيل HTTPS إجبارياً
- حماية الملفات والمجلدات الحساسة
- استخدام CSRF tokens لحماية النماذج
- تشفير كلمات المرور باستخدام password_hash
- استخدام Prepared Statements لمنع SQL Injection
- تصفية وتنظيف جميع المدخلات
- رسائل خطأ آمنة لا تكشف معلومات حساسة
## هيكل المشروع
```
shubraveil/
├── admin/ # لوحة التحكم
├── api/ # واجهة برمجة التطبيقات
├── backups/ # النسخ الاحتياطية
├── cache/ # التخزين المؤقت
├── css/ # ملفات CSS
├── database/ # ملفات قاعدة البيانات
├── images/ # الصور الثابتة
├── includes/ # ملفات PHP المشتركة
├── js/ # ملفات JavaScript
├── products/ # صفحات المنتجات
├── templates/ # قوالب الصفحات
├── uploads/ # الملفات المرفوعة
└── tests/ # اختبارات الوحدة
```
## الاختبارات
يمكن تشغيل الاختبارات باستخدام:
```bash
composer test
```
## النسخ الاحتياطي
يتم إنشاء نسخة احتياطية تلقائياً كل يوم في الساعة 12 صباحاً في مجلد `backups/`.
## المساهمة
1. Fork المستودع
2. إنشاء فرع للميزة الجديدة
3. إرسال pull request
## الترخيص
جميع الحقوق محفوظة © 2024 ShubraVeil