ساخته شده با ❤️ توسط پویا فخام | blackwacker.com
🇬🇧 EN: Want to see it in action before installing? Check out the live demo here: 👉 chat.rootfa.ir
🇮🇷 FA: دوست داری قبل از نصب، محیط چت روم رو از نزدیک ببینی و باهاش کار کنی؟ یه سر به لینک زیر بزن: 👉 chat.rootfa.ir
🇬🇧 English: Hey there! 👋 Welcome to BlackWacker. This is a super secure, modern, and real-time chat application built entirely with vanilla PHP and MySQL. I designed this system to focus on your privacy, a seamless user experience, and easy management without the headache of heavy frameworks. Designed by Pouya Fakham, it comes packed with cool features like end-to-end simulated encryption (AES-256), voice messaging, private rooms, and a really smooth passwordless login system!
🇮🇷 فارسی: سلام! 👋 به بلک واکر خوش اومدید. این یک سیستم چت روم تحت وب خیلی پیشرفته، امن و بلادرنگ هست که صفر تا صد اون با PHP خام و دیتابیس MySQL نوشته شده. من (پویا فخام) این پروژه رو طوری طراحی کردم که خیالتون از بابت امنیت داده ها راحت باشه (همه چی با الگوریتم قدرتمند AES-256 رمزنگاری میشه). رابط کاربریش خیلی مدرن و جذابه و برای اجرا شدنش اصلا به فریم ورک های سنگین نیازی ندارید!
- 🇬🇧 EN: Don't worry about your data! All messages and files are encrypted with the
AES-256-CBCalgorithm before hitting the database. We also have a built-in anti-spam system (auto-mute) and CSRF protection. - 🇮🇷 FA: خیالتون از بابت اطلاعات راحت باشه! متن پیام ها و فایل ها قبل از اینکه تو دیتابیس ذخیره بشن، با الگوریتم خفن
AES-256-CBCرمزنگاری میشن. سیستم جلوی حملات CSRF رو میگیره و اگه کسی اسپم کنه، خودکار میوت میشه!
- 🇬🇧 EN: Say goodbye to forgetting passwords. Our smart auth uses Device Tokens and IPs. For account recovery, we use a simple, secure 8-digit one-time code.
- 🇮🇷 FA: دیگه نیازی به حفظ کردن پسوردهای سخت و ناامن نیست! سیستم ما شما رو از روی توکن دستگاه و IP میشناسه و برای ورود مجدد، فقط به یک «کد امنیتی ۸ رقمی» یکبار مصرف نیاز دارید.
- 🇬🇧 EN: Just hold the mic icon and send voice messages directly in the browser (
.webm). You can also share images and videos securely, with support for seamless scrubbing/seeking (HTTP_RANGE). - 🇮🇷 FA: خیلی راحت تو همون صفحه مرورگر ویس ضبط کنید و بفرستید! عکس و ویدیو هم پشتیبانی میشه و فایل های رمزنگاری شده به لطف قابلیت
HTTP_RANGE، موقع پخش به راحتی جلو و عقب (Seek) میشن.
- 🇬🇧 EN: Hang out in the main Public Room or easily create unlimited Private Rooms and invite your friends using unique Invite Codes.
- 🇮🇷 FA: می تونید تو گپ عمومی با همه چت کنید یا اینکه بی نهایت اتاق خصوصی بسازید و فقط کسایی رو که دوست دارید با "کد دعوت" بیارید تو گپ خودتون.
- 🇬🇧 EN: You get a killer admin dashboard! Ban users by IP, lock the entire site or uploads with one click, send global alerts, and even set a timer to auto-reset the database.
- 🇮🇷 FA: یه داشبورد مدیریت حرفه ای دارید که می تونید کاربرای متخلف رو با IP بن کنید، کل سایت یا بخش آپلود رو با یه دکمه قفل کنید، به همه پیام سراسری بدید یا تایمر بذارید تا دیتابیس خودکار ریست بشه (Factory Reset).
- 🇬🇧 EN: Beautiful Glassmorphism design that looks awesome on mobile and desktop. It features real-time updates, right-click context menus, and inline replies!
- 🇮🇷 FA: یه طراحی شیشه ای (Glassmorphism) و فوق العاده زیبا که تو موبایل عالی نشون داده میشه. پیام ها در لحظه میان، منوهای کلیک راست داره و راحت می تونید روی پیام ها ریپلای بزنید.
- Backend: Vanilla PHP 8.0+ (خیلی سبک، بدون فریم ورک)
- Database: MySQL (PDO Interface)
- Frontend: HTML5, CSS3, Vanilla JavaScript (DOM manipulation & AJAX)
- Date & Time: Jalali Calendar via
jdf.php(برای نمایش تاریخ های شمسی)
🇬🇧 English:
- Download the files and drop them into your server's root folder (or XAMPP/localhost).
- Open the
config.phpfile and fill in your database details ($db_host,$db_name,$db_user,$db_pass). (Fun fact: The system will automatically create all the necessary database tables the first time you run it!) - While you're in
config.php, set up your admin username/password and change theENCRYPTION_KEY. - Open the site, log in with your admin details, and enjoy!
🇮🇷 فارسی:
- فایل ها رو دانلود کنید و بریزید تو روت هاست یا لوکال هاست (مثل XAMPP).
- فایل
config.phpرو باز کنید و اطلاعات دیتابیستون رو وارد کنید ($db_host,$db_name,$db_user,$db_pass). (نکته جالب: نیازی نیست تو دیتابیس کاری کنید، سیستم همون بار اول که سایت رو باز کنید خودش جداول رو میسازه!) - تو همون فایل
config.php، یوزرنیم و پسورد مدیریت و صد البته کلید رمزنگاری (ENCRYPTION_KEY) رو عوض کنید. - سایت رو باز کنید، با اطلاعات ادمین لاگین کنید و تمام!
| File Name | Description / توضیحات |
|---|---|
config.php |
تنظیمات اصلی، اتصال به دیتابیس و توابع رمزنگاری |
index.php |
ظاهر سایت و کدهای جاوا اسکریپت کلاینت |
chat.php |
هسته اصلی چت (هندل کردن پیام ها، اتاق ها و وضعیت تایپ) |
requests.php |
کارهای مربوط به یوزرها (لاگین، بن شدن، ریپورت و کد امنیتی) |
admin.php |
پنل مدیریت خفن سایت |
file.php / voice.php |
توزیع کننده امن مدیاها (رمزگشایی و استریم فایل ها در لحظه) |
EN: Hey admin! Don't forget to change the default ENCRYPTION_KEY in config.php to a strong, random 32-character string before you go live.
FA: دوست عزیز حواست باشه قبل از اینکه سایتت رو پابلیک کنی، حتماً کلید رمزنگاری پیش فرض (ENCRYPTION_KEY) توی فایل config.php رو به یک متن سخت و طولانی تغییر بدی تا امنیت سایتت تضمین بشه.
خوشحال میشم نظراتتون رو درباره این اسکریپت بدونم!
- Developer: Pouya Fakham (پویا فخام)
- Website: blackwacker.com
- Telegram: @PooyaFakham
(If you build something awesome with this or make changes, please be kind and keep the original credits intact. / اگه از این پروژه استفاده کردید یا تغییرش دادید، لطفا معرفت به خرج بدید و کپی رایت سازنده رو حفظ کنید. ❤️)