ancsemi

Haven: Self-Host Private Chat on Your Own Machine

Haven is a Node.js-based, self-hosted Discord alternative for private chat without cloud accounts or telemetry. Run it on Windows, Linux, macOS, or Docker, then invite people to join from a browser or supported native apps.

ActiveJavaScriptAGPL-3.0Self HostedPrivacyWeb App
Stars
784
Forks
91
Last commit
today
Contributors
27
Releases, 12 months
100+

Our take

Activeregular commits and releases

Health score

70/100

How it is scored
Activity
90
Community
39
Issues
85
Pull requests
65
  • Merges more pull requests than 96% of the projects we track
  • Releases more often than 93% of the projects we track

Haven is an actively developed, feature-rich self-hosted chat option, but its young project and heavy reliance on one contributor make its long-term maintenance worth evaluating.

Good fit if

  • You can run and maintain a Node.js server or Docker deployment and want control over chat data.
  • You need Discord-like channels and voice, with an option to bridge or import Discord content.
  • You accept AGPL-3.0 terms and can meet the source-sharing obligations when deploying a modified network service.

Look elsewhere if

  • You need a hosted service and do not want responsibility for server operation, backups, or remote access.
  • Your organization requires a mature project with work distributed across contributors. Recent activity is strong, but most contributions come from one person.
  • You need an iOS App Store release now. The README describes the iOS app as being in TestFlight testing.
All health signals
Last commit2026-10-29 (today)
Commits, last 90 days100+
Releases, last 12 months100+ (latest v4.28.0-beta.1, 2026-10-28, pre-release)
Contributors27 (top contributor: 91% of commits)
Issues closed, last 90 days60+ (typically closed in 1 day)
Pull requests merged, last 90 days94 (typically merged in 1 day)
Project age9 months

Checked on 2026-10-29 with the GitHub API.

Overview

Haven is a Node.js-based, self-hosted private chat server for people who want a Discord alternative without relying on a cloud service, company account, or telemetry. Messages, files, and voice stay on the server you run, and people can join through a browser or supported desktop and mobile apps.

It is aimed at communities willing to host and administer their own service. The server runs on Windows, Linux, or macOS, including through Docker, so the person hosting it controls the data and how the service is exposed to others.

Key Features

  • Channels, direct messages, threads, reactions, search, and file attachments.
  • Peer-to-peer voice chat by default, with screen sharing and an optional voice relay.
  • End-to-end encrypted direct messages, with private keys kept in the browser.
  • Discord server history import and Ferry, a two-way bridge between Haven and Discord.
  • Self-hosted administration features including roles, channel permissions, moderation tools, backups, and OpenID Connect sign-on.
  • Browser access alongside Windows and Linux desktop apps, Android, and iOS testing through TestFlight.

Use Cases

  • A gaming or hobby group wants voice, screen sharing, and chat hosted by a member rather than a chat provider.
  • A privacy-conscious community wants to keep messages and files on infrastructure it controls.
  • A group moving from Discord wants to import existing history or stay in contact with members who have not moved, using Ferry.
  • A homelab operator wants to offer browser-based chat without requiring every participant to install an app.

What you need

Detected in the repository

  • Node.js >=22.0.0 <27.0.0 (from package.json)
  • A Dockerfile, so it can run in a container; a Compose file sets up the related services
  • A test suite and automated checks on GitHub Actions

License in plain words

AGPL-3.0network copyleft

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license notice
  • Share your changes: yes, the full source, also when people only use it over a network (e.g. as a hosted service)
  • Includes an explicit patent grant from the contributors:

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

With Docker, start the server and persist its data with:

docker run -d -p 3000:3000 -v haven_data:/data ghcr.io/ancsemi/haven:latest

Then open https://localhost:3000 and register. See the setup guide for remote access, configuration, and other installation options.

Considerations

  • The project is relatively young, and its contribution history is highly concentrated in one person, despite regular commits and releases and a broader group of contributors. Recent issue and pull request handling has been fast, but that does not remove the maintainer concentration risk.
  • The server requires Node.js 22 through 26 when installed directly, or Docker. Remote use also requires configuring access to the server; voice relay and network exposure may need additional setup depending on deployment.
  • The README says the code is largely AI-written and AI-assisted in review. It also describes automated tests and dedicated security reviews, but teams should assess the implementation and security posture for their own requirements.
  • The project is licensed under AGPL-3.0. Deployments of modified versions as a network service must publish their source under the license terms.

Found this useful?

Share it with someone who would like Haven.