dais

An open source, private-by-default social server for Cloudflare. dais is a Skeptical Engineering project: run your own domain, post privately to approved followers, publish publicly to the wider fediverse, and bridge public posts toward Bluesky / AT Protocol.

View the source Open the project instance Inspect the PDS

The live dais project instance

This is the project account for dais by Skeptical Engineering, not a personal account. The separate Skeptical Engineering test instance now runs independently at @social@skpt.cl; this instance remains the live project/demo presence for dais itself.

ActivityPub handle: @social@dais.social

ActivityPub profile: https://social.dais.social/users/social

ActivityPub origin: https://social.dais.social

AT Protocol PDS origin: https://pds.dais.social

What dais is for

vision

Own your social graph

dais is built for people, families, communities, and small organizations that want a social presence on their own domain instead of inside a platform silo.

default

Private first

Rust CLI and TUI posts default to followers-only. Public broadcast is an explicit choice, and non-public content is not routed to Bluesky.

open

Federated by design

ActivityPub is the primary federation layer for public and private/followers posts. AT Protocol support provides a growing public-read and public-posting surface.

Implementation status

production

ActivityPub foundation

WebFinger, actor, inbox, outbox, public dereference, delivery queueing, HTTP signatures, locked-profile signaling, private/E2EE anonymous denial, and cross-instance reply threading are implemented.

production

Rust operator client

The owner interface is the Rust CLI/TUI and native Dais Desk app. It manages posts, timelines, followers, notifications, deliveries, E2EE helpers, events, actor mode, and diagnostics.

partial

Mastodon compatibility

dais is Mastodon-readable and exposes a read-oriented Mastodon API floor. It is not a full Mastodon server replacement yet.

partial

Bluesky / AT Protocol

The PDS exposes identity, repo metadata, public record reads, author feed, timeline, notifications, likes, followers, follows, and subscribeRepos status. Full AT Protocol compatibility remains in progress.

verified

E2EE

Dais E2EE is now v2-only on the MLS/RFC 9420 owner-device path. The independent skpt.cl deployment is the cross-instance testbed for bidirectional owner-DM delivery/decrypt, MLS direct messages, audience-list group delivery/decrypt, two-device recipient decrypt, removed-device decrypt failure, and delivery-worker processing.

verified

Discovery and groups

RSS/Atom/API sources, private RSS/ActivityPub/Bluesky watches, explicit public search, and private group primitives are implemented. Group membership is private by default, and Dais Desk/CLI label audience lists versus private groups before posting.

Use it or follow along