Skip to content

**Amlak Web** یک سیستم کامل مدیریت املاک است که با React.js و Node.js ساخته شده. این سیستم امکان مدیریت آگهی‌های املاک، جستجوی پیشرفته، نقشه تعاملی و پنل مدیریت را فراهم می‌کند.

License

Notifications You must be signed in to change notification settings

MHDcoderC/amlak-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏠 Amlak Web - سیستم مدیریت املاک

React Node.js Vite Tailwind CSS MySQL PWA

GitHub stars GitHub forks GitHub issues GitHub license

🚀 Live Demo: https://amlak.mmdcode.top/

📱 PWA Ready: قابل نصب روی موبایل و دسکتاپ

---

🏢 سیستم کامل مدیریت املاک با React.js و Node.js؛ مدیریت آگهی‌های املاک، جستجوی پیشرفته، نقشه تعاملی Leaflet، پنل مدیریت با نمودارها، سیستم احراز هویت JWT، آپلود تصاویر، فیلترهای پیشرفته و طراحی ریسپانسیو RTL. 🚀 PWA آماده، SEO بهینه، بدون بک‌اند؛ آماده دمو برای کارفرما و دیپلوی روی cPanel/GitHub Pages.

amlak.venusbox.ir/

ویژگی‌ها (FA)

  • مدیریت کامل آگهی‌های املاک با آپلود تصاویر Drag & Drop
  • جستجوی پیشرفته با فیلترهای متعدد (قیمت، موقعیت، نوع ملک)
  • نقشه تعاملی Leaflet با نمایش موقعیت املاک
  • سیستم احراز هویت JWT با مدیریت نقش‌ها (کاربر/مدیر)
  • پنل مدیریت با آمار و نمودارهای تحلیلی Chart.js
  • طراحی ریسپانسیو و RTL با Tailwind CSS
  • PWA (Service Worker + Manifest) برای نصب روی دستگاه
  • SEO بهینه با Meta Tags، Sitemap و Structured Data
  • بهینه‌سازی کامل Performance با Code Splitting و Lazy Loading

امنیت (FA)

  • احراز هویت امن با JWT و bcryptjs برای رمزنگاری پسوردها
  • محافظت در برابر SQL Injection و XSS
  • Rate Limiting برای محدودیت درخواست‌ها
  • CORS Configuration مناسب
  • Input Validation کامل
  • متغیرهای محیطی امن در .env
  • HTTPS اجباری در production

## اجرا (FA)

پیش‌نیازها

  • Node.js (نسخه 18 یا بالاتر)
  • MySQL (نسخه 8 یا بالاتر)
  • npm یا yarn

مراحل نصب

  1. کلون و نصب وابستگی‌ها:
git clone https://github.com/mmdcode/amlak-web.git
cd amlak-web
npm install
cd Backend && npm install && cd ..
  1. تنظیم دیتابیس MySQL:
CREATE DATABASE amlak_web CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. تنظیم متغیرهای محیطی:

فایل .env در پوشه Backend/ ایجاد کنید:

DB_HOST=localhost
DB_USER=root
DB_PASSWORD=your_password
DB_NAME=amlak_web
JWT_SECRET=your_jwt_secret_key_here
PORT=5000
  1. اجرای Backend (در ترمینال اول):
npm run backend:dev

  1. اجرای Frontend (در ترمینال دوم):
npm run dev
  1. Build نهایی:
npm run build

⚠️ نکات مهم:

  • Backend باید قبل از Frontend اجرا شود
  • پورت 5000 باید آزاد باشد
  • MySQL باید در حال اجرا باشد
  • فایل .env باید در پوشه Backend قرار گیرد

تکنولوژی‌ها (FA)

  • Frontend: React.js 19, Vite, Tailwind CSS, React Router, Leaflet, Chart.js
  • Backend: Node.js, Express.js, MySQL, JWT, Multer, bcryptjs
  • Tools: ESLint, PostCSS, PM2
  • PWA: Service Worker, Manifest, Offline Support
  • SEO: Meta Tags, Sitemap, Structured Data, Open Graph

