جيتاد

الإنجليزية | مبسطة الصينية
السبب في أن يطلق عليه اسم Ghchat هو التفكير في القيام ببعض تكامل GitHub في المستقبل ، على أمل جعل أداة المراسلة الفورية هذه أداة دردشة لـ GitHub. حاليًا ، يتم دعم تسجيل الدخول المعتمد بـ GitHub فقط ويتم عرض المعلومات التي يعرضها مستخدمو GitHub. بعد ذلك ، يمكنك بسهولة إنشاء مجموعة مشروع لمشروع GitHub الخاص بك في Ghchat ، ثم نشر رابط المجموعة إلى ReadMe لتسهيل التواصل الفوري للمشاريع.
عنوان التطبيق عبر الإنترنت (أيضًا رابط جماعي للمشروع) ، يدعم تسجيل الدخول المباشر لترخيص GitHub
إذا فشل تسجيل الدخول إلى Github
من المحتمل جدًا أن github الخاص بك لا يضع بريدًا إلكترونيًا عامًا

يوصى بتمكين PWA
دلو عائلة React في الواجهة الأمامية ، PWA ، Node.js الخلفية (KOA2) ، يدعم الواجهة الخلفية وتكتب بعض TS (لم يتم استكمال معظم الأنواع بعد مع T^t) ، قواعد البيانات MySQL ، Socketio ، JWT ، إلخ ، انظر package.json للحصول على التفاصيل. بالإضافة إلى ذلك ، يتم استخدام NGINX ، SSL ، PM2 ، وما إلى ذلك في بيئة الإنتاج. مرحبًا بك للانضمام إلى مجموعة Ghchat للتواصل. أنا متصل بالإنترنت كل يوم ، ويمكنك أيضًا النقر للدردشة معي على انفراد.





تسجيل الدخول/التسجيل/تسجيل الدخول/تسجيل الدخول مع أجهزة متعددة في نفس الوقت
دعم تسجيل الدخول/عرض معلومات التخويل github التي تم الكشف عنها من قبل مستخدمي Github
تخطيط مستجيب ، تم تكييفه مع سطح المكتب والجوال / معظم مكونات واجهة المستخدم المكتوبة بمفردها
دردشة خاصة/إضافة جهات اتصال/عرض ملف تعريف صديق/حذف جهات الاتصال
جماعة الدردشة/تنمية معلومات جماعية/مجموعة عرض معلومات/تحرير معلومات المجموعة/معلومات المجموعة/إشعار إدخال الوافدين الجديد
بحث المستخدم && بحث المجموعة: دعم البحث الغامض في الواجهة الأمامية والبحث الغامض الخلفي
أرسل الصور/تم نشر التعبيرات/إرسال الملفات/تنزيل الملفات/أدخل مفاتيح الاختصار لإرسال معلومات/@شخص/عرض صورة/إرسال نسخ الصور (مثل لقطات لصق ونشر الصور مباشرة)/عرض جدول صفحة الدردشة وفقًا لمجموعة الترتيب/المشاركة
إعدادات سطح مكتب المستعرض/التبديل لمطالبات الرسائل/عدد القائمة الرسائل غير المقروءة/تحديث | إعادة فتح | (حسابات مختلفة) لإعادة السمر ، سيظل عدد الرسائل غير المقروءة في القائمة معروضة بدقة
GZIP Compression/PartConted Cracked Files/Lazy Chat محتوى التحميل/التوجيه عند الطلب/واجهة الحد الأقصى للتردد/آلية إدارة WebSocket
رد الدردشة الذكية الروبوت / نشر شهادة SSL / دعم PWA / دعم الخلفية TS
الدعم تخفيض الدعم/الدعم محتوى الدردشة المرجعية/تغليف الخلفية في SDK/Compleimation/CI CD
├── LICENSE
├── README-zh_CN.md
├── README.md
├── package-lock.json
├── package.json
├── postcss.config.js
├── server // 后端代码
│ ├── ecosystem.config.js
│ ├── init // 初始化mysql数据库的脚本
│ ├── nodemon.json
│ ├── package-lock.json
│ ├── package.json
│ ├── secrets.ts // 放一些非公开的secret
│ ├── src
│ ├── app
│ ├── context
| ├── controllers
| ├── index.ts
| ├── middlewares
| ├── routes // 后端路由,跟登录注册模块有关
| ├── server.ts
| ├── services
| ├── socket // 除了登录注册,其他都用socket 来通信
| └── utils
| ├── configs
| ├── configs.common.ts // 后端通用配置
| ├── configs.dev.ts // 后端开发配置
| └── configs.prod.ts // 后端生产配置
└── main.ts
│ ├── tsconfig.json
│ ├── tslint.json
│ └── webpack.config.js
├── src // 前端代码
│ ├── App.js
│ ├── app.scss
│ ├── assets
│ ├── components
│ ├── containers
│ ├── index.html
│ ├── index.js
│ ├── manifest.json // PWA需要
│ ├── modules
│ ├── redux
│ ├── router
│ ├── service-worker.js // PWA需要
│ └── utils
├── webpack.common.config.js // 通用webpack设置
├── webpack.prod.config.js //生产相关的webpack配置
└── webpack.dev.config.js //开发相关的webpack配置
git clone https://github.com/aermin/ghChat.git
cd ghChat
npm i
cd ghChat/server
npm i
//需要先在本地建一个名为ghchat的mysql数据库
数据库配置参考如下(ghChat/server/src/configs/configs.dev.ts) 的dbConnection
npm run init_sql //然后查看下数据库是否init成功
PS: إذا كنت ترغب في استخدام ترخيص GitHub لتسجيل الدخول ، وإرسال الصور والملفات (باستخدام Qiniu Cloud CDN) ، فيجب عليك ملء التكوين المقابل في الملف (ghchat/server/src/configs/configs.dev.ts) ، وإلا فلن يتم استخدامه افتراضيًا.
npm run start
cd .. // 返回到ghChat/目录
npm run start
المتطلب السابق: إنشاء ملف أسرار
export default {
port: '3000', // server 端口
dbConnection: {
host: '', // 数据库IP
port: 3306, // 数据库端口
database: 'ghchat', // 数据库名称
user: '', // 数据库用户名
password: '', // 数据库密码
},
client_secret: '', // github的client_secret
jwt_secret: '', // jwt的secret
qiniu: { // 七牛云cdn配置
accessKey: '',
secretKey: '',
bucket: ''
},
robot_key: '', // 机器人聊天用到的key => 请自己申请 http://www.tuling123.com/
};
1. بناء رمز الواجهة الأمامية
cd src
npm run build:prod
2. بناء رمز الخلفية
cd sever
npm run build:prod
npm run start:prod )هنا لدينا عملية تطوير ghchat ، والتي ستقوم باستمرار بتحديث المشكلات ونقاط المعرفة والمخاطر التي سيتم مواجهتها عند القيام بهذا المشروع الكامل.
معهد ماساتشوستس للتكنولوجيا
الكود ليس سهلاً ، يرجى الإشارة إلى المصدر للرجوع إليه
إذا كان الأمر مفيدًا لك أو تعتقد أنه ليس سيئًا ، فيمكنك نجمة أو تعطيني مكافأة (〃 '▽))