Home Projects Tutorials Contact
اپلیکیشن مدیریت cloudflare warp
2025/05/01

اپلیکیشن مدیریت cloudflare warp The Cloudflare WARP management application

نرم‌افزار Cloudflare WARP Manager یک برنامه گرافیکی تحت پایتون است که به کاربران امکان می‌دهد به‌راحتی اتصال به سرویس Cloudflare WARP VPN را کنترل کنند. این ابزار با استفاده از کتابخانه‌ی استاندارد Tkinter ساخته شده و از طریق دستورات سیستم (subprocess) با کلاینت warp-cli در ارتباط است. امکانات اصلی: اتصال و قطع اتصال به WARP با فشردن دکمه «Connect»، کاربر به سرویس WARP متصل می‌شود. با زدن دکمه «Disconnect»، اتصال قطع خواهد شد. امکان بررسی وضعیت فعلی اتصال از طریق گزینه «Check Status» نیز فراهم است. تنظیم DNS کاربران می‌توانند DNS مورد نظر (پیش‌فرض: 1.1.1.1, 1.0.0.1) را وارد کرده و روی سیستم تنظیم کنند. تکنولوژی‌ها و ابزارها: زبان برنامه‌نویسی: Python رابط گرافیکی: Tkinter اجرای دستورات سیستم: subprocess سرویس VPN: Cloudflare WARP (warp-cli) مزایا: استفاده ساده و کاربرپسند بدون نیاز به محیط خط فرمان برای مدیریت WARP قابل اجرا در سیستم‌های لینوکسی متن‌باز و قابل توسعه توسط دیگران کاربردها: برای کاربران لینوکس که از Cloudflare WARP استفاده می‌کنند و به دنبال یک رابط گرافیکی ساده و زیبا برای مدیریت اتصال هستند. The Cloudflare WARP Manager software is a Python-based graphical application that allows users to easily control the connection to the Cloudflare WARP VPN service. This tool is built using the standard Tkinter library and communicates with the warp-cli client through system commands (subprocess). Main Features: Connect/Disconnect to WARP By pressing the "Connect" button, the user connects to the WARP service. By pressing the "Disconnect" button, the connection will be terminated. The ability to check the current connection status is also available through the "Check Status" option. DNS Configuration Users can enter their preferred DNS (default: 1.1.1.1, 1.0.0.1) and apply it to the system. Technologies and Tools: Programming Language: Python Graphical Interface: Tkinter System Command Execution: subprocess VPN Service: Cloudflare WARP (warp-cli) Advantages: Simple and user-friendly interface No need for command-line environment to manage WARP Runnable on Linux systems Open-source and extensible by others Applications: For Linux users who use Cloudflare WARP and are looking for a simple, clean graphical interface to manage their connection.
Python
اسکریپت تمدید خودکار IP در ویندوز
2025/04/21

اسکریپت تمدید خودکار IP در ویندوز The automatic IP renewal script in Windows

