使用 React 和 Pinata 的实时聊天应用程序,可轻松实现消息传递和文件共享项目名称 - 2Connect 功能:技术堆栈
使用 React 和 Pinata 的实时聊天应用程序,轻松实现消息传递和文件共享
项目名称 - 2Connect
特征:
技术栈
这是Pinata 挑战赛的参赛作品
我建造了什么
我开发了一个具有关键功能的实时聊天应用程序,它具有完全响应能力,也可以通过移动 UI 访问。
功能:
-
实时消息传递:该应用程序支持实时消息传递,确保用户发送的消息立即出现在聊天室中而不会延迟。
-
文件共享:该应用程序允许用户上传和共享各种文件类型,例如图像、PDF 和文档,并使用 Pinata 进行安全和分散的文件存储。
-
聊天室:用户可以创建、加入和离开聊天室,从而使平台变得动态且由用户控制。
-
消息历史记录:每个聊天室都保留一个消息历史记录,该历史记录会被存储起来,并在用户加入聊天室时向用户显示,从而保证对话的连续性。
-
Google 用户身份验证:通过 Firebase 身份验证,用户可以使用他们的 Google 帐户无缝登录和注销。
-
私人消息:用户还可以向其他用户发送私人消息,进行一对一对话。
演示
工作: 应用程序链接
我的代码
项目名称 - 2Connect
特征:
-
Google 用户身份验证:用户可以通过 Firebase 身份验证使用他们的 Google 帐户登录和注销。
-
聊天室:用户应该能够创建、加入和离开聊天室。
-
实时消息:用户发送的消息应实时出现在聊天室中。
-
共享文件:它允许用户使用 Pinata IPFS 上传和共享各种类型的文件,包括图像和 PDF。
-
消息历史记录:聊天应用程序应存储每个聊天室的消息历史记录,用户加入聊天室时可以看到这些历史记录。
-
私人消息:用户应该能够向其他用户发送私人消息。
技术栈
- React JS
- 皮纳塔
- Firebase Firestore
- Firebase 实时数据库
- Firebase 身份验证
截图
 |
聊天屏幕 |
 |
创建组 |
 |
群聊 |
 |
加入群组 |
 |
登录页面 |
更多详情
- 用户可以直接从本地目录中选择图片进行共享。该应用程序利用 Pinata IPFS 以安全且去中心化的方式管理和存储这些资产。
 |
聊天窗口 |
- 用户还可以共享嵌入在 iframe 中的 PDF,从而可以直接从聊天界面查看和下载文件。
 |
群聊 |
- 用户可以加入多个群组论坛,参与各种讨论并与不同的社区协作。此功能提供了一个多元化互动的平台,让用户能够分享想法、提出问题并与他人建立联系,从而提升用户参与度。
 |
加入群组 |
使用的 TechStack:
- React JS
- 皮纳塔
- Firebase 实时数据库
- Firebase Firestore
- Firebase 身份验证
链接:https://dev.to/hasnain110/real-time-chat-application-with-react-and-pinata-for-effortless-messaging-and-file-sharing-1ji6