Skip to content

everest-an/dchat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Dchat - Web3 Business Communication Platform

🌐 Live Demo: https://dchat.pro | Short Link
πŸ“ Team: Everest
πŸ† ETHShanghai 2025 Hackathon Project


πŸš€ Quick Links


πŸ“‹ Overview

Dchat is a Web3-native business communication platform that combines end-to-end encryption, blockchain storage, and professional networking features. Built for the future of secure business communications, Dchat leverages blockchain technology to ensure data sovereignty, privacy, and seamless crypto payments.


🎯 Problems Solved

Traditional business communication platforms face several critical challenges:

  • Data Privacy Concerns: Centralized servers store sensitive business communications
  • Lack of Data Sovereignty: Users don't own or control their data
  • Payment Friction: Complex payment processes for international business transactions
  • Identity Verification: Difficulty verifying professional identities and company information
  • Vendor Lock-in: Inability to migrate data between platforms

Dchat addresses these issues through blockchain technology, end-to-end encryption, and decentralized storage.


✨ Key Features

  • Wallet Authentication: Secure login via Web3 wallets (MetaMask, WalletConnect)
  • LinkedIn Integration: Sync professional profiles and company information
  • End-to-End Encryption: Quantum-resistant encryption for all communications
  • Blockchain Storage: Decentralized message storage ensuring data sovereignty
  • Project Collaboration: Share projects, find partners, showcase resources
  • Professional Networking: Business moments and verified company profiles
  • Integrated Payments: Crypto payments within chat conversations
  • Smart Contract Integration: Automated payment escrow and project collaboration

πŸ”— Smart Contracts

πŸ“œ Deployed Contracts

Dchat utilizes multiple smart contracts on Ethereum (Sepolia Testnet) for various functionalities.

Ethereum Contracts

Contract Name Network Address Purpose
UserIdentity Sepolia Testnet 0x5FbDB2315678afecb367f032d93F642f64180aa3 User identity and verification
MessageStorage Sepolia Testnet 0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512 Decentralized message storage
PaymentEscrow Sepolia Testnet 0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0 Payment escrow for transactions
ProjectCollaboration Sepolia Testnet 0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9 Project collaboration and management

Contract Features

UserIdentity Contract:

  • βœ… Decentralized identity management
  • βœ… Professional profile verification
  • βœ… Company information storage
  • βœ… Reputation system

MessageStorage Contract:

  • βœ… Encrypted message storage on blockchain
  • βœ… IPFS integration for large files
  • βœ… Message retrieval and verification
  • βœ… Data sovereignty guarantee

PaymentEscrow Contract:

  • βœ… Secure payment escrow
  • βœ… Multi-party payment splitting
  • βœ… Automated dispute resolution
  • βœ… Milestone-based payments

ProjectCollaboration Contract:

  • βœ… Project creation and management
  • βœ… Team member management
  • βœ… Resource sharing
  • βœ… Milestone tracking

πŸ“Š Smart Contract Examples

Example 1: User Registration

// Register a new user with professional profile
await userIdentity.registerUser(
  "John Doe",
  "Software Engineer",
  "Tech Corp",
  "john.doe@example.com"
);

Example 2: Store Encrypted Message

// Store encrypted message on blockchain
const messageHash = await messageStorage.storeMessage(
  recipientAddress,
  encryptedContent,
  ipfsHash
);

Example 3: Create Payment Escrow

// Create escrow for project payment
await paymentEscrow.createEscrow(
  recipientAddress,
  ethers.utils.parseEther("1.0"), // 1 ETH
  30 * 24 * 60 * 60 // 30 days timeout
);

Example 4: Project Collaboration

// Create a new project
await projectCollaboration.createProject(
  "DApp Development",
  "Building a decentralized application",
  [member1, member2, member3]
);

πŸ”§ Contract Deployment

For detailed deployment instructions, see:


πŸ—οΈ Technical Architecture

