No description
  • JavaScript 72.8%
  • CSS 13.3%
  • HTML 13%
  • TypeScript 0.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
mrn f232290dd3
Some checks failed
release / build-and-publish (push) Has been cancelled
chore(release): v0.17.4
2026-05-20 00:03:51 +03:00
.cursor/rules fix: نشر Forgejo بدل GitLab (API v1 + Releases/Packages) [bump: patch] 2026-05-19 23:50:41 +03:00
.forgejo/workflows fix: نشر Forgejo بدل GitLab (API v1 + Releases/Packages) [bump: patch] 2026-05-19 23:50:41 +03:00
.husky feat: رفع إصدار تلقائي وبناء AppImage وpush بعد كل commit (husky) 2026-05-07 21:37:14 +03:00
build fix: أيقونة تطبيق مربعة من logo.svg وبناء آلي [bump: patch] 2026-05-09 04:53:04 +03:00
public build: migrate renderer to Vite (ESM entry, dist output) 2026-05-08 03:23:43 +03:00
scripts chore: إزالة سكربت patch مؤقت [bump: patch] 2026-05-19 23:51:00 +03:00
src تبسيط واجهة الاستيراد ومراجعة الدمج [bump: minor] 2026-05-19 23:25:30 +03:00
test fix: نشر Forgejo بدل GitLab (API v1 + Releases/Packages) [bump: patch] 2026-05-19 23:50:41 +03:00
.env.example chore: update .env.example to remove placeholder for FORGEJO_TOKEN 2026-05-20 00:03:34 +03:00
.gitignore نقل AppImage إلى GitLab Releases/Packages بدل git [bump: minor] 2026-05-19 23:42:14 +03:00
index.html تبسيط واجهة الاستيراد ومراجعة الدمج [bump: minor] 2026-05-19 23:25:30 +03:00
package-lock.json feat: تقسيم الحزم وTypeScript واختبارات E2E [bump: minor] 2026-05-19 21:58:20 +03:00
package.json chore(release): v0.17.4 2026-05-20 00:03:51 +03:00
playwright.config.mjs feat: تقسيم الحزم وTypeScript واختبارات E2E [bump: minor] 2026-05-19 21:58:20 +03:00
README.md fix: نشر Forgejo بدل GitLab (API v1 + Releases/Packages) [bump: patch] 2026-05-19 23:50:41 +03:00
tsconfig.json feat: تقسيم الحزم وTypeScript واختبارات E2E [bump: minor] 2026-05-19 21:58:20 +03:00
vite.config.js إصلاح تعطّل كل الأزرار: تقسيم حزم Vite خاطئ 2026-05-19 22:33:14 +03:00

Conntacti

تطبيق سطح مكتب (Electron) لإدارة ودمج قوائم جهات الاتصال محلياً على جهازك — بدون رفع للسحابة.

الميزات

  • استيراد من CSV وJSON وvCard (2.1 / 3.0 / 4.0) مع كشف ترميز الملفات
  • مراجعة الدمج خطوة بخطوة (مكرر / شبه مكرر / غامض / جديد)
  • تحرير الجدول، البحث، التصفية، التصدير (CSV، vCard 3/4، JSON)
  • التحقق من أرقام الهاتف (libphonenumber) واقتراحات التشابه والدمج

التشغيل للتطوير

npm install
npm run dev      # Vite + Electron مع إعادة تحميل الواجهة
npm test         # اختبارات الوحدة + بناء Vite
npm run test:e2e # اختبارات Electron (Playwright) — يحتاج شاشة أو xvfb
npm run typecheck # فحص TypeScript للوحدات المعرّفة بـ .ts
npm start        # بناء الواجهة ثم تشغيل Electron

البناء والإصدار (Forgejo)

الريبو على Forgejo (ليس GitHub/GitLab): https://git.majlis.lab/mrn/conntacti

npm run dist              # AppImage محلي (غير مرفوع في git)
cp .env.example .env        # FORGEJO_TOKEN
npm run publish:forgejo     # Releases + Packages
  • Releases — وسم vX.Y.Z + ملاحظات + مرفق AppImage
  • Packagesconntacti/<version>/ و conntacti/latest/Conntacti.AppImage

توكن Forgejo (مرة واحدة)

  1. الإعدادات → التطبيقات → Generate New Token
  2. صلاحيات: write:repository و write:package
  3. في .env: FORGEJO_TOKEN=... و FORGEJO_TLS_INSECURE=1

بعد كل commit، Husky يبني ويدفع ثم ينشر تلقائياً (يتطلب .env).

Forgejo Actions: .forgejo/workflows/release.yml — أضف سر FORGEJO_TOKEN في إعدادات المستودع.

رقم الإصدار: major · minor · patch[bump: …] أو feat: / fix: في رسالة الـ commit.

مكان حفظ البيانات

يُخزَّن الملف على الجهاز في مجلد بيانات التطبيق:

~/.config/Conntacti/contacts-data.json (أو المسار المكافئ حسب النظام)

قبل كل حفظ يُنشأ نسخ احتياطي بامتداد .bak (يُحتفظ بآخر 24 نسخة).

الترخيص

MIT