اینچت - پیامرسان امن و سبک پایتونی
پیامرسان پیشرفته تحتوب بدون استفاده از فریمورک (Zero-Dependency).
تکنولوژی های استفاده شده
چالش
اکثر پروژههای پایتون به لیست بلندی از کتابخانهها (requirements.txt) نیاز دارند. چالش فنی این پروژه، ساخت یک پیامرسان کامل با قابلیتهای مدرن (مثل ریپلای، ادیت، ویس و ویدیو مسیج) فقط با استفاده از کتابخانههای استاندارد پایتون بود تا روی هر سیستمی بدون نصب پیشنیاز اجرا شود.
راه حل
استفاده از ماژول `http.server` برای مدیریت درخواستها و `ThreadingMixIn` برای پاسخگویی همزمان. دیتابیس با SQLite پیادهسازی شد. شاهکار این پروژه در فرانتاند است که با استفاده از Web Crypto API، پیامها را قبل از ارسال در مرورگر کاربر رمزنگاری (AES-GCM) میکند تا حتی سرور هم متن پیام را نبیند. همچنین سیستم ضبط ویدیو مسیج دایرهای و ویس پلیر اختصاصی با JS خالص نوشته شد.
فیچرها
- بدون وابستگی خارجی
- رمزنگاری دوطرفه (E2E)
- پیام ویدیویی و صوتی
- معماری چندنخی (Threaded)
مسیر پروژه
فاز ۱: سرور و دیتابیس
نوشتن هندلر HTTP اختصاصی و طراحی اسکیمای دیتابیس SQLite.
فاز ۲: امنیت
پیادهسازی رمزنگاری AES در سمت کلاینت برای امنیت کامل پیامها.
فاز ۳: مدیا
افزودن قابلیت ضبط و پخش ویس و ویدیو مسیج (Video Note) در مرورگر.
فاز ۴: رابط کاربری
طراحی UI ریسپانسیو مشابه پیامرسانها با قابلیت دارکمود و ریپلای.