git clone https://github.com/Ali-Rashidi-80/MediaConverterPro.git
cd MediaConverterPro
pip install -r requirements.txt -r requirements-dev.txt
python tools/bootstrap_ffmpeg.py # if you lack ffmpeg
python galaxy_ultimate.pyAlso see: CONTRIBUTING.md
| Topic | Rule |
|---|---|
| Entry | galaxy_ultimate.py — PyInstaller target |
| Package | galaxy/ — all app logic |
| i18n | Keys in galaxy_i18n.py — both FA + EN |
| Workers | No Qt import in image_task.py (image ThreadPool) |
| Settings | PERF_DEFAULTS + SettingsManager |
| UI combo | FormComboBox + fill_combo_keys |
| Docs | English default; keep Persian parity in bilingual docs |
galaxy/core/ paths, utils, constants — no Qt
galaxy/services/ ffmpeg, pipeline, probe, scheduler, settings
galaxy/workers/ QThread + top-level tasks
galaxy/ui/ pages, widgets, theme, help_content
python -m ruff check galaxy tests tools
python -m mypy galaxy galaxy_i18n.py galaxy_fonts.py
python -m bandit -r galaxy tools -c pyproject.tomlConfig: pyproject.toml
galaxy_i18n.py—*_FMT_KEYS+ tooltips (FA + EN)galaxy/services/ffmpeg.py—append_*_optionsif needed- UI page — combo populate
- Tests —
tests/test_*
hw_probe.py— encoder/filter listsffmpeg_pipeline.py— branch inappend_video_encode_options- Settings —
ACCEL_MODE_KEYS+ availability sync - Help — HW matrix row
tools/verify_ffmpeg_caps.py— required encoder
.\build.bat # portable onefile (default)
.\build_portable.bat # alias → build.bat
.\build_onedir.bat # folder (onedir) buildarchive/legacy-phase5/ — do not import. Historical Phase 5 reference only.
git clone https://github.com/Ali-Rashidi-80/MediaConverterPro.git
cd MediaConverterPro
pip install -r requirements.txt -r requirements-dev.txt
python tools/bootstrap_ffmpeg.py
python galaxy_ultimate.pyهمچنین: CONTRIBUTING.md
| موضوع | قاعده |
|---|---|
| Entry | galaxy_ultimate.py |
| Package | galaxy/ — همه منطق اپ |
| i18n | کلید در galaxy_i18n.py — هر دو FA+EN |
| Workers | بدون import Qt در image_task.py |
| Docs | پیشفرض انگلیسی؛ همترازی فارسی در اسناد دو زبانه |
galaxy/core/ paths, utils, constants — بدون Qt
galaxy/services/ ffmpeg, pipeline, probe, scheduler, settings
galaxy/workers/ QThread + top-level tasks
galaxy/ui/ pages, widgets, theme, help_content
.\build.bat # portable onefile (پیشفرض)
.\build_portable.bat
.\build_onedir.batarchive/legacy-phase5/ — import نکنید.