{"id":41805644,"url":"https://github.com/markpdfdown/markpdfdown-desktop","last_synced_at":"2026-03-04T09:03:01.164Z","repository":{"id":334434320,"uuid":"951203136","full_name":"MarkPDFdown/markpdfdown-desktop","owner":"MarkPDFdown","description":"A high-quality PDF to Markdown tool based on large language model visual recognition. 一款基于大模型视觉识别的高质量PDF转Markdown工具桌面版","archived":false,"fork":false,"pushed_at":"2026-03-01T06:51:14.000Z","size":13699,"stargazers_count":18,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-01T09:51:33.134Z","etag":null,"topics":["markdown","pdf","pdf-converter","pdf2markdown","pdf2md"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MarkPDFdown.png","metadata":{"files":{"readme":"README.ar.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-03-19T10:14:23.000Z","updated_at":"2026-03-01T06:51:18.000Z","dependencies_parsed_at":"2026-02-14T17:02:48.165Z","dependency_job_id":null,"html_url":"https://github.com/MarkPDFdown/markpdfdown-desktop","commit_stats":null,"previous_names":["markpdfdown/markpdfdown-desktop"],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/MarkPDFdown/markpdfdown-desktop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkPDFdown%2Fmarkpdfdown-desktop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkPDFdown%2Fmarkpdfdown-desktop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkPDFdown%2Fmarkpdfdown-desktop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkPDFdown%2Fmarkpdfdown-desktop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MarkPDFdown","download_url":"https://codeload.github.com/MarkPDFdown/markpdfdown-desktop/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkPDFdown%2Fmarkpdfdown-desktop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30076935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T08:01:56.766Z","status":"ssl_error","status_checked_at":"2026-03-04T08:00:42.919Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["markdown","pdf","pdf-converter","pdf2markdown","pdf2md"],"created_at":"2026-01-25T06:15:49.607Z","updated_at":"2026-03-04T09:03:01.146Z","avatar_url":"https://github.com/MarkPDFdown.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv dir=\"rtl\"\u003e\n\n# MarkPDFdown\n\n[English](./README.md) | [中文](./README.zh-CN.md) | [日本語](./README.ja.md) | [Русский](./README.ru.md) | [العربية](./README.ar.md) | [فارسی](./README.fa.md)\n\nتطبيق سطح مكتب يقوم بتحويل مستندات PDF إلى تنسيق Markdown باستخدام التعرف البصري لنماذج اللغة الكبيرة (LLM).\n\n## المميزات\n\n- **دعم نماذج LLM متعددة**: OpenAI وAnthropic Claude وGoogle Gemini وOllama (نماذج محلية) وOpenAI Responses API\n- **تحويل عالي الجودة**: يستفيد من قدرات الرؤية في LLM لتحويل دقيق من PDF إلى Markdown\n- **معاينة جنبًا إلى جنب**: عرض صفحات PDF الأصلية بجانب Markdown المُنشأ\n- **دعم الرياضيات والأكواد**: دعم كامل لمعادلات LaTeX (KaTeX) وكتل الأكواد مع تمييز بناء الجملة\n- **واجهة متعددة اللغات**: الإنجليزية والصينية واليابانية والروسية والعربية والفارسية\n- **المعالجة المتوازية**: مثيلات عمل قابلة للتكوين لتحويل أسرع\n- **تتبع التقدم**: تحديثات الحالة في الوقت الفعلي ودعم إعادة المحاولة لكل صفحة\n- **التخزين المحلي**: قاعدة بيانات SQLite لحفظ المهام\n\n## لقطات الشاشة\n\n\u003cimg width=\"1264\" height=\"848\" alt=\"1769311168213_download\" src=\"https://github.com/user-attachments/assets/15b5a801-6729-492a-a979-1fc4dba6853a\" /\u003e\n\n## التثبيت\n\n### البدء السريع (موصى به)\n\nالتشغيل مباشرة باستخدام npx (يتطلب Node.js 18+):\n\n```bash\nnpx -y markpdfdown\n```\n\n### تحميل المثبت\n\nقم بتحميل أحدث إصدار لمنصتك من صفحة [Releases](https://github.com/MarkPDFdown/markpdfdown-desktop/releases):\n\n- **Windows**: `MarkPDFdown-{version}-x64.exe`\n- **macOS**: `MarkPDFdown-{version}-arm64.dmg` / `MarkPDFdown-{version}-x64.dmg`\n- **Linux**: `MarkPDFdown-{version}-x86_64.AppImage`\n\n## الاستخدام\n\n1. **تكوين المزود**: انتقل إلى الإعدادات وأضف بيانات اعتماد مزود LLM (مفتاح API، عنوان URL الأساسي)\n2. **إضافة النموذج**: قم بتكوين النموذج الذي تريد استخدامه للتحويل\n3. **رفع PDF**: اسحب وأفلت أو انقر لاختيار ملف PDF\n4. **اختيار النموذج**: اختر نموذج LLM للتحويل\n5. **التحويل**: ابدأ عملية التحويل\n6. **المعاينة**: عرض النتائج صفحة بصفحة مع المقارنة جنبًا إلى جنب\n7. **التحميل**: تصدير ملف Markdown المدمج\n\n## التطوير\n\n### المتطلبات الأساسية\n\n- Node.js 18+\n- npm 8+\n\n### الإعداد\n\n```bash\n# تثبيت التبعيات\nnpm install\n\n# إنشاء عميل Prisma\nnpm run generate\n\n# تشغيل ترحيلات قاعدة البيانات\nnpm run migrate:dev\n\n# تشغيل خادم التطوير\nnpm run dev\n```\n\n### البناء\n\n```bash\n# بناء الإنتاج\nnpm run build\n\n# مثبتات خاصة بالمنصة\nnpm run build:win    # مثبت Windows NSIS\nnpm run build:mac    # macOS DMG\nnpm run build:linux  # Linux AppImage\n```\n\n### الاختبار\n\n```bash\nnpm test              # تشغيل جميع الاختبارات\nnpm run test:unit     # اختبارات الوحدة فقط\nnpm run test:renderer # اختبارات المكونات فقط\nnpm run test:coverage # إنشاء تقرير التغطية\n```\n\n### هيكل المشروع\n\n```\nsrc/\n├── main/                 # العملية الرئيسية لـ Electron\n│   ├── index.ts         # نقطة الدخول، إنشاء النافذة، إعداد IPC\n│   └── ipc/             # معالجات IPC\n├── preload/             # سكربتات التحميل المسبق (window.api)\n├── renderer/            # واجهة React الأمامية\n│   ├── components/      # مكونات واجهة المستخدم\n│   ├── pages/           # صفحات المسارات\n│   └── locales/         # ترجمات i18n\n├── core/                # منطق الأعمال (العمارة النظيفة)\n│   ├── infrastructure/  # قاعدة البيانات، الخدمات الخارجية\n│   ├── application/     # العمال، التنسيق\n│   ├── domain/          # الواجهات، أنواع المجال\n│   └── shared/          # ناقل الأحداث، الأدوات المساعدة\n└── shared/              # الأنواع المشتركة بين main/renderer\n```\n\n## المكدس التقني\n\n- **الإطار**: Electron 35 + React 18 + TypeScript\n- **أداة البناء**: Vite 6\n- **واجهة المستخدم**: Ant Design 5\n- **قاعدة البيانات**: Prisma ORM + SQLite\n- **معالجة PDF**: pdf-lib، pdf-to-png-converter، Sharp\n- **Markdown**: react-markdown، remark-gfm، remark-math، rehype-katex، rehype-prism-plus\n- **الاختبار**: Vitest + Testing Library\n\n## مزودو LLM المدعومون\n\n| المزود | النماذج | ملاحظات |\n|--------|---------|---------|\n| OpenAI | GPT-4o، GPT-4-turbo، إلخ. | يتطلب مفتاح API |\n| Anthropic | Claude 3.5، Claude 3، إلخ. | يتطلب مفتاح API |\n| Google Gemini | Gemini Pro، Gemini Flash، إلخ. | يتطلب مفتاح API |\n| Ollama | LLaVA، Llama 3.2 Vision، إلخ. | محلي، لا يحتاج مفتاح API |\n| OpenAI Responses | أي نموذج متوافق مع OpenAI | دعم نقطة النهاية المخصصة |\n\n## الترخيص\n\n[Apache-2.0](./LICENSE)\n\n## المساهمة\n\nالمساهمات مرحب بها! يرجى قراءة ملف [AGENTS.md](./AGENTS.md) للاطلاع على إرشادات التطوير.\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkpdfdown%2Fmarkpdfdown-desktop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkpdfdown%2Fmarkpdfdown-desktop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkpdfdown%2Fmarkpdfdown-desktop/lists"}