Skip to content

PrivateChatProtocol/private-chat-server

Private Chat Server

A secure, ephemeral chat application with no history, logs, tracking, or authentication.

License Bun Elysia TypeScript PRs Welcome Docker Maintenance Privacy First No Tracking Zero Knowledge

This server works standalone. You can use this frontend client here or build your own.

Features

  • Real-time messaging using secure WebSockets
  • Private chat rooms with access control
  • Zero storage of message content on server
  • Containerized deployment with Docker
  • Built with TypeScript for type safety

Privacy Highlights

  • No Message Storage: Messages are not stored on the server, only relayed between authorized participants
  • No Logs: All logs are disabled in production mode
  • No Third-Party Services: Operates independently without external service dependencies
  • Encrypted Trnamission: All messages are encrypted in transit using secure WebSockets
  • Open Source: Full transparency about how your data is handled

Getting Started

Prerequisites

  • Bun 1.0.0 or higher
  • For production: Docker and Docker Compose (optional but recommended)

Development

  1. Clone the repository

  2. Install dependencies

bun install
  1. Start the server
bun run dev
  1. Access the server at http://localhost:8000

Production

  1. Build the Docker image
docker build -t private-chat-server .
  1. Start the server
docker run -p 8000:8000 private-chat-server

or, using Docker Compose

docker-compose up

Environment

The server can be configured using environment variables. Create a .env file in the project root with the following variables:

# Server configuration
PORT=8000

# Environment (development or production)
NODE_ENV=production

# Logging level (all, debug, info, warn, error). Logs are disabled in production.
LOG_LEVEL=error

About

Private Chat Server

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •