Skip to content

gautham2k3/CipherLink

Repository files navigation

CipherLink Logo

CipherLink - Blockchain Based Messaging Application

A secure and decentralized messaging platform built on blockchain technology using Vue 3, Vite, and Ethereum Smart Contracts.

Vue 3 Solidity License Demo

View DemoFeaturesGetting StartedContributing

Features

  • Wallet Integration: Connect with MetaMask and other Web3 wallets
  • Decentralized Messaging: Direct peer-to-peer messaging via smart contracts
  • User Profiles: Create and manage your blockchain identity
  • Favorites System: Add frequent contacts to favorites for quick access
  • Real-time Updates: Instant message delivery and status updates
  • Responsive Design: Seamless experience across all devices

Technologies Used

  • Vue.js: A progressive JavaScript framework for building user interfaces.
  • Vite: A build tool that significantly improves the front-end development experience.
  • Solidity: A programming language for writing smart contracts on the Ethereum blockchain.
  • Web3.js: A library for interacting with the Ethereum blockchain.

Getting Started

  1. Clone the repository:
git clone https://github.com/gautham2k3/CipherLink.git
cd CipherLink
  1. Install dependencies:
npm install
  1. Start development server:
npm run dev
  1. Build for production:
npm run build

📝 Smart Contract Functions

The application uses the following smart contract functions:

  • createAccount(string name): Register new user
  • getUserName(): Get current user's name
  • getAllAppUsers(): List all registered users
  • sendMessage(address friend_key, string _msg): Send message
  • readMessage(address friend_key): Retrieve chat history
  • checkUserExists(address pubkey): Verify user registration

🔧 Configuration

The application requires:

  • MetaMask or compatible Web3 wallet
  • Connection to Ethereum network
  • Smart contract deployed and configured

🌐 Deployment

The application is configured for deployment on Vercel with the following specifications:

  • Build Command: npm run build
  • Output Directory: dist
  • Framework Preset: Vite

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to your branch
  5. Open a Pull Request

⚠️ Disclaimer

This project is for demonstration and educational purposes. Use in production environments requires additional security measures and auditing.

📄 License

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

About

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published