Skip to content

Silent-Galaxy/NewLife-Shop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NewLife: پلتفرم واسط امن و مارکت‌پلیس گیمینگ 🎮

NewLife یک اکوسیستم واسط (Escrow) برای خرید و فروش امن دارایی‌های دیجیتال (اکانت، آیتم، لایسنس و خدمات بوستینگ) است. هدف ما حذف کلاهبرداری در معاملات گیمرها با استفاده از مکانیزم "پرداخت امن" و سیستم قضاوت جمعی (Jury System) است.

ما این پلتفرم را با رویکرد High Performance (عملکرد بالا) و Low Resource Usage (مصرف کم منابع) مهندسی کرده‌ایم تا روی هر نوع زیرساختی با بالاترین سرعت اجرا شود.


🚀 ویژگی‌های کلیدی (Key Features)

alt text

توضیح: یک نمای درختی رنگارنگ که تمام ویژگی‌های کلیدی پروژه NewLife را در یک نگاه نشان می‌دهد. عالی برای ارائه‌های مدیریتی.

  • 🛡️ سیستم واسط امن (Secure Escrow): پول خریدار نزد پلتفرم قفل می‌شود و تنها پس از تایید صحت اکانت/آیتم، به فروشنده پرداخت می‌شود.
  • ⚖️ هیئت منصفه کامیونیتی (Community Jury): سیستم حل اختلاف غیرمتمرکز که در آن کاربران برتر (Jury) با بررسی مستندات، در مورد اختلافات قضاوت می‌کنند.
  • ⚡ سرعت فوق‌العاده: استفاده از معماری تولید فایل‌های استاتیک (Static JSON) برای کاهش فشار روی دیتابیس.
  • 💰 اقتصاد شفاف: تقسیم سود مشخص بین فروشنده، پلتفرم و هیئت منصفه.

🛠 پشته فنی و معماری (Tech Stack)

برای تضمین سرعت بالا و پایداری، از معماری API-First بدون وابستگی به فریم‌ورک‌های سنگین استفاده شده است:

بخش تکنولوژی توضیحات
Frontend HTML5, CSS3, Vanilla JS بدون فریم‌ورک سنگین، استفاده از Fetch API و DOM Manipulation مستقیم.
Backend PHP 8.x (Pure) کدنویسی Native برای حداکثر سرعت و مدیریت دقیق منابع.
Database MySQL / MariaDB طراحی بهینه ایندکس‌ها برای جستجوی سریع.
Architecture RESTful JSON API تفکیک کامل فرانت و بک؛ بک‌اند فقط JSON تولید می‌کند.
Caching File-Based & LocalStorage کش‌سازی سمت سرور (JSON) و سمت کلاینت.

🧠 استراتژی بهینه‌سازی (Optimization Strategy)

۱. کش‌سازی ویترین (Static JSON Generation)

صفحات پربازدید مثل "ویترین" یا "لیست محصولات" نباید در هر بازدید دیتابیس را درگیر کنند.

  • روش: یک اسکریپت Cron Job در بک‌اند اجرا می‌شود که دیتای سنگین را پردازش کرده و در فایل‌های json ذخیره می‌کند.
  • نتیجه: کاربر نهایی فایل استاتیک را می‌خواند (فشار روی دیتابیس = 0).

۲. بهینه‌سازی فرانت‌‌اند (UX Performance)

  • Lazy Loading: تصاویر اکانت‌ها و بازی‌ها تنها زمانی لود می‌شوند که کاربر اسکرول کند.
  • Skeleton Loading: نمایش اسکلت ساختار صفحه قبل از دریافت دیتا برای القای حس سرعت.
  • Client-Side Caching: ذخیره دسته‌بندی‌ها و متادیتاها در localStorage مرورگر.

💾 دیتابیس و مکانیزم وضعیت‌ها (Logic)

هسته اصلی امنیت معامله، "ماشین وضعیت" (State Machine) سفارشات است:

کد وضعیت نام وضعیت توضیحات
0 Pending Payment سفارش ثبت شده، منتظر پرداخت خریدار.
1 Secured (Escrow) پول نزد NewLife قفل شده، منتظر تحویل فروشنده.
2 Delivered فروشنده تحویل داده، منتظر تایید خریدار.
3 Completed تایید خریدار و تسویه حساب با فروشنده.
9 Dispute اختلاف؛ ارجاع به سیستم Jury/ادمین.

نمونه اسکیما (Schema)

CREATE TABLE products (
    id INT AUTO_INCREMENT PRIMARY KEY,
    user_id INT NOT NULL,
    category_id INT INDEX,
    title VARCHAR(100),
    price DECIMAL(15, 0),
    data_json JSON, -- مشخصات متغیر اکانت
    status TINYINT DEFAULT 1
);






/NewLife
│
├── /public                # ریشه وب‌سایت (Web Root)
│   ├── /assets
│   │   ├── /css           # استایل‌ها (Tailwind/Custom)
│   │   ├── /js            # منطق فرانت (App Core)
│   │   └── /img           # تصاویر (Lazy loaded)
│   ├── /api               # نقطه اتصال فرانت به بک
│   │   ├── get_products.php
│   │   └── order_action.php
│   └── index.html         # قالب اصلی (SPA feel)
│
├── /backend               # منطق اصلی (غیر قابل دسترسی مستقیم)
│   ├── /config            # اتصال دیتابیس
│   ├── /core              # کلاس‌های اصلی (Security, DB)
│   └── /cron              # اسکریپت‌های تولید کش
│
└── /storage               # محل ذخیره فایل‌های کش JSON
    └── showcase_data.json

About

پلتفرم واسط امن و مارکت‌پلیس خرید و فروش اکانت‌های بازی (NewLife). معماری سریع و اختصاصی بدون فریم‌ورک با PHP و JS خالص.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors