BlockIRC is a modern and secure IRC (Internet Relay Chat) server/daemon written in Go. It is designed to support blockchain and distributed systems projects, offering enhanced security, privacy, and scalability. BlockIRC aims to integrate seamlessly with blockchain ecosystems, providing a reliable communication platform for decentralized applications and services.
- Secure Communication: Supports TLS for encrypted communication.
- Decentralized Integration: Compatible with various blockchain protocols for secure and verifiable messaging.
- Scalable Architecture: Designed for high availability and scalability, suitable for large-scale deployments.
- Extensible and Customizable: Easily extendable with custom modules and configurations to fit specific needs.
- Audit Logging: Comprehensive logging features for monitoring and auditing chat activities.
- Customizable Authentication: Supports multiple authentication methods, including OAuth, for secure user access.
- Data Encryption: Ensures end-to-end encryption of messages, protecting user data and communications.
- Multi-Network Support: Connects to multiple IRC networks simultaneously, allowing for broad communication reach.
- Bot Integration: Easily integrates with chatbots for automation and enhanced functionality.
- Federated Architecture: Allows for distributed deployment, enhancing redundancy and fault tolerance.
- Decentralized Autonomous Organizations (DAOs): Secure and verifiable communication channels for DAO members.
- Blockchain Development Communities: Real-time collaboration and discussion for developers working on blockchain projects.
- Decentralized Finance (DeFi): Coordination and support for DeFi projects and users.
- Supply Chain Management: Secure communication channels for supply chain participants in blockchain-based systems.
To build and run BlockIRC using Docker, follow these steps:
-
Clone the repository:
git clone https://github.com/EncrypteDL/BlockIRC.git cd BlockIRC -
Build the Docker image:
docker build -t blockirc:latest . -
Run the container:
docker run -d -p 6667:6667 -p 6697:6697 blockirc:latest
To run BlockIRC using Docker Compose:
- Create a
docker-compose.ymlfile:
version: "3.3"
services:
blockirc:
image: blockirc:latest
configs:
- source: ircd_yml
target: /ircd.yml
- source: ircd_motd
target: /ircd.motd
- source: cert_pem
target: /cert.pem
- source: key_pem
target: /key.pem
ports:
- target: 6667
published: 6667
protocol: tcp
mode: host
- target: 6697
published: 6697
protocol: tcp
mode: host
deploy:
endpoint_mode: dnsrr
restart_policy:
condition: on-failure
replicas: 1
configs:
ircd_yml:
file: ./ircd.yml
ircd_motd:
file: ./ircd.motd
cert_pem:
file: ./cert.pem
key_pem:
file: ./key.pem- Deploy the service:
docker-compose up -d
We welcome contributions from the community. Please read our contributing guidelines for more details.
BlockIRC is licensed under the Apache 2.0 License. See the LICENSE file for more details.