در بسیاری از شبکه‌ها، به‌ویژه شبکه‌های دانشگاهی یا عمومی، سیستم‌ها به‌صورت داینامیک از طریق DHCP آدرس IP دریافت می‌کنند. این آدرس‌ها معمولاً زمان‌دار هستند و پس از مدتی منقضی می‌شوند یا توسط سرور تغییر می‌کنند. این موضوع در برخی سناریوها می‌تواند مشکلات جدی ایجاد کند. یکی از چالش‌های رایج، از دست رفتن دسترسی به سیستم از راه دور (Remote Desktop) به دلیل تغییر IP است. به‌ویژه زمانی که کاربر بخواهد از مکان دیگری مانند منزل به سیستم دانشگاهی خود متصل شود، ندانستن IP فعلی سیستم می‌تواند اتصال را غیرممکن کند. علاوه بر این، تغییر خودکار IP ممکن است تبعاتی مانند موارد زیر داشته باشد: - اختلال در دسترسی به سرویس‌هایی که به IP وابسته‌اند (وب‌سرورها، دیتابیس‌ها و…) - از کار افتادن مکانیزم‌های امنیتی مبتنی بر IP (مانند فایروال‌ها یا احراز هویت IP-based) - امکان سوءاستفاده یا تداخل ناخواسته در شبکه‌های محلی در شرایط خاص برای رفع این مشکل، در این پروژه یک اسکریپت پایتون طراحی شده است که به‌صورت خودکار در بازه‌های زمانی مشخص (مثلاً هر نیم‌ساعت)، اقدام به تمدید آدرس IP فعلی می‌کند. این اسکریپت اطلاعات DHCP را بررسی می‌کند، زمان اجاره IP را تشخیص می‌دهد، و درست پیش از انقضا، دستور تمدید را اجرا می‌کند. همچنین تمام رویدادها و جزئیات، مانند زمان تمدید، IP فعلی و زمان تمدید بعدی، در یک فایل متنی ثبت می‌شوند. این راهکار ساده، کاربردی و قابل اتوماسیون است و می‌تواند به حفظ پایداری اتصال و جلوگیری از اختلال‌های ناشی از تغییر IP کمک شایانی کند. برای مشاهده جزییات بیشتر و دیدن روش استفاده میتوانید با لینک گیت هاب پروژه به مخزن این پروژه بروید. In many networks, especially university or public networks, systems receive IP addresses dynamically via DHCP. These addresses are usually time-limited and either expire after a while or are changed by the server. This can cause serious problems in certain scenarios. One common challenge is losing remote access (Remote Desktop) to a system due to an IP change. Particularly when a user wants to connect to their university system from another location, such as home, not knowing the system's current IP can make the connection impossible. Additionally, automatic IP changes can have consequences such as: - Disruption of access to services that depend on IP addresses (web servers, databases, etc.) - Failure of IP-based security mechanisms (such as firewalls or IP-based authentication) - Potential for exploitation or unintended interference in local networks under specific conditions To address this issue, a Python script has been designed in this project that automatically renews the current IP address at specified intervals (e.g., every half hour). This script checks DHCP information, detects the IP lease time, and executes the renewal command just before expiration. All events and details, such as the renewal time, current IP, and next renewal time, are recorded in a text file. This solution is simple, practical, and automatable, and can significantly help maintain connection stability and prevent disruptions caused by IP changes. For more details and to see how to use it, you can visit the project's GitHub repository via the project link.
Python
طراحی و توسعه وب‌سایت شخصی با django
2025/03/29

طراحی و توسعه وب‌سایت شخصی با django Personal website design and development with Django

توضیحات کلی: این پروژه یک وب‌سایت شخصی است (همین وب سایت) که با استفاده از فریم‌ورک Django توسعه یافته است. هدف اصلی این وب‌سایت، ایجاد یک پلتفرم حرفه‌ای برای معرفی شخصی، نمایش نمونه‌کارها و ارائه لینک‌های شبکه‌های اجتماعی مانند لینکدین، گیت‌هاب و اینستاگرام است. در طراحی این پروژه، بهینه‌سازی تجربه کاربری (UX)، بهبود عملکرد، امنیت و سازگاری با انواع دستگاه‌ها (ریسپانسیو بودن) مدنظر قرار گرفته است. ویژگی‌های کلیدی طراحی مدرن و واکنش‌گرا: - پیاده‌سازی رابط کاربری با استفاده از **HTML، CSS، JavaScript** و فریم‌ورک‌های سبک مانند **Bootstrap**. - تطبیق‌پذیری کامل با موبایل، تبلت و دسکتاپ. معماری پیشرفته و بهینه: - استفاده از Django برای جداسازی منطقی بین بخش‌های مختلف وب‌سایت. - پیاده‌سازی مدیریت محتوا (CMS) سفارشی برای ویرایش اطلاعات سایت بدون نیاز به کدنویسی. بخش معرفی و درباره من: - نمایش اطلاعات حرفه‌ای شامل سوابق کاری، تحصیلی و مهارت‌ها. - امکان مدیریت و ویرایش سریع اطلاعات از طریق پنل مدیریتی. نمایش نمونه کارها و پروژه‌ها: - امکان دسته‌بندی و جستجو در بین پروژه‌ها بر اساس تکنولوژی‌های استفاده شده. - ارائه توضیحات، تصاویر، و لینک‌های گیت‌هاب برای هر پروژه. اتصال به شبکه‌های اجتماعی و روش‌های تماس: - لینک‌دهی به LinkedIn، GitHub، Instagram و سایر شبکه‌های اجتماعی. - پیاده‌سازی فرم تماس با من همراه با ارسال ایمیل خودکار. تکنولوژی‌های استفاده‌شده: - Backend: Django (Python) - Frontend: HTML, CSS, JavaScript, Bootstrap - Database: Mysql - Version Control: Git, GitHub نتایج و تأثیر پروژه: - ارائه یک وب‌سایت شخصی حرفه‌ای جهت برندسازی فردی و نمایش نمونه‌کارها. - ایجاد بستری برای شبکه‌سازی و تعامل حرفه‌ای از طریق لینک‌های اجتماعی و فرم تماس. به زودی این پروژه در گیت هاب منتشر میشود و لینک منبع آن در همین صفحه ارائه میشود. General Description: This project is a personal website (the very website you are viewing) developed using the Django framework. The main goal of this website is to create a professional platform for personal introduction, portfolio display, and providing links to social networks such as LinkedIn, GitHub, and Instagram. In the design of this project, optimizing user experience (UX), improving performance, security, and compatibility with various devices (responsiveness) have been taken into consideration. Key Features: Modern and Responsive Design: - Implementation of the user interface using **HTML, CSS, JavaScript** and lightweight frameworks such as **Bootstrap**. - Full adaptability to mobile, tablet, and desktop. Advanced and Optimized Architecture: - Using Django for logical separation between different sections of the website. - Implementation of a custom Content Management System (CMS) for editing site information without needing to code. Introduction and About Me Section: - Display of professional information including work history, education, and skills. - Ability to quickly manage and edit information through the admin panel. Portfolio and Projects Display: - Ability to categorize and search among projects based on the technologies used. - Providing descriptions, images, and GitHub links for each project. Connection to Social Networks and Contact Methods: - Linking to LinkedIn, GitHub, Instagram, and other social networks. - Implementation of a contact form with automatic email sending. Technologies Used: - Backend: Django (Python) - Frontend: HTML, CSS, JavaScript, Bootstrap - Database: MySQL - Version Control: Git, GitHub Project Results and Impact: - Providing a professional personal website for personal branding and showcasing a portfolio. - Creating a platform for networking and professional interaction through social links and a contact form. This project will soon be published on GitHub, and the source link will be provided on this page.
Python JavaScript HTML/CSS
Details Private
لاگ گیری حرفه ای با پایتون
2025/03/27