Frontend

  • Framework: React with Vite
  • Styling: Tailwind CSS
  • Web3 Integration: ethers.js for blockchain interaction
  • State Management: React Context API
  • Responsive Design: Mobile-first approach with desktop support

Backend

  • Framework: Flask (Python)
  • API: RESTful API with CORS support
  • Authentication: JWT-based authentication
  • Database: SQLite (development) / PostgreSQL (production)
  • Blockchain: Web3.py for smart contract interaction

Blockchain

  • Primary Network: Ethereum (Sepolia Testnet)
  • Storage: IPFS for large files
  • Wallet: MetaMask, WalletConnect support
  • Smart Contracts: Solidity 0.8.x

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ and npm
  • Python 3.8+
  • MetaMask or compatible Web3 wallet
  • Git

Quick Start

  1. Clone the repository
git clone https://github.com/everest-an/dchat.git
cd dchat
  1. Frontend Setup
cd frontend
npm install
cp .env.example .env
# Edit .env with your configuration
npm run dev
  1. Backend Setup
cd backend
pip install -r requirements.txt
python main.py
  1. Visit the application
Frontend: http://localhost:5173
Backend API: http://localhost:5000

For detailed setup instructions, see Installation Guide


πŸ“š Documentation

Comprehensive documentation is available in the docs directory:

Visit the Documentation Index for a complete overview.


🎨 Features Showcase

πŸ’¬ Secure Messaging

End-to-end encrypted messaging with blockchain-backed storage for maximum security and data sovereignty.

πŸ” Web3 Authentication

Seamless wallet-based authentication with no passwords required. Support for MetaMask and WalletConnect.

πŸ’Ό Professional Networking

LinkedIn integration for verified professional profiles and company information.

🀝 Project Collaboration

Create projects, invite team members, share resources, and track milestones on-chain.

πŸ’° Integrated Payments

Send and receive crypto payments directly in chat conversations with escrow protection.

πŸ“Š Business Moments

Share business updates, achievements, and opportunities with your professional network.


πŸ§ͺ Testing

Smart Contract Testing

cd contracts
npm test

Frontend Testing

cd frontend
npm run test

Integration Testing

See TESTING_GUIDE.md for comprehensive testing procedures.


🌐 Live Demo

Visit our live demo: https://dchat.pro
Quick Access: https://tinyurl.com/2apne32a

Test Features:

  • βœ… Wallet connection (MetaMask)
  • βœ… Secure messaging
  • βœ… Project collaboration
  • βœ… Professional networking
  • βœ… Crypto payments
  • βœ… LinkedIn integration

Test Accounts:

  • Connect with your MetaMask wallet on Sepolia testnet
  • Get test ETH from Sepolia Faucet

πŸ“¦ Deployment

Vercel Deployment (Frontend)

npm run build
vercel deploy

Backend Deployment

See VERCEL_DEPLOYMENT.md for detailed deployment instructions.

Smart Contract Deployment

cd contracts
node deploy.js

πŸ”„ Recent Updates

See CHANGELOG.md for recent updates and version history.

Latest Features (v2.0):

  • βœ… Smart contract integration
  • βœ… Payment escrow system
  • βœ… Project collaboration contracts
  • βœ… Enhanced encryption
  • βœ… IPFS storage integration

πŸ‘₯ Team

Team Name: Everest

Contact:


πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ† ETHShanghai 2025

This project is submitted to ETHShanghai 2025 Hackathon.

Track: Public Goods Γ— Open Source

Submission Date: October 20, 2025


πŸ”— Additional Resources


🌟 Why Dchat?

Dchat represents the future of business communication by combining:

  1. Privacy: End-to-end encryption ensures your conversations remain private
  2. Sovereignty: Blockchain storage gives you full control of your data
  3. Trust: Smart contracts enable trustless business transactions
  4. Efficiency: Integrated payments streamline business operations
  5. Transparency: On-chain verification builds trust in professional networks

Join us in building the future of secure, decentralized business communication! πŸš€

About

Dchat - Secure Business Communication Platform with Web3 integration

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published