راهنمای توسعه/مشارکت (FA)

  • ساختار ماژولار و قابل نگهداری
  • کدنویسی تمیز با ESLint
  • کامنت‌گذاری مناسب
  • تست‌نویسی برای قابلیت‌های جدید
  • حفظ طراحی ریسپانسیو و RTL
  • بهینه‌سازی Performance

نکات مهم:

  • برای امنیت بالاتر، از HTTPS در production استفاده کنید
  • به‌روزرسانی منظم وابستگی‌ها
  • Backup منظم دیتابیس
  • مانیتورینگ لاگ‌ها

لایسنس (FA)

این پروژه تحت لایسنس MIT منتشر شده است. جزئیات در فایل LICENSE موجود است.


اگر این پروژه برایتان مفید بود، لطفاً ⭐️ بدهید. ممنون از حمایت شما!


Features (EN)

  • Complete real estate management system with image upload and Drag & Drop
  • Advanced search with multiple filters (price, location, property type)
  • Interactive Leaflet map with property location display
  • JWT authentication system with role management (user/admin)
  • Admin panel with statistics and Chart.js analytics
  • Responsive RTL design with Tailwind CSS
  • PWA (Service Worker + Manifest) for device installation
  • SEO optimized with Meta Tags, Sitemap and Structured Data
  • Complete Performance optimization with Code Splitting and Lazy Loading

Security (EN)

  • Secure authentication with JWT and bcryptjs for password encryption
  • Protection against SQL Injection and XSS
  • Rate Limiting for request throttling
  • Proper CORS Configuration
  • Complete Input Validation
  • Secure environment variables in .env
  • HTTPS enforcement in production

Getting Started (EN)

Prerequisites

  • Node.js (version 18 or higher)
  • MySQL (version 8 or higher)
  • npm or yarn

Installation Steps

  1. Clone and install dependencies:
git clone https://github.com/mmdcode/amlak-web.git
cd amlak-web
npm install
cd Backend && npm install && cd ..
  1. Setup MySQL database:
CREATE DATABASE amlak_web CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  1. Configure environment variables:

Create .env file in Backend/ folder:

DB_HOST=localhost
DB_USER=root
DB_PASSWORD=your_password
DB_NAME=amlak_web
JWT_SECRET=your_jwt_secret_key_here
PORT=5000
  1. Run Backend (in first terminal):
npm run backend:dev
  1. Run Frontend (in second terminal):
npm run dev
  1. Build for production:
npm run build

⚠️ Important Notes:

  • Backend must be running before Frontend
  • Port 5000 must be available
  • MySQL must be running
  • .env file must be in Backend folder

Tech Stack (EN)

  • Frontend: React.js 19, Vite, Tailwind CSS, React Router, Leaflet, Chart.js
  • Backend: Node.js, Express.js, MySQL, JWT, Multer, bcryptjs
  • Tools: ESLint, PostCSS, PM2
  • PWA: Service Worker, Manifest, Offline Support
  • SEO: Meta Tags, Sitemap, Structured Data, Open Graph

Contributing (EN)

  • Modular and maintainable structure
  • Clean code with ESLint
  • Proper commenting
  • Testing for new features
  • Maintain responsive and RTL design
  • Performance optimization

Important Notes:

  • Use HTTPS in production for higher security
  • Regular dependency updates
  • Regular database backups
  • Log monitoring

License (EN)

This project is licensed under the MIT License. See the LICENSE file for details.


If this project was helpful, please give it a ⭐️. Thank you for your support!

About

**Amlak Web** یک سیستم کامل مدیریت املاک است که با React.js و Node.js ساخته شده. این سیستم امکان مدیریت آگهی‌های املاک، جستجوی پیشرفته، نقشه تعاملی و پنل مدیریت را فراهم می‌کند.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published