عن المشروع

CWIST (تطوير الويب بلغة C ما زال جديرًا بالثقة) هو إطار ويب وخادم تطبيقات بلغة C17 يجمع حزمة شبكات كاملة: HTTP/1.1 وHTTP/2 وHTTP/3 عبر QUIC وWebSocket وWebTransport وTLS هجين ما بعد الكم باستخدام X25519MLKEM768. يوفر ORM مدمجًا لـ SQLite ومحرك قاعدة بيانات في الذاكرة محسّنًا للقراءة يُسمى Nuke DB، وكشفًا تلقائيًا عن PostgreSQL وMySQL وMariaDB عبر بصمة بروتوكول الاتصال. يقدم المشروع نموذجي تنفيذ قابلين للاختيار عبر متغير بيئة. يستخدم وضع مفاعل C1M واجهة io_uring على Linux (مع بدائل epoll/kqueue) للخدمة المدفوعة بالأحداث عالية التزامن، بينما يخصص وضع التجمع الكلاسيكي خيطًا خاصًا لكل اتصال لتحقيق زمن انتقال أقل في أعباء الطلبات النموذجية. يتضمن ملف README مقارنات مرجعية مع Axum وGin وSpring Boot تغطي الإنتاجية ونسب زمن الانتقال المئوية واستخدام الذاكرة وتبديلات السياق، مع التنبيه إلى أن النتائج تعتمد على معالج خادم CI وملف الحمل. يأتي CWIST مع أداة سطر أوامر لإنشاء هياكل المشاريع، وإعادة التحميل السريع أثناء التطوير، وتوليد OpenAPI من تعليقات Doxygen، وتوليد أكواد protobuf/gRPC. يدعم مسارات gRPC الأحادية والمتدفقة، وخدمات الصحة والانعكاس، وإعادة المحاولة، وموازنة الحمل. يتضمن الإطار أيضًا توجيهًا بمعاملات بأسلوب Express، وبرمجيات وسيطة، وتسجيلًا منظمًا، ونقاط نهاية للمقاييس والصحة، وتحديد معدل الطلبات، وعرض HTML/CSS/القوالب، وأدوات JSON المساعدة. التثبيت متاح بالبناء من المصدر باستخدام make أو عبر مستودع Homebrew. الاعتماديات مثل BoringSSL وlsquic وlibttak وSQLite3 مضمّنة، ويمكن ربط المكتبة الثابتة مباشرة أو عبر pkg-config. يغطي دعم المنصات Linux وmacOS وBSD.