لاگ گیری حرفه ای با پایتون Professional Logging with Python

پرو لاگینگ یک بستهٔ پیشرفته و کاملاً قابل تنظیم برای ثبت لاگ در پروژه‌های پایتون است که به توسعه‌دهندگان امکان می‌دهد فرآیندهای برنامهٔ خود را در یک فایل لاگ و در صورت تمایل در یک پایگاه داده ثبت کنند. این بسته از ویژگی‌هایی مانند چرخش لاگ، سطوح مختلف لاگ، ثبت لاگ به‌صورت JSON و ذخیره‌سازی در پایگاه داده پشتیبانی می‌کند. ویژگی‌ها: سطوح لاگ: DEBUG، INFO، WARNING، ERROR، CRITICAL​ چرخش لاگ: پشتیبانی از چرخش لاگ بر اساس اندازهٔ فایل یا تاریخ​ فرمت JSON: امکان ثبت پیام‌های لاگ به‌صورت JSON​ ذخیره‌سازی در پایگاه داده: ذخیرهٔ لاگ‌ها در پایگاه دادهٔ SQLite برای مدیریت و تحلیل آسان‌تر​ خروجی کنسول: چاپ پیام‌های لاگ در کنسول​ قابلیت تنظیم: امکان پیکربندی نام فایل لاگ، سطوح لاگ، تنظیمات چرخش و موارد دیگر برای مشاهده جزییات بیشتر و دیدن روش استفاده میتوانید با لینک گیت هاب پروژه به مخزن این پروژه بروید. Pro Logging is an advanced and highly customizable logging package for Python projects that allows developers to record their application processes in a log file and, if desired, in a database. This package supports features such as log rotation, different log levels, JSON formatted logging, and database storage. Features: Log Levels: DEBUG, INFO, WARNING, ERROR, CRITICAL​ Log Rotation: Supports log rotation based on file size or date​ JSON Format: Ability to log messages in JSON format​ Database Storage: Stores logs in an SQLite database for easier management and analysis​ Console Output: Prints log messages to the console​ Configurability: Allows configuration of log file name, log levels, rotation settings, and more For more details and to see how to use it, you can visit the project's GitHub repository via the project link.
Python
اپلیکیشن مدیریت Zabbix با API و رابط گرافیکی
2025/03/27

اپلیکیشن مدیریت Zabbix با API و رابط گرافیکی Zabbix Management Application with API and Graphical Interface

