No description
Find a file
MiTHRAL 581a853b6f
All checks were successful
Build & Release / build (push) Successful in 2m29s
feat: inject Sanctum branding to replace Revolt logo in webview
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-21 15:44:48 -04:00
.gitea/workflows fix: stamp package.json version from git tag at build time, add updater logging 2026-04-21 14:37:52 -04:00
.github/workflows chore: modify .github/workflows/validate-pr-title.yml 2026-03-24 19:04:04 +00:00
.vscode chore: try to get everything building 2025-10-08 17:28:30 +01:00
assets chore: replace icons with Sanctum logo 2026-04-21 13:18:11 -04:00
src feat: inject Sanctum branding to replace Revolt logo in webview 2026-04-21 15:44:48 -04:00
.eslintrc.json feat: initial commit 2025-09-30 10:31:37 -05:00
.gitignore feat: initial commit 2025-09-30 10:31:37 -05:00
.gitmodules feat: initial commit 2025-09-30 10:31:37 -05:00
.prettierrc feat: initial commit 2025-09-30 10:31:37 -05:00
.release-please-manifest.json chore(main): release 1.3.0 (#128) 2026-02-18 09:09:14 +00:00
CHANGELOG.md chore(main): release 1.3.0 (#128) 2026-02-18 09:09:14 +00:00
chat.stoat.StoatDesktop.desktop chore: add files to manage flathub details upstream (#104) 2026-02-17 19:04:04 +00:00
chat.stoat.StoatDesktop.metainfo.xml fix(flatpak): change screenshot path into an url in the metainfo file (#195) 2026-04-06 17:35:02 +01:00
default.nix chore: Nix, mise, CI configuration (#129) 2026-02-17 19:29:43 +00:00
forge.config.ts chore: update app description 2026-04-21 15:30:45 -04:00
forge.env.d.ts feat: initial commit 2025-09-30 10:31:37 -05:00
index.html feat: initial commit 2025-09-30 10:31:37 -05:00
LICENSE chore: add LICENSE [skip ci] 2025-10-10 10:58:26 +01:00
mise.toml chore: Nix, mise, CI configuration (#129) 2026-02-17 19:29:43 +00:00
package.json chore: rebrand from Stoat to Sanctum 2026-04-21 01:11:53 -04:00
pnpm-lock.yaml chore: point app at self-hosted mithraic.space instance 2026-04-21 00:27:49 -04:00
pnpm-workspace.yaml chore: Nix, mise, CI configuration (#129) 2026-02-17 19:29:43 +00:00
README.md docs: rewrite README for Sanctum self-hosted setup 2026-04-21 13:08:15 -04:00
release-please-config.json refactor: move publish.yml workflow into release please workflow (#29) 2025-12-29 18:05:26 +00:00
screenshot.png chore: add files to manage flathub details upstream (#104) 2026-02-17 19:04:04 +00:00
strings.ts feat: initial commit 2025-09-30 10:31:37 -05:00
tsconfig.json chore: try to get everything building 2025-10-08 17:28:30 +01:00
vite.main.config.ts feat: initial commit 2025-09-30 10:31:37 -05:00
vite.preload.config.ts feat: initial commit 2025-09-30 10:31:37 -05:00
vite.renderer.config.ts feat: initial commit 2025-09-30 10:31:37 -05:00

Sanctum

A private, self-hosted desktop client for mithraic.space
Built on Revolt — open source, no tracking, no telemetry, no nonsense.
Windows & Linux. Auto-updates from your own server.


What is this?

Sanctum is a custom fork of Stoat for Desktop, hardwired to connect exclusively to mithraic.space — a self-hosted Revolt instance. It replaces the default branding, icons, and update pipeline with a fully self-contained setup hosted on a private Forgejo instance.

No reliance on external services. Updates come from git.mithraic.cloud. Builds run on a self-hosted CI runner. Everything stays in-house.


Installing

Grab the latest build from the Releases page.

Linux

# extract to your local apps folder
mkdir -p ~/.local/share/sanctum
unzip Sanctum-linux-x64-*.zip -d ~/.local/share/sanctum/

# register it as a desktop app
cat > ~/.local/share/applications/sanctum.desktop << EOF
[Desktop Entry]
Name=Sanctum
Exec=$HOME/.local/share/sanctum/sanctum
Icon=$HOME/.local/share/sanctum/resources/assets/desktop/icon.png
Type=Application
Categories=Network;InstantMessaging;
StartupWMClass=sanctum
EOF

Then search for Sanctum in your app launcher and you're in.

Windows

Extract the zip, run sanctum.exe. That's it.


Auto-updates

Sanctum checks for new releases on every launch. When a newer version is available on git.mithraic.cloud, you'll get a desktop notification — click it to download. No background processes, no silent installs.


Building from source

You'll need Git, Node.js, and pnpm (corepack enable).

git clone https://git.mithraic.cloud/ad3laid3/sanctum
cd sanctum
pnpm i --frozen-lockfile
pnpm start

Releasing a new build

Push a version tag and CI does the rest — compiles Linux and Windows builds, creates a release, and uploads artifacts automatically.

git tag v1.x.x
git push origin v1.x.x

Building locally

# Linux (deb + zip)
PLATFORM=linux pnpm make

# Windows (zip, no Wine required)
pnpm make --platform win32 --arch x64

Output lands in out/make/.


Tech