# Go-Chat-Craft **Repository Path**: osAce/Go-Chat-Craft ## Basic Information - **Project Name**: Go-Chat-Craft - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-02-03 - **Last Updated**: 2024-05-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![back.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706452639127-13565545-9978-4296-8ee1-ff2f4b982170.png#averageHue=%2394908b&clientId=u311e081c-a6cb-4&from=drop&id=Gtb5o&originHeight=1233&originWidth=1812&originalType=binary&ratio=1&rotation=0&showTitle=false&size=1033034&status=done&style=none&taskId=u22e42aa0-226b-4af7-b773-2f7d827fa68&title=) 【[English](https://github.com/taxze6/Go-Chat-Craft/blob/master/README.md) | 中文文档】 客户端地址:https://github.com/taxze6/flutter-chat-craft 服务端地址:https://github.com/taxze6/Go-Chat-Craft Android Apk体验地址(使用蒲公英内测,如果无法下载则表明达到了500次/天的限额): https://www.pgyer.com/XxRr8v ![XxRr8v.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706530855500-2b0da2e8-6a14-40c5-962f-aed1d4bb41e5.png#averageHue=%23fbc403&clientId=u6b1a273d-1ecc-4&from=paste&height=210&id=ud0d638c1&originHeight=210&originWidth=210&originalType=binary&ratio=1&rotation=0&showTitle=false&size=4349&status=done&style=none&taskId=u45f2a28a-f82e-4b21-95ac-5fbba5c4fed&title=&width=210) 测试账号1:taxze,密码:123456789 测试账号2:taxze2,密码:123456789 也可通过邮箱验证码注册账号,建议使用qq邮箱或gmail邮箱。 Chat-Craft目前已经实现了即时通讯的基本功能,支持Android和IOS。快来下载并体验吧! ## 🎬演示视频 点击图片查看演示视频。 感谢帮助我制作这个视频的朋友。如果你也需要制作一个类似的视频,你可以通过这个电子邮件联系他:tjl2945428088@icloud.com [![Demo video](https://i.ytimg.com/vi/S0c2FW29nNg/maxresdefault.jpg)](https://www.youtube.com/watch?v=S0c2FW29nNg "Demo video") ## 📖 概述 社交应用程序在世界各地都很流行,例如 Facebook、Line、Whatsapp。如果您渴望打造一款独具个性的社交平台,Chat-Craft项目将是您不可或缺的理想之选。Chat-Craft是一款跨平台移动应用,采用了Golang作为后端服务端技术,以及Flutter作为前端客户端技术。该应用旨在提供高效、稳定且跨平台的用户体验,将现代的移动应用开发技术和高性能的后端服务端技术相结合。 在Chat-Craft项目中,作者精心雕琢了客户端UI,灵感汲取于各大即时通讯应用及最新的应用设计规范。这独特的设计巧妙地融合了各方优点,呈现出一种令人愉悦的视觉体验。这样的UI不仅为项目赋予了独特的美感,同时也为学习者创造了更为有趣的学习环境。 ## 🎨使用技术 ![技术图.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706494225234-5d89ecce-70a6-4c6e-86d7-859be4b2d4c0.png#averageHue=%23faf7f4&clientId=u1ec3d590-b191-4&from=paste&height=741&id=u297e2b92&originHeight=741&originWidth=1030&originalType=binary&ratio=1&rotation=0&showTitle=false&size=107597&status=done&style=none&taskId=u0f98aafc-f7ee-4a06-8850-6a39e1fbff5&title=&width=1030) ## 🔨部分页面截图 | ![Splash——欢迎页.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495772905-c591ed63-1056-4734-bd80-d6e96d21e0dd.png#averageHue=%23fcf9f2&clientId=u1ec3d590-b191-4&from=drop&id=uec7d6408&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=20557&status=done&style=none&taskId=ue698b7df-e4cc-4d8e-8b7b-894db87d866&title=) | ![login——登录页.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495780914-1a2cfd47-00aa-4190-b5c1-23c4d6999b0a.png#averageHue=%23fbfbfb&clientId=u1ec3d590-b191-4&from=drop&id=u2dc4704f&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=25951&status=done&style=none&taskId=u8b2d6d10-13cd-4950-aa48-ad6d5f1b3ee&title=) | ![login——登录页1 – 1.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495783743-bb86193d-ea72-471c-ac14-a5af86a3f7f5.png#averageHue=%23faf7ef&clientId=u1ec3d590-b191-4&from=drop&id=u19bfacbd&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=30750&status=done&style=none&taskId=u5369b5a9-5459-4085-a2bc-5a7d4ef36bf&title=) | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | | ![OTP.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495803753-146d624e-7d93-44e5-9014-93f0d98878ef.png#averageHue=%23fcfbf7&clientId=u1ec3d590-b191-4&from=drop&id=ua6e398f2&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=18940&status=done&style=none&taskId=u11cee891-e301-4bca-9aae-4829550a4a1&title=) | ![home.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495809556-17ead725-7db2-46af-8950-d7579ee47b7e.png#averageHue=%23f3f2f0&clientId=u1ec3d590-b191-4&from=drop&id=u4a604d5e&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=102104&status=done&style=none&taskId=ube64ad3b-fd7d-4498-a4b0-5a0f39868ca&title=) | ![Chat.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495822312-bcfa98d9-6ef1-4b69-b6be-c2e32eff47d8.png#averageHue=%23f8f1d9&clientId=u1ec3d590-b191-4&from=drop&id=u48eb43a7&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=36515&status=done&style=none&taskId=u9b1f3b51-c484-479f-9a76-948d9058018&title=) | | ![Chat – 1.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495825457-822b33df-ec91-43e6-80af-b6e25d644e83.png#averageHue=%23aba89d&clientId=u1ec3d590-b191-4&from=drop&id=vfqjH&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=66136&status=done&style=none&taskId=uc0d3f3b8-e098-4b97-b12d-2eb81f6bd47&title=) | ![add-friend – 1.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495829943-9baff26d-0ac9-4c11-9ba8-3f40d5c32ad0.png#averageHue=%23fbf2e4&clientId=u1ec3d590-b191-4&from=drop&id=zoswb&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=80104&status=done&style=none&taskId=u4fe3b98a-de17-4565-a0cd-a191c07cad7&title=) | ![Other-Mine.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706495835896-c353bfe3-ae93-48c2-9a95-1f33728d96ff.png#averageHue=%23e2dbd6&clientId=u1ec3d590-b191-4&from=drop&id=LDUnb&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=147881&status=done&style=none&taskId=ue9f91513-d982-478c-b4e9-5f7993bb610&title=) | | ![Story details.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706496016597-01861233-88f3-4b59-84b7-b62ab931e8c4.png#averageHue=%236b645d&clientId=u1ec3d590-b191-4&from=paste&height=812&id=u8c8244d5&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=389269&status=done&style=none&taskId=u17db3bd8-852f-4f8b-ac5e-177dfc16b31&title=&width=375) | ![Story details – 2.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706496018272-c98730a7-3fe5-428d-93b1-ee2743a2ad4f.png#averageHue=%23766f68&clientId=u1ec3d590-b191-4&from=paste&height=812&id=u60de0232&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=394531&status=done&style=none&taskId=ub8f93179-c7d7-46df-be5f-139e131ca7c&title=&width=375) | ![Story details – 1.png](https://cdn.nlark.com/yuque/0/2024/png/34940884/1706496020425-cdf17e85-8001-4576-87fa-fffbe2c201c4.png#averageHue=%236f6d6b&clientId=u1ec3d590-b191-4&from=paste&height=812&id=u151ac970&originHeight=812&originWidth=375&originalType=binary&ratio=1&rotation=0&showTitle=false&size=235525&status=done&style=none&taskId=uce344479-5488-43a2-9762-9f213bd3751&title=&width=375) | ## 🖥️运行项目 首先,请按照下列步骤操作: 1.克隆 GitHub 存储库:首先使用以下命令克隆存储库。 ``` //拉取客户端项目 git clone https://github.com/taxze6/flutter-chat-craft.git //拉取服务端项目 gie clone https://github.com/taxze6/Go-Chat-Craft ``` 2.检查本地开发环境:确保您拥有 `3.16.9` 或更高版本的 Flutter 环境和`1.19.3`或更高版本的 golang。 ``` flutter doctor [!] Flutter (Channel stable, 3.16.9, on Microsoft Windows [版本 10.0.19045.3930], locale zh-CN) [√] Windows Version (Installed version of Windows is version 10 or higher) [√] Android toolchain - develop for Android devices (Android SDK version 30.0.3) [√] Chrome - develop for the web [√] Visual Studio - develop Windows apps (Visual Studio Professional 2022 17.6.4) [√] Android Studio (version 4.0) [√] Android Studio (version 2021.2) [√] IntelliJ IDEA Ultimate Edition (version 2020.2) [√] Connected device (3 available) go version go version go1.19.3 windows/386 ``` 3.加载项目依赖:分别加载flutter客户端的依赖和golang服务端的依赖。 ``` //加载flutter项目的依赖 flutter pub get //查看flutter项目的依赖关系 flutter pub deps //加载golang项目的依赖 go mod download //查看golang当前项目的所有依赖 go list -m all ``` 4.进行项目配置:配置数据库、中间件、ip、运行端口。 ``` //先配置golang项目中的config-debug.yaml //配置项目运行端口、数据库和中间件对应的ip、端口和账号密码 port: '8889' host: '127.0.0.1' mysql: host: '127.0.0.1' port: '3306' name: 'chatcraft' user: 'root' password: 'root@123321' redis: host: '127.0.0.1' port: '6379' rabbitmq: host: "127.0.0.1" port: "5672" user: "guest" password: "guest" //再配置flutter项目flutter_chat_craft\lib\common下的ip_config.dart class IpConfig { //Replace with server address static const ip = "127.0.0.1:8889"; } ``` 5.对本地的数据库执行SQL:对mysql执行Go-Chat-Craft下的chatcraft.sql 6.运行客户端与服务端项目 ## 🎉未来 一个好的开源项目,一定是长时间的迭代出来的,Chat Craft作为一个”婴儿“还有着很长的成长道路。然而,正是这种挑战使得它有机会成为一个优秀的开源项目。在接下来的旅程中,Chat Craft将不断迭代和改进,让我们一起见证它的成长吧!非常欢迎大家参与这款开源项目,有任何改进项目的想法都可以通过github的issuse告诉我~ ## 🎈最后 如果你在这个项目中遇到任何问题,请随时加我微信。顺便说一下,这个项目有一个微信交流群!欢迎加入~ 🌱我正在寻找一个在杭州或远程Flutter软件工程师的职位。请随时与我联系。 联系方式