​ابزار مدیریت زبیکس یک برنامهٔ قدرتمند و کاربرپسند است که برای مدیریت و نظارت بر زیرساخت زبیکس طراحی شده است. این ابزار یک رابط کاربری ساده برای پیکربندی‌های زبیکس، افزودن یا حذف میزبان‌ها، نظارت بر معیارها و امکانات دیگر فراهم می‌کند.​ ویژگی‌ها: پیکربندی API: امکان تنظیم URL و توکن API زبیکس برای یکپارچه‌سازی بدون مشکل.​ مدیریت میزبان‌ها: افزودن، حذف و مدیریت آسان میزبان‌ها درون برنامه.​ مدیریت وضعیت میزبان: فعال یا غیرفعال کردن میزبان‌ها با چند کلیک.​ نظارت: مشاهدهٔ داده‌ها و نمودارهای نظارتی به‌صورت بلادرنگ برای میزبان‌ها.​ رابط کاربری با تب‌های پویا: امکان ناوبری آسان بین عملکردهای مختلف با استفاده از تب‌های پویا.​ The Zabbix Management Tool is a powerful and user-friendly application designed for managing and monitoring a Zabbix infrastructure. This tool provides a simple user interface for Zabbix configurations, adding or removing hosts, monitoring metrics, and other features.​ Features: API Configuration: Ability to set the Zabbix API URL and token for seamless integration.​ Host Management: Easily add, delete, and manage hosts within the application.​ Host Status Management: Enable or disable hosts with just a few clicks.​ Monitoring: View real-time monitoring data and graphs for hosts.​ Dynamic Tabbed Interface: Easy navigation between different functions using dynamic tabs.​
Python Zabbix
برنامه نویسی در آردواینو با پایتون
2025/03/27

برنامه نویسی در آردواینو با پایتون Arduino Programming with Python

​پروژهٔ myarduinowithpy یک بستهٔ پایتون است که ارتباط بین بردهای آردوینو و زبان پایتون را تسهیل می‌کند. این بسته به کاربران امکان می‌دهد تا بردهای آردوینو را بدون نیاز به وابستگی‌های اضافی و تنها با استفاده از دستورات ساده در پایتون برنامه‌ریزی و کنترل کنند.​ ویژگی‌های کلیدی: سهولت استفاده: فرآیند راه‌اندازی و کنترل پین‌های آردوینو را ساده می‌کند.​ انعطاف‌پذیری: از طیف گسترده‌ای از عملکردهای آردوینو پشتیبانی می‌کند و برای پروژه‌های متنوع مناسب است. The myarduinowithpy project is a Python package that facilitates communication between Arduino boards and the Python language. This package allows users to program and control Arduino boards using simple Python commands without the need for additional dependencies.​ Key Features: Ease of Use: Simplifies the process of setting up and controlling Arduino pins.​ Flexibility: Supports a wide range of Arduino functions, making it suitable for various projects.
Python
سیستم پردازش و مدیریت لاگ‌های سرور در MySQL
2025/03/27

سیستم پردازش و مدیریت لاگ‌های سرور در MySQL Server Log Processing and Management System in MySQL

این پروژه یک سیستم پردازش و مدیریت لاگ‌های سرور است که اطلاعات مربوط به فعالیت‌های کاربران و رویدادهای اجرایی را از فایل‌های لاگ استخراج کرده و در پایگاه داده MySQL ذخیره می‌کند. این سیستم دارای قابلیت‌های زیر است: اتصال خودکار به دیتابیس و خواندن اطلاعات از فایل پیکربندی (system.conf). استخراج داده‌های کلیدی از فایل‌های لاگ با استفاده از الگوهای Regex. شناسایی و حذف داده‌های تکراری برای جلوگیری از ورود اطلاعات زائد. بررسی اعتبار تغییر وضعیت رویدادها بر اساس رویدادهای قبلی ذخیره‌شده در دیتابیس. ذخیره‌سازی بهینه اطلاعات به‌صورت بچ‌های ۱۰۰۰تایی جهت افزایش کارایی. ثبت لاگ‌های نامعتبر و خطاهای پردازشی در جدول اختصاصی برای تحلیل‌های بعدی. ذخیره‌سازی کاربران نامشخص در جدول جداگانه برای بررسی‌های بعدی. حفظ وضعیت پردازش لاگ‌ها و ادامه پردازش از آخرین محل ثبت‌شده در اجرای بعدی. این پروژه برای مدیران سیستم و تحلیل‌گران داده مفید خواهد بود تا بتوانند فعالیت‌های کاربران، روند پردازش و استفاده از منابع سیستم را ردیابی و آنالیز کنند. This project is a server log processing and management system that extracts information related to user activities and system events from log files and stores it in a MySQL database. The system features the following capabilities: Automatic connection to the database and reading information from a configuration file (system.conf). Extraction of key data from log files using Regex patterns. Identification and removal of duplicate data to prevent redundant information. Validation of event state changes based on previously stored events in the database. Optimized data storage in batches of 1,000 records to enhance performance. Logging of invalid records and processing errors in a dedicated table for subsequent analysis. Storage of unidentified users in a separate table for future review. Preservation of log processing status, allowing the system to resume from the last recorded point in subsequent runs. This project will be beneficial for system administrators and data analysts who need to track and analyze user activities, processing trends, and system resource usage.
Python mysql
